Product decisions

Where you can see how I think

Five decisions that shaped the game, each with the price it cost.

The margin deliberately calibrated low

I designed the game around a realistic EBITDA of roughly ten to twelve percent, so that normal play leaves two to four percent margin at the end. Up to eight is possible if you are genuinely good, but that is not the normal case. And you can slip into a loss very quickly if you are not paying attention. A game that tempts you with fantastic profits would falsify the actual hardness of a business where every cent per kilometre counts.

The model punishes short-term decisions

You can make moves that look good at first but are thought through only for the short term, and that end up producing a negative operating result. That is deliberate. The economic reality of a haulage business does not reward the quick win, it rewards the considered decision, and that is exactly what you should feel in your own result.

No AI opponent, an abstract market instead

I could have built a simulated competitor reacting to every move. I dropped it. The price would have been a complexity that distracts from the actual point: your own decision about when and how to switch. Competition is there, but as a frame, not as a fellow player.

Truck generations rather than individual models

Real vehicle models would have turned the game into a data maintenance project and would have aged badly. Generations, meaning what the technology can do at that stage, stay understandable and do not age.

Software as a passive upgrade

You buy it, it works, done. I deliberately avoided building software as an active move you have to keep operating. The point is that software works in the background of a real operation, not that you click around in it.

The AI player

An AI player that tests the game against itself

To calibrate it I built an AI player that plays SPEDITION on its own. It actively tries different paths: what do I have to do, and when, to win outright, what to just scrape through, what sends the business under. That shows me whether the balance holds, whether the realistic band of outcomes survives, and whether every outcome actually has a route that gets you there. The real lever is volume: the player gets through any number of games in no time, thousands of them if that is what it takes. By hand it would be impossible.

Watch a round, but not a thousand

You can start the AI player inside the game and watch it play a round. Running it thousands of times stays with me as the developer, and deliberately so: if that were public, it would be an easy way to outsmart the game.

Built together, with the work split clearly

The game was built alongside an AI model, and the division of labour was clear. The reality checks came from me, out of practice: a yard does not have 150 kW of grid connection sitting there. No haulier pays 55 cents for public charging. The switch does not pay off by tightening costs, it pays off through the order book, once the lucrative tenders start asking for electric. The implementation in the model and the systematic checking came from the AI, through the simulation player, which exposed where the numbers only looked like progress and were in fact scatter: across forty runs the median moved by forty thousand euros, and several supposed improvements turned out to be worth nothing.

Why the AI stays in its box

Cases like that are exactly why I steer the AI deliberately instead of letting it run and hoping for the best. The simulation player is the check above the AI, not a replacement for it. Anything meant to be reliable has to stay verifiable, and verifiable means guided.