LuxBonce: starting with the spec
This is the first entry in the LuxBonce devlog. LuxBonce is a turn-based artillery game I'm making in Godot 4 for Linux. Two players take turns aiming and firing, the wind changes after every shot, and every hit leaves a crater in the ground. (The game on this site's home page is a tiny nod to it.)
Where it stands
The alpha went into the repository on October 20, 2026. It already has:
- solo matches against a CPU pilot that reads wind and terrain;
- online matches through a small Python matchmaking server that checks every turn;
- four mobiles (NOVA, BULWARK, COMET and AURORA), each with its own stats and ability;
- accounts, unlockable modules and a cosmetic-only gem store paid through Stripe.
Why spec first
In my day job I use Spec-Driven Development: before any code, we write down what we're building, why, and how we'll know it's done. Then the code, much of it written with AI agents, is checked against that spec. My earlier personal projects (a Valheim mod, a Sealed Deck simulator, a Commander deck checker) weren't built that way.
LuxBonce is where I bring that process home. The repository already has a first taste of it: a design doc that pins down the arena's rules, so new maps can't change combat by accident, and a doc with three level layouts written as briefs before any of them exists in the game.
What's next
The next entries will follow those briefs and the next specs as they turn into code. I'll show what each spec said, what changed along the way, and what didn't work.