Writing

Notes on building software, infrastructure, and automation.

7 min read

The Determinism Dividend

Two days after the rename, Fatecaller grew a daily puzzle with a provable answer, a chess-style review that cannot lie, player-versus-player with no server and no trust, and a soundtrack seeded by the date. None of these were planned. All of them were sitting inside one design decision, waiting to be withdrawn.

Read more →
9 min read

Slagworks Becomes Fatecaller

Game six got a new name, a battle line, a campaign, and its own front door. The rename was the easy part. The education was in why the fantasy re-theme was already mechanically true, how a positioning set certified on the first try, and why the hardest problem of the week was teaching my hand where a card would land.

Read more →
11 min read

Slagworks Outgrew Its Engine

Game six was built in Godot, and then it needed things a game engine in an iframe cannot give: a server that could referee a leaderboard without trusting the player. So Claude moved the whole game into TypeScript. The interesting part is not the move. It is that the one design decision holding the game together let us prove the transplant changed nothing, and then made the leaderboard impossible to cheat, all from the same property.

Read more →
11 min read

Slagworks: Balanced by Bots, Broken by My Thumb

Game six is a card battler, and the question changed again: not whether the AI's code is correct or its content trustworthy, but whether it can balance a strategy space where strategies fight back. The answer took millions of simulated games, a deck-building robot, a metagame that turned out to be a wheel, and one phone that found what none of the machines could.

Read more →
10 min read

Twelve Puzzles, Each With a Proof (and Why That Wasn't Enough)

Game five is Sokoban, where every level ships with a machine-checked proof of solvability. Then the first human beat all twelve in one sitting, and the real lesson started: correct is not the same as good. The fix involved mining thousands of generated levels for the hard ones.

Read more →
5 min read

Breakout, Tuned by a Bot That Played 10,000 Games

Game four in the series, and a new question: not whether Claude Code can build a game, but whether it can make one feel fair. The answer involved a bot playing 10,000 headless games, and the strangest finding yet: the perfect player is bad at Breakout.

Read more →
4 min read

Snake Again, This Time Actually in Godot

I asked Claude Code for another game and got a perfectly good Snake, except it never touched Godot. Round three: the same game in a real engine, exported to WebAssembly, playable below, with honest numbers on what the engine costs.

Read more →
6 min read

Snake, Playable Right Here in This Post

Round two of letting Claude Code build games. This time the assignment was Snake with no engine at all, shipped inside the article about it. I wrote none of the code. You can play it below.

Read more →
8 min read

Getting Claude Code to Build Games in Godot

I wanted to see whether Claude Code could actually build a game, not just talk about one. Here is how I wired up Godot so it can write, run, and see the results on its own, and the working Pong it produced.

Read more →