Subway Surfers rebuild deck
FIDDLY
Your chunk generator will happily emit a section with no survivable line through it, and no agent adds the solvability solve unless you name it in the prompt.
You will get it, but one specific system will fight you.
What surprises people is how much of the feel comes from the collision being a lie. Honest hitboxes make this unplayable on a small screen, and the generous ones are why the original feels fair at speed. Ask explicitly for the chunk solvability check, because no agent adds it unsolicited and its absence is the single most common reason a hobby runner feels broken. The mechanic is a weekend; the company is the update cadence.
- Difficulty
- FIDDLY · 2 of 5
- First playable
- A weekend
- The original
- 120 team-years
- Released
- 2012 · Mobile
- Genre
- Endless Runner
Build a three-lane endless runner in the browser: single HTML file, three.js via import map, portrait, touch swipes only. It must hold 60fps on a mid-range Android. Requirements: - Track is assembled from JSON-defined chunks, each 24 units long, containing barriers, low bars, trains (blocking or rideable) and coin arcs. Stitch chunks endlessly with a seeded RNG and a mesh pool. - The generator must guarantee a survivable path through every chunk. After picking a chunk, run a lane-by-lane solve: at least one sequence of lane changes, jumps and rolls must clear it. Reject and resample otherwise. Skip this and roughly one run in twenty ends against an unwinnable wall, which reads to players as your game being cheap rather than hard. - Lane change is a 140ms ease-out tween between three fixed x positions, jump is a 0.6s arc, roll is 0.5s with a halved hitbox. Lane change and jump are separate state machines and may overlap. - A side collision with a train nudges the player back to the previous lane and costs nothing. Only a head-on impact ends the run. - Hitboxes are 70% of the visual mesh. Be generous: nobody judges depth accurately on a phone. - Speed ramps from 12 to 26 units per second across three minutes. Add coins, a jetpack pickup, and a board that absorbs one crash. Definition of done: two hundred consecutively generated chunks are all provably clearable, and a train side-swipe costs me a lane rather than the run.
- A themed World Tour update every three weeks for well over a decade
- The character and board roster, plus the gacha loop that quietly sells them
- SYBO's art direction, which stays readable at 60fps on a five-year-old Android
- Four and a half billion downloads of distribution, which is the only number that ever mattered
Hitboxes that lie in the player's favour
Honest collision is the most common reason a fast game feels cheap — nobody judges depth accurately on a small screen, and nobody in history has complained about a hit that failed to land. Build the lie in deliberately with a toggle and you can measure how much of your difficulty was real.
ScopeAn evening— build just this, not the game
Build a collision-generosity test bed as a single self-contained HTML file, Canvas 2D, no build step. A character runs at increasing speed through a scrolling field of obstacles across three lanes. Draw everything at full size, but give each obstacle and the character a separate collision rectangle at 70% of its visual size, centred. Render both boxes behind a debug toggle so the lie is visible. Then add graded failure: a lateral overlap of less than a third of the character's width is a graze that shoves them back into the previous lane and costs momentum only. Only a frontal overlap ends the run. Add a key that switches between honest and generous collision at runtime, and an on-screen counter of runs ended per minute under each. Use a seeded obstacle field so both modes face identical input. Definition of done: the same field is roughly twice as survivable under generous collision, and toggling honest collision mid-run makes the game feel immediately spiteful.
Not a clone — Subway Surfers 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.
Jianghu Deck
Subway Surfers, but a deckbuilder version of its combat, set in a wuxia martial world. Rendered in flat vector minimalism.
Build a browser game called "Jianghu Deck". The pitch in one line: a endless runner in the spirit of Subway Surfers, but a deckbuilder version of its combat, set in a wuxia martial world. WHAT THIS IS Take the SHAPE of Subway Surfers — 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 A deckbuilder version of its combat. Every action becomes a card with a cost. Cards, relics and enemy intents are pure data, and the whole balance surface becomes a spreadsheet you can tune. 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 A wuxia martial world. Movement is the fantasy — rooftops, bamboo and impossible leaps — and honour is a mechanic with teeth. 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 Flat vector minimalism. Pure geometry, no textures, three colours plus white. All feedback carried by motion and scale rather than detail. 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.
- three.js — scene graph, instancing and an orthographic-to-perspective camera you do not have to write
- Kenney — low-poly city and vehicle kits that suit a lane runner
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 120 team-years to the counter on the homepage.
Then try these
Questions
How hard is Subway Surfers to rebuild with an AI agent?
Yes — every game is buildable at some scope. The question is how hard, and Subway Surfers is FIDDLY (2 of 5). You will get it, but one specific system will fight you. Your chunk generator will happily emit a section with no survivable line through it, and no agent adds the solvability solve unless you name it in the prompt. Reckon on a weekend to something you can actually play — not to something that matches the 120 team-years Kiloo and SYBO Games spent.
What makes Subway Surfers hard to rebuild?
Your chunk generator will happily emit a section with no survivable line through it, and no agent adds the solvability solve unless you name it in the prompt. That is why it sits at FIDDLY rather than a tier either side of it. If you want the idea without the project, the transferable part is hitboxes that lie in the player's favour — an evening of work.
How long does it take to build a Subway Surfers clone?
Wrong question, and it is worth saying why. Nobody rebuilds Subway Surfers — the original took Kiloo and SYBO Games on the order of 120 team-years, released in 2012 on Mobile. 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 Subway Surfers?
A themed World Tour update every three weeks for well over a decade. The character and board roster, plus the gacha loop that quietly sells them. SYBO's art direction, which stays readable at 60fps on a five-year-old Android. 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.