Dealing with lag
One of the major problems that occurs in a networked game is latency or lag. When two players are playing against each other, and one is on a high-speed network and the other is on a very low-speed network, how do we update the data? We need to update it in such a way that it looks normal to both players. No player should get an undue advantage because of this situation.
Getting ready
To work through this recipe, you will need a machine running Windows and Visual Studio.
How to do it…
In this recipe, you will see a few techniques for countering lag.
Generally, a networked game will have the following update loop. We need to figure out, from the loop structure, what is the best way to counter lag:
read_network_messages() read_local_input() update_world() send_network_updates() render_world()
How it works…
In most computer games, when networking is implemented, a specific type of client-server architecture is chosen. Often, an authoritative server is...