In 2023 as part of the Enfusion team at Bohemia Interactive, I contributed to “Server-Authoritative Vehicles”, a technical write-up on the official Arma Reforger blog about how we moved vehicle physics from a client-authoritative model to a fully server-authoritative one.
Credit
This was a team effort, I was the leading contributor but I wasn’t the sole author of the logic nor the article. A lot of praise should be given to the immense efforts that everyone on the game and engine team gave to the various aspects of making vehicles as special as they are in both Arma Reforger and DayZ.
Brief
Arma Reforger’s original vehicle networking was client-authoritative, the client simulated and dictated a vehicle’s physics. That gave immediate, responsive control, but at a huge cost, it opened the door to cheating, exploits and produced a set of effectively unsolvable bugs.
The fix was already known, a server-authoritative model, but the model available in DayZ was not good enough.
So we embarked on creating something more advanced, in an attempt to satisfy as much of our requirements as possible. Along the way we struggled with determinism, physics, replication and performance.
The same approach is now in DayZ
In the DayZ 1.28 Experimental Release notes, Bohemia announced proper vehicle synchronization was coming to DayZ, and credited the source directly:
“If you are interested in learning more about what was changed and why, check out this detailed blog post from Arma Reforger, as we are using the same approach for DayZ.”
A couple of community videos cover the DayZ side of the change if you want to see it in action: “DayZ’s Vehicles Got Major Improvements In Update 1.28!!”, and a broader tour of the patch with a look at the vehicle changes.
If you want the deeper theory behind all of this (deterministic lockstep, snapshot interpolation, state sync, and why immediate control and server authority are in such a tension), I wrote about it a few years earlier in Part 4 of my master’s thesis series, on networked vehicle physics.
