2026-11-10 · English
The tractor had a belly, eight metres in front of itself
Devlog 1 (English) — three days hunting a bug in a mud pit, and what a headlight had to do with it
There is one moment this whole game is built around. You sit at the edge of a mud pit, open the throttle, the rear tyres bite, the nose lifts a little — and then three seconds decide whether you get through or dig yourself in.
That moment is the hardest thing we have ever built. And it was broken.
What a tractor actually does in mud
If you only know tractors from a distance, mud makes you think about tyres. If you have stood next to one, you know: the belly decides.
As long as the machine is standing on its wheels, it has traction. The moment the hull bottoms out, the mud carries part of the weight — and exactly that part is missing from the tyres. That is why a short, heavy tractor sometimes gets through where a long one gets stuck, and why ground clearance matters more in practice than horsepower.
Our pit computes this. To do that it has to measure the vehicle once at startup: where the nose is, how wide it is, how low the belly hangs. Four numbers, once per run.
"It never did that with the old truck"
The report came from playing, not from a test: the tractor flips forward when entering the pit. And then the aside that turned out to be half the diagnosis: it never happened with the old off-road truck.
We ignored that sentence at first. It sounded like background noise. It was in fact the only real clue in the whole report.
Two afternoons went into two obvious suspects — the bank beside the lane, then the physics timestep. Both testable, both wrong.
What made this so stubborn: every automated test run passed. We drive every built tractor through the approach and over the pit edge in batch mode and log pitch, roll and wheel load. Nothing tipped there. In the game it tipped every third time.
Fourteen metres that shouldn't exist
What finally found it was a recorder that ran while playing instead of in a test. Two numbers, one under the other:
tractor at z = -3.5 still on the dry approach
pit distance counter: 26 m
Fourteen metres apart. The pit was computing with a vehicle driving far ahead of the tractor.
The cause sits in a file that has nothing to do with mud. At startup every vehicle gets headlight cones — as geometry, not as light sources: a flat mesh, sixteen metres long, nine metres wide, angled down. Invisible in daylight. But present.
Measure the vehicle across everything it draws, and a built tractor is not four and a half metres long:
from -2.1 m to 18.2 m
underside 3.7 m below the ground
The pit took the tip of the headlight cone for the nose. From that it computed a belly eight metres ahead of the vehicle, four metres wide, three and a half metres below ground. That ghost belly drove out front, the mud grabbed it — while the real tractor was still doing thirty on dry ground. And threw it over the front axle.
The old off-road truck had no headlights with cone geometry. That is why the aside was half the diagnosis.
The same measurement sat in three places
The pit wasn't the only thing measuring a vehicle. The spawn point does it, to set the tractor down on the ground. The pulling track's hitch does it, to find the drawbar height. Both had the same bug — unnoticed, because a tractor dropped ten centimetres too high simply falls and bothers nobody.
Now a single place decides what counts as solid sheet metal: no particles, no ropes, no tyre tracks, no headlight cones. All three measurements ask it.
What we took away from it
Not "headlight cones aren't sheet metal". That's the bug, not the lesson. The lesson is:
A test has to build what game startup builds.
In the editor, game startup never runs. So there was never a headlight cone there, so the bug was invisible in every single measurement — and present in every single drive. Our pit tests now call up themselves what otherwise only appears when you pull away.
Plus a small habit that has been in every tool since: the test writes the vehicle's dimensions into the log twice — once with everything attached, once as solid metal only. Next time somebody hangs something invisible on a vehicle, it shows up in that line before a player has to report it.
And the lesson that has nothing to do with code: when somebody tells you what used to be different, that is not an aside. It is an A/B comparison somebody just handed you for free.
TraktorSim is a tractor game with its own vehicle physics — tyre slip, per-wheel load, differential, tyre pressure. Built by two brothers who started making tractors driveable in 3D at Fendt in 2006.