A downloadable project for Windows and macOS

This is a port of my Pico-8 cart, which can be found (and played in browser) here: http://www.lexaloffle.com/bbs/?tid=27626

The goal of this cart is to demonstrate a very basic platforming engine in under 100 lines of code (comments don't count), while still maintaining an organized and documented game.

It is not meant to be a demo of doing as much as possible, in as little code as possible (a la demo scene). The 100 line limit is just meant to encourage people that "Hey, you can make a game with very little coding!"

This will hopefully give new users a simple and easy to understand starting point for their own platforming games.

Note: Collision routine is based on Super Mario Bros 2 and M.C. Kids, where we use collision points rather than a box. this has some interesting bugs but if it was good enough for miyamoto, its good enough for me!


MicroPlatformer.pv8 55 kB

Install instructions

For use with Pixel Vision 8 Game Creator: https://pixelvision8.itch.io/game-creator

Download the attached pv8 file and put it in your Archive folder:

C:\Users\<user name>\AppData\LocalLow\Pixel Vision 8\Game Creator Pro\Workspace\Archive

The game should now show up in the "File Picker" tool in PV8.


Log in with itch.io to leave a comment.

Deleted 343 days ago

Thanks! That collision logoc is actually mimicing the behaviour of Super Mario Bros 2, believe it or not 😁

(1 edit)

Hi, I was hoping to use this, but when I load it up into Game Creator Pro and attempt to play it, I get: ScriptRuntimeException:code.lua:(54,11-35): attempt to index a nil value.

I saw that some of the methods were deprecated, so I tried to replace them with the new ones. But it still seems to have the same error...

Can you provide more details about what functions are giving the error, and what you tried to replace it with? I haven't used PV8 in some time, so I'm not sure about the current status of the API.

(1 edit)

Thanks for getting back to me about this. I appreciate it sooo much, I really do.

This is what the file has when I downloaded it.

--called once at the start of the program.
function Init()
--apiBridge:PlaySong ( false )

The PV8 manual has these functions under v0.7.0a API changes, so I altered it to

--called once at the start of the program.
function Init()
--apiBridge:PlaySong ( false )

But it has the same error as above. Line 54 is the BackgroundColor function. 

I worry that i'm going to pass invalid arguments into these functions that are all defined somewhere else. How do I find out whether the background color 0 is even initialized? I would have gone and checked that next, but the BackgroundColor function is hidden away somewhere in PV8 I guess, and I'm not sure how I would go looking for it. Sorry for my confusion, but I don't know what I would do next to find the problem.

I just talked with the guy who makes PV8 and an updated version of this MicroPlatformer is actually included in the demos that come with PV8. So I would use that one instead!

Oh, okay, thanks!

Amazing work and THANK YOU for porting this!