Letting AI build a whole Roblox game: AI writes the code, a person is the eyes
Notes from building Lava Rising with Claude Code, which can't open Roblox Studio: how long it took, what stood in for playing it, and where a person had to decide.
- Tried
- Claude Code 2.1.215 + Rojo 7.7.1 + Lune 0.11.0
- Tested
- October 16, 2026
- Verdict
- Keep using
Tools change fast. This held on the test date.
- AI wrote a game that played on the first try without ever seeing it, because tests checked the rules instead of eyes
- What can be calculated (can you make the jump, does the lava leave enough time) goes to tests; what can't (is it fun) needs a person to play
- One short note from the player changed the game more than many rounds of AI guessing would
Lava Rising, the game in Roblox EP5, was written by Claude Code, an AI agent that works in a terminal. The AI never saw a single frame of the game. These notes cover how that worked, how long it took, and where a person had to make the call. Times come from the project’s git log.
The brief
- The first instruction was one spoken-style sentence, roughly “let’s make a game that’s actually playable, one we could put on Roblox, but run it on this machine first”
- The person giving it was new to Roblox Studio, and Studio wasn’t installed yet
- The AI couldn’t open Studio, see the game screen, or press Play
What actually happened
| Time | What happened |
|---|---|
| Before | The AI offered three game ideas; the person picked Lava Rising and allowed downloading Rojo and Lune from their official GitHub releases |
| 22:31 | Tools downloaded; file sizes checked against the Releases page |
| 22:34 | First version committed: about 640 lines including 23 tests and docs. All tests pass, the place file builds |
| After | The person installed Studio, opened the file, saw an empty sky, asked what next, pressed Play: it played fine |
| Feedback from the player: make it “more fun, with more dimension” | |
| 23:06 | Second version: moving and crumbling steps, lava in waves, fire effects, a height-above-lava meter. About 270 lines added, tests up to 34 |
From tools downloaded to the second version: about 35 minutes, including the time to install Studio and play.
How the AI worked without seeing the game
1. Pull the rules out into testable functions. Lava height at any second, who burns, where each step goes: all pure calculation, runnable with Lune outside Roblox.
2. Turn “is it playable?” into numbers. Instead of trying the jumps, the tests ask:
- Is every step lower than 7 studs, the height a normal character can jump?
- Is the gap between steps between 0 and 6 studs?
- Even at the fastest surge, is there at least 1.5 seconds per step?
- Does standing on the summit at the end survive, and standing on the last step not?
3. Check every file compiles before handing it over, so no typo surfaces as an error in Studio.
4. Re-read its own code before shipping. This caught one bug before anyone played: the lava would have burned people waiting in the lobby, because it rises higher than the lobby island. The fix checks only players in the round.
The result: the first version played on the first press of Play, with no errors to come back and fix.
Where a person was still needed
| Job | Why a person |
|---|---|
| Choosing what game to make | Taste and goals. AI can suggest, but shouldn’t decide |
| Allowing the downloads | It brings outside software onto the machine |
| Installing Studio, opening the game, pressing Play | The AI couldn’t drive this desktop program in this job |
| Saying whether it’s fun | No test measures that |
The last one matters most. The first version passed every test: playable, fair, and flat. One sentence from the player, asking for more dimension, made the second version clearly different, while the tests kept guard that nothing new made the game unplayable: special steps never side by side, the first 3 steps always normal.
What tripped us up
- An empty sky on opening. The level is built when the server starts. A first-time Studio user thought the file was broken. Say up front: press Play
- Studio’s new look. Menus and buttons have moved since older guides; the Output window now lives under the Window menu. Directions have to come from the player’s actual screenshots, not from memory
- The AI works in a separate copy. When the game moved to its own session, the app made a separate git worktree, so the place file left open in Studio didn’t update. The player has to be told which file to open
- Difficulty is still a guess. Numbers like a 75-second round or a 1.6x surge are proven possible by the tests, not proven right. That takes several people playing and tuning
The numbers
| First version | about 640 lines, 23 tests |
| Second version | about 270 lines added, 34 tests |
| Tools downloaded to second version | about 35 minutes |
| Errors the player hit on the first Play | 0 |
| Bugs the AI caught itself before shipping | 1 (lava burning the lobby) |
Verdict: keep using it
AI built a Roblox game far better than expected, without seeing it. What made it work wasn’t only the AI but how the work was arranged: rules pulled out into something testable, tests as the eyes for what can be calculated, and a person as the eyes for what can’t.
To try it yourself, start with a game like this, with short, clear rules: rounds, and win or lose decided by numbers. Expect to be the first playtester, sending screenshots and errors back to the AI every time. The step-by-step build is in Roblox EP5.
FAQ
Do I need to know Luau to make a game this way?
You don't need to be good at it, but you should read it well enough to know what each part does, and you must be able to open Studio, press Play and send errors back to the AI. Roblox EP1-4 in this series lays that groundwork.
Why can't the AI open Roblox Studio itself?
In this job Claude Code worked in a terminal, reading and writing files and running commands. Studio is a desktop program that needs someone to click and look. So the work was split. The AI builds the place file and a person plays it.
Commands and settings were tested on sample systems. Try them on a test machine before production.