Prototyping games fast so you fail cheap

February 22, 20265 min readBy Harman Kamboj
Game devBuilding in public

Most game ideas are not fun, and the brutal part is you usually cannot tell which ones until you play them. Prototyping games fast is the only honest way I know to find out, because it lets you reach the moment of truth in hours instead of months. The whole point is to fail cheap. A dead idea that cost you an afternoon is a win. A dead idea that cost you a season is a wound.

A prototype answers one question, nothing more

The mistake I see constantly is treating a prototype like a tiny version of the final game. People build menus, save systems, settings screens, three levels. That is not a prototype, that is a small product, and it takes far too long to teach you the one thing you needed to know.

A real prototype asks a single question. Is this core loop fun? Does this control scheme feel good? Is this mechanic even comprehensible to someone who is not me? You build the absolute minimum that answers that one question and you build nothing else. If the answer is no, you delete it without grief, because it only cost you a day.

Fail cheap means fail fast and fail ugly

Cheap failure has two ingredients: speed and ugliness. Speed because the longer you spend, the more attached you get, and attachment makes you keep bad ideas alive past their expiry date. Ugliness because art is a trap. The second you make a prototype pretty, you start protecting it, and you also burn time that has nothing to do with the question you are testing.

So my prototypes look terrible on purpose. Colored rectangles, programmer placeholder text, no sound or one borrowed sound. If the game is not fun as a bunch of moving rectangles, no amount of art will save it, and finding that out before you commission art is the entire economic argument for prototyping.

The rules I actually follow

Over a lot of jams and toy builds these settled into a short list I do not break:

  • Set a hard time box, often a single day, and stop when it ends whether or not the prototype is done
  • Build the core verb first, the one thing the player does over and over, before anything around it
  • Use primitives for everything visual, no real art until the fun is proven
  • Get it in front of one other person as early as possible, because your own judgment is compromised
  • Write down the question before you start, so you know what a yes or no even looks like

That last one matters more than it sounds. If you do not name the question, you will play your own prototype, feel a vague sense of pride at having built something, and call it good. Naming the question forces an honest verdict.

Throwaway code is a feature, not a sin

Engineers struggle with prototyping because we are trained to write good code, and good code is slow to write. A prototype is not where good code belongs. Hardcode the values. Use global state. Copy and paste. Skip the abstractions. The code is going in the bin either way, so the only thing that matters is reaching the answer fast.

There is a real risk here, which is that a prototype that works accidentally becomes the foundation of the real game, and now your shipping codebase is built on duct tape. The discipline is to decide upfront that this code dies. When the idea proves out, you rebuild it properly, carrying over the lessons but not the mess. Prototype to learn, then start clean to ship.

Reading the result without lying to yourself

The hardest skill is the honest read. You will want every prototype to be fun because you made it. Watch what a tester does, not what they say. If they put the controller down, if they stop smiling, if they ask how long this is, those signals are louder than any polite compliment. Silence while playing is usually a good sign. Politeness afterward is usually a bad one.

And when the verdict is no, take the yes hidden inside it. Maybe the whole game is dead but one mechanic felt great. Keep that mechanic, scrap the rest, prototype again around the part that worked. A lot of good games are the surviving fragment of three bad prototypes.

Why this makes you faster overall

It feels slower to throw away a week of prototypes than to commit to one idea and push. It is not. The team that prototypes fast kills five bad ideas in the time another team spends lovingly building one bad idea into a finished, unfun game. Cheap failure early is what buys you the right expensive commitment later, on the one idea that actually earned it.

Building something where this matters?

I am open to senior full-stack, Web3, or AI engineering roles, fully remote and any timezone. If the hard part of your product is fighting you, that is the work I like.

Get in touch →