Super Mario Bros. rebuild deck
HARD
The physics is reverse-engineered down to the sub-pixel and free for the taking, which leaves you holding the actual product: thirty-two levels, against the most studied level design in the medium.
You will get the loop working. Then the real work starts.
A straight YES, because SMB is the most thoroughly reverse-engineered game in existence — the acceleration tables, the sub-pixel handling and the jump-height-from-speed rule are all published, and an agent given those constants reproduces the feel almost exactly. What you cannot prompt is World 1-1, which is the actual masterpiece. Build the engine, then go read a level design breakdown.
- Difficulty
- HARD · 3 of 5
- First playable
- A weekend
- The original
- 3 team-years
- Released
- 1985 · Nintendo
- Genre
- Platformer
Build a 2D side-scrolling platformer with Super Mario Bros. physics. Canvas 2D, single file, 60fps. Requirements: - The physics constants are the game and they are documented — use sub-pixel precision, not floats-by-feel: - Walking acceleration, running acceleration (with a separate higher max speed while the run button is held), and a skid deceleration that is much stronger than the release deceleration. - Jump velocity that scales with horizontal speed — running jumps go higher, which is the single most important rule in the game. - Variable jump height: releasing the button early cuts upward velocity. Different gravity while ascending with the button held versus falling. - Momentum is preserved in the air with reduced control authority. - Tile-based collision resolved on each axis separately, with the vertical pass first. Bump a block from below, stand on it, and slide along it without catching on tile seams. - Enemies: a patroller that turns at ledges, a shelled enemy that becomes a kickable projectile, and a hazard that cannot be stomped. Stomping gives a bounce, and consecutive stomps without touching the ground escalate the score. - Power-ups: a size-up that changes the hitbox and lets you break blocks, a projectile power, and a temporary invincibility with a palette cycle. - Camera: locked to the player with a dead zone, never scrolling backwards, with the classic screen-edge lock. - Level format as a tilemap in JSON with an editor page. Definition of done: a running jump clears a gap a walking jump cannot, and skidding to turn around feels exactly right.
- The 32 levels, which are the most studied level design in the medium
- Nintendo's trademarks, aggressively enforced — do not ship a Mario
- The music, which is not yours
- Nothing mechanical: the physics is fully documented and reproducible
Jump height that scales with run speed
Coupling jump height to horizontal speed turns the run button into a decision you make three seconds before the gap, which is the whole difference between traversal and platforming. It is four lines of code and it is why one platformer feels alive and the next feels like riding a lift.
ScopeAn evening— build just this, not the game
Build a jump-feel test bed as a single self-contained HTML file, Canvas 2D, 60fps, no build step. A rectangle on flat ground with a run button. Three coupled rules: - Separate walk and run maximum speeds, with acceleration much weaker than the skid deceleration applied when input opposes current momentum. - Initial jump velocity is a function of horizontal speed at takeoff — faster means higher. Use two or three discrete speed bands rather than a smooth curve; the bands are easier to feel and to tune. - Variable height: gravity while ascending with the button held is lower than gravity when falling, and releasing early clips upward velocity to a cap. Keep positions in sub-pixel units and round only at draw time. Put every constant in a live-editable panel, ghost-trail the last ten jump arcs, and lay out gaps of increasing width across the ground. Definition of done: there is a gap I clear at full run and can never clear from standing, with both arcs drawn on top of each other.
Not a clone — Super Mario Bros. re-themed and cut down to something you can finish. The angle is the important reel: it is what turns a project into a weekend. 5,880 ways to land.
Ragnarok Overhead
Super Mario Bros., but top-down instead of first-person, set in Norse myth. Rendered in isometric voxel.
Build a browser game called "Ragnarok Overhead". The pitch in one line: a platformer in the spirit of Super Mario Bros., but top-down instead of first-person, set in Norse myth. WHAT THIS IS Take the SHAPE of Super Mario Bros. — its core loop, and whatever makes that loop good — and rebuild it as your own game in a different world at a smaller scope. Use your own names, art and audio, which you want anyway: a reskin of somebody else's game is less interesting than a new one that works the same way. THE ANGLE — this is the important constraint, honour it above everything else Top-down instead of first-person. A fixed overhead camera. You lose immersion and gain readability, a far cheaper art pipeline, and collision you can actually debug. This is what makes the project finishable. If a decision would push the scope back towards the original's, take the smaller option every time. THE THEME Norse myth. Cold, doomed and knowingly so. Everything is on its way to an ending everybody has already been told about. The theme is not a coat of paint. Let it change what the mechanics mean — a reload, a health pack and a locked door should all be things that make sense in this world and nowhere else. LOOK Isometric voxel. A 2:1 isometric projection over a voxel grid, with correct depth sorting and ambient occlusion baked at chunk boundaries. REQUIREMENTS - Runs in a browser with no build step. Canvas 2D unless the angle genuinely requires 3D, in which case three.js. - Fixed-timestep update loop with interpolated rendering, so it behaves the same at 60Hz and 144Hz. - Every tuning constant in one CONFIG object at the top, exposed as live sliders in a debug panel. You will find the feel by dragging those, not by prompting. - All content — levels, entities, balance numbers — in JSON or plain data files, never inline in the logic. - Audio generated with the Web Audio API rather than asset files. - Respect prefers-reduced-motion: keep the fades, drop the shake and the parallax. BUILD ORDER 1. The core loop with placeholder rectangles, at the reduced scope the angle demands. No theme, no art, no audio. Make it fun as rectangles first. 2. The angle's consequences. Cutting to bots, or to turn-based, or to one level changes the design rather than just shrinking it — find out how and rewrite step 1. 3. The theme, as content and data. 4. The look, applied last as a rendering layer over a game that already works. Start by writing a one-page plan: the core loop, what the angle removes and what that frees you to do properly, and what you are deliberately leaving out. Wait for me to approve it before writing code.
- meth-meth-method/super-mario — a well-known JS reimplementation
- TASVideos — frame-level documentation of SMB mechanics
Half the time one of these already does what you wanted, and the other half it saves you a week of solving a problem someone documented in 1997.
One count per game. No account — it is tied to a salted hash of your IP, which is not stored in a form anyone can reverse. Every build adds 3 team-years to the counter on the homepage.
Then try these
Questions
How hard is Super Mario Bros. to rebuild with an AI agent?
Yes — every game is buildable at some scope. The question is how hard, and Super Mario Bros. is HARD (3 of 5). You will get the loop working. Then the real work starts. The physics is reverse-engineered down to the sub-pixel and free for the taking, which leaves you holding the actual product: thirty-two levels, against the most studied level design in the medium. Reckon on a weekend to something you can actually play — not to something that matches the 3 team-years Nintendo spent.
What makes Super Mario Bros. hard to rebuild?
The physics is reverse-engineered down to the sub-pixel and free for the taking, which leaves you holding the actual product: thirty-two levels, against the most studied level design in the medium. That is why it sits at HARD rather than a tier either side of it. If you want the idea without the project, the transferable part is jump height that scales with run speed — an evening of work.
How long does it take to build a Super Mario Bros. clone?
Wrong question, and it is worth saying why. Nobody rebuilds Super Mario Bros. — the original took Nintendo on the order of 3 team-years, released in 1985 on Nintendo. What you can do is reach something playable and genuinely yours in about a weekend, and then keep going for as long as it stays interesting. Any figure that claims otherwise is measuring a prototype and calling it a game.
What do I lose by building my own Super Mario Bros.?
The 32 levels, which are the most studied level design in the medium. Nintendo's trademarks, aggressively enforced — do not ship a Mario. The music, which is not yours. Those are the parts a prompt will not hand you.
Which AI coding agent should I use to build it?
Any of Claude Code, Codex or Cursor will handle this prompt. Paste it as your first message, let the agent scaffold the project, then iterate on feel — the second, third and tenth prompts are where a game actually gets good. Work in an empty folder or a fresh git branch so you can throw it away cheaply.
One email when new games go on the list. No other reason to email you, ever.