The goal
Figure out how to create a basic 2D rigid-body physics engine and work with HTML canvas & animation to emulate a popular game. It works! Play it here in your browser.
What works
- Basic physics engine. Collision detection and restitution (detecting is the easy part, figuring out what to do next, less so.) Not-MarioⓇ can climb walls at the moment which he probably shouldn’t be able to.
- Rendering physics-enabled entities on a HTML canvas.
- Basic artwork (not my own.)
- Parse and rendering a world of objects. Would be nice to be able to describe levels more succinctly, have larger than 1x1 objects, and pass props to objects.
- Scrolling the viewport based on progress and skipping rendering out-of-viewport models. Not-MarioⓇ is a bit jittery when forcing scrolling (too much Red Bull?)
What needs to be done
- Make interactable blocks interactable (I think there are coins in this game).
- Make player character power-up-able.
- Add enemies (scary) and interctions between multiple characters (including killing the player).
- Revoke the Not-MarioⓇ immortality dd the possiblility for the player character to die.
- Finish textures and graphics, including more sprites for player character (he should be able to look left, to start).
- Add a win state (yay).
- Add a way of playing on mobile? …