One More Turn
A vibe-coded experiment. A mobile-first strategy game: lead a medieval English settlement, one season per turn.
- Year
- 2026
- Status
- Live
- Stack
-
- TypeScript
- React
- Vite
- Laravel
- Links
What it is
One More Turn is a vibe-coded experiment: a mobile-first browser strategy game, designed for an iPhone held in portrait. You lead a fictionalised medieval English settlement through the generations: harvests, feuds, factions, faith, and the slow rise from hamlet to market town.
Every resident is an individual with kin, memories, grievances and plans of their own. The world advances one season per turn, deterministically, from a world seed you can share.
Why I built it
I have always love turn based games and had this idea for one. I want to push Opus 4.5 and see what it could do in a handful of prompts. I was pleasantly surprised.
Technical notes
- The server is authoritative: the client sends only the player’s intent.
- The deterministic simulation, about 10,000 lines of TypeScript, runs as-is under Node behind a loopback service rather than being ported to PHP, so its determinism holds.
- Each turn runs a 20-phase pipeline. A seeded sfc32 random number generator is split into named streams for each system and character, and
Math.randomandDate.noware banned by lint. - Characters use utility AI that scores actions against their own perception only. They remember the player’s judgements and form factions around shared grievances.
- Accounts are anonymous-first, and web push notifications go out from a season clock that ticks once a minute.