Action points or a shared timeline? The decision behind every battle
Why Terminal Leave has no action points: a round lasts five seconds, every action costs time, and both plans play out on one timeline.
This is a retro post about a decision made at the very start. Everything that happens in combat depends on it.
Three options
It wasn’t really a decision made at one moment — more the way the project grew. The first version of the simulation used alternating turns. My opponent kept getting pulled away — work, the bathroom, a cup of tea — and I sat waiting for the timer to run out on their turn.
Action points and alternating turns
The first option is familiar from X-COM: a soldier has action points, a step costs so many, a shot so many. The model is clear and players know it. But it was made for alternating turns, and in PvP that means sitting through the other player’s moves.

Simultaneous turns
The second option is both players acting at once. The waiting goes away, but other problems come in:
- Waiting becomes the best strategy. Whoever moves second wins: the first one has spent their action points and can’t answer. So both wait for the timer to run down — and we’re back where we started.

- A race of clicks and ping. Two soldiers spot each other, both players hit “fire”. The one whose packet reaches the server first shoots first. Reflexes and network lag decide the outcome, not tactics, and a player on a phone or in a distant region is at a disadvantage.

- Instead of thinking, the player watches the opponent.

A shared timeline
The third option is a shared timeline. A round lasts a few seconds of game time (five today). Every action takes a specific stretch of it: a step, a turn, raising the weapon, a shot. Both players’ plans are laid onto the same timeline, and the order of events follows by itself. First come, first served: whoever reached the corner first saw the enemy first.

What I chose and why
I chose the timeline. The main reason is that simultaneity stops being a convention. There’s no need for rules like “on equal points, so-and-so goes first”: time has already settled it.
The second reason is that the cost of actions starts to mean something. Running crosses a tile faster than walking. An aimed shot is more accurate but takes longer, and in that time the enemy may reach cover. The player plans not “how many points are left” but “will I make it”.
What it cost
The timeline is harder to explain, and it takes getting used to.
The client had to show the time of every action and what is left of the round, and check its numbers against the server so the plan doesn’t drift from the result. At the time of this post they still drift now and then — for example, when two moving soldiers end up in the same tile and one of them has to wait.
The simulation is harder too: it has to sort simultaneous events in a strict order, otherwise the same battle would give different results.
How a round plays out today is described in the article on simultaneous turns.
