One message in, one game out. Simple enough, or is it?
Late on a Wednesday, a 30-second clip on Reddit. Tiny cars sliding round a dirt track, red and white kerbs, hay bales on the bends, a splash through a pond with a ramp on each side. Someone's indie game, and it looked like the most fun you can have with four cars and a camera.
I wanted one on my own site. So I wrote one message and pasted the link:
Build this game on idunworks. Create SVGs, multiple levels and camera angles, cockpit view. Score, a settings panel for dev, hall of fame saved in the browser. Build a local environment when done.
No design doc, no follow-ups. Twenty-six minutes later there was a commit. Damn! Cost? Some server time and 10 minutes of mine.
What came back
Grus Rally. Grus is Swedish for gravel. Normally the words are compounded but it looked better this way. Four tracks that open one after another, three rival drivers, ramps you fly off and water you splash through, cones that cartwheel away when you clip them. Four cameras, from straight overhead to the driver's seat. A Hall of Fame in your own browser, and a dev panel with every number in the car on a slider. About 4,000 lines. My part of the work was one paragraph.
Claude can't watch a film, so it took the clip apart instead: a frame every two seconds, laid out like a comic strip on one sheet. Fifteen stills. From those it read the genre and the props, then built its own take rather than a copy.
One shot is one prompt, not one try
Those 26 minutes were full of attempts, not one. Every rule of the race is plain logic with no drawing in it, so it can be tested without a screen. One test puts the computer driver behind the wheel of your car and races it to the flag on every track. All four in under a second. If a track crosses itself or a finish line never counts, that test goes red before anyone opens a browser.
Then it opened the browser and looked. The start line sat in the middle of a bend. The kerbs ran straight across the water and turned the splash into a bridge. Fixed, and the start line became a test of its own.
Every check passed. So I played it.
My eyes, not the tests
The handling was right first time. Not too easy, a proper slide in the hairpins. The cockpit view was another story. To get a horizon without a 3D engine, the first version used Nintendo's old Mode 7 trick: paint the track flat, then read each row of the screen off that picture at a different distance. It's what gave Super Mario Kart its roads in 1992. It also drew the ground at about 420 pixels wide and stretched it over my screen, and the other cars were flat cut-outs standing up like cardboard.
The pixelating feeling is tiring for the eyes. Did I ask for vectors? I should have. Also, the cars from the cockpit view are just 2D. Should be 3D.
No test can catch that. A test knows whether a race finishes. It has no idea whether the picture makes your eyes ache after three laps.
So the second shot: real 3D. The road, kerbs and ramps are actual geometry now, the cars are chunky low-poly models with spoilers and stripes, and it all draws sharp at full screen resolution. The 3D library only loads when you pick a 3D camera, so the rest of the site doesn't carry it. The top-down views went vector too, so the road stays crisp at any zoom.
The 3D version had first-try bugs of its own, and the eyes found those too. The road vanished completely, because every triangle in it faced the ground and the graphics card skips anything facing away. Then the dirt came out beige and the kerbs pink, a colour-space mix-up. Both fixed in minutes once seen, and the road now has a test that it faces up.
What happened, and how else it could go
One message built a working game because the machine could check its own work: tests that play the game, an autopilot, screenshots it looked at itself. What it couldn't check was how it feels to look at. That took a person and three laps.
There are other ways to build it. Mode 7 on a canvas is tiny and charming, and right for a deliberately retro game, but the stretched pixels tire the eyes on a big screen. Real 3D in the browser (we used three.js) is sharp and solid, at the cost of a bigger download and a second picture of the track to keep in step with the first. A full engine like Godot gives you more again, but sits in the page as a heavy box rather than living in it. And many small prompts instead of one gives you a say in every choice, and costs you the evening.
If you try a one-shot, put these in the first message:
something to copy (a clip, a screenshot, a sketch)
how it should look, in plain words: crisp, vector, real 3D, retro
a way for it to test itself, ideally something that plays the thing to the end
a switch, kept off until a person has played it
Grus Rally is on idunworks.com/games/grus-rally. Go and set a time!