For some bizarre reason I felt inspired to spend my one day off from work during crunch writing an article chronicling the development of modern game protocols. From RTS peer-to-peer lock step, to client/server, right up to FPS games and client-side prediction.
You’re a programmer. Have you ever wondered how multiplayer games work?
From the outside it seems magical: two or more players sharing a consistent experience across the network like they actually exist together in the same virtual world. But as programmers we know the truth of what is actually going on underneath is quite different from what you see. It turns out that it’s all an illusion. A massive sleight-of-hand. What you perceive as a shared reality is only an approximation unique to your own point of view and place in time.