Expand description
Runs the game loop and blocks until it returns an error (or the process is terminated).
One loop consists of the following:
- Spawn newly logged in player characters if any are reported by LoginServer.
- Gather up the new ClientActions from players.
- Process the ClientActions into Effects.
- Apply the Effects to the World.
- Despawn players that haven’t sent a message in a while (= have disconnected).
- Send out relevant ChunkUpdates to the players (may include entire Chunks, if needed).
- Run World::update (i.e. simulate one timestep).