← All stories
2013

An engine built for a mechanic nobody needed

The game design of Steam Defense wasn’t fully worked out when we started building the engine. One idea was branching paths: units could walk one road or another, and everything was calculated over a graph.

The Active Defence prototype with the path graph

The early prototype of Steam Defense, then called Active Defence. The pink lines at the bottom are the branching path graph.

When we built it and played, it turned out to be inconvenient in practice. In a real-time battle there was no time to switch paths, and no good way to let the player do it. But the graph was already at the heart of the engine.

Commit log from August 2012

Commits from the first days of the project, August 2012: nodes, start nodes and an editor script to draw the node graph.

From then on it cost us everywhere. It added calculations to every frame and got in the way of even simple things. How should an arrow fly — in a straight line in 3D, or along the graph? Problems like that piled up one after another.

The lesson I took into every project since: don’t build the core around a mechanic that hasn’t proven itself in play. Prototype the gameplay first — even crudely — and let the architecture follow what actually survived.