Haha, thank you! Glad the sound design landed, the hiss and the crackle were a big part of the fun to make. And noted on the burner: maybe a bigger, hotter torch as the next difficulty level in one of the next updates? Thanks for the inspiration! 🔥
Erathul
Creator of
Recent community posts
Reading through the threads here, I keep seeing the same idea: let bots play the game. Crumb replayed TORCH IT’s proven solutions headlessly and bot-tested CARRY’s mid-run fork until it turned out to be one road. Mintcurrent ran a first-play check on placement. I’ve been doing the same, and I’d love to compare notes on where it works and where it falls short.
Where the bots earned their keep
In Torched! (you torch crème brûlée while Paris’ most feared food critic is in the room), the sugar is a 96×96 grid running at a fixed 60 steps per second with a fixed seed, so bots can play it fairly. Three bot players: one who watches the colour, a “statue” who holds the flame still, and a “waver” who flails at random. We tuned until an even sweep earns three stars, holding still burns a hole in 1.5 seconds, and random waving never gets three stars. Those rules are now 38 automated tests.
The critic is an agent too. Gaston plays every milestone build in a real browser (Playwright, real mouse movements), never reads the code, and writes an in-character review with stars and a list of faults. His screenshots caught something no test did: burnt sugar stayed brown, because PixiJS multiplied our texture by an alpha channel that held the sugar thickness.
For Grab Your Torches! I wanted to know one thing: does skill actually matter? Ten headless browsers ran the real game code, with rendering off and one night in about five seconds. That came to 4,300 runs, or roughly 200 hours of play, by four bot personalities from “passive” to “perfect”. What came out:
- Skill barely showed. In Night One a weak player lost 2.0 neighbours and a perfect one 0.7. The weak player even farmed rescue points by fixing their own mistakes.
- Rewarding good play made the gap smaller. Longer knockdowns and more counter damage help the weak player too, because even a slow bot lands a counter now and then. Of eleven ideas, two worked: tougher wolves in Night One and more eager wolves in Night Two.
- The hard mode made the finale easier. Under the Blood Moon pact, every beaten wolf drops a burning torch, and the finale’s shadows count as wolves. The mob got free flames in the last stand and lost 0.6 neighbours instead of 4.1.
- Softlocks nobody would have found in a jam week. The bots started nights with almost no troop left. Gargoyles that only hunt neighbours circled forever around a lonely Bertha.
The hardest part wasn’t balancing. It was making a seed replay the same night. A noise table got filled before the seed was set, HUD timers read the wall clock, and background music decoding drew random numbers depending on machine load. All three made runs drift apart. (Full devlog)
Where they missed
- The newspaper review at the end of a night popped up again every 3.2 seconds. The tests passed. Gaston passed, since he takes his screenshot at 1.5 seconds. I found it by playing.
- Our check of the voice lines against their transcripts looked perfect, because it was returning our own input text.
- Agents can’t hear. Every voice and sound comes in several takes on a hidden audition page, and I pick by ear. Gaston’s French accent took three rounds.
- In Grab Your Torches! the balancing bot only knows “walk right”. It got stuck on rocks any human steers around. In the rain of Night Two it never thinks to look for a fire to relight at, so I left that case alone, assuming a human would.
So, my question: What did your bots or agents miss that only a human caught? And for the entries run fully by agents: how do you catch “this feels wrong” when no human plays it?
If you want to see the kitchen for yourself: Torched! (about 3 minutes), Grab Your Torches! (Night One takes about 5 minutes), and KENAZ – The Last Torch (a tactics roguelike in Hel’s dark halls). I’m happy to play yours in return, so drop a link.







