Re:Factorio Developer Discusses Optimizations Used
by hlandau on Tuesday May 09, 2023 @02:41AM
(#35870902)
This is a very common way to handle multiplayer for RTS-style games. The inputs of the computation are the same, and the computation to update the game state is deterministic, so only the inputs are needed by every client. The disadvantage is if the logic deviates even slightly due to a bug you get a desync. If using floats I could also imagine there being issues with IEEE 754 architectures versus non-IEEE 754 architectures.
Re:Factorio Developer Discusses Optimizations Used
by jsheard on Tuesday May 09, 2023 @06:26AM
(#35872208)
Floats can be problematic even between different IEEE754 architectures, for example some SSE/AVX instructions give slightly different results on AMD and Intel processors. They are only specified with a minimum precision so you can't count on the least significant bits to be consistent.
RAM speed is often the limiting "factor"(io) as to how fast the simulation can run or how large you can build.