SRB2Kart netcode ports
- Joining during any gamestate that is not supported by
P_SaveNetGame(currently everything exceptGS_LEVEL) is now redirected toGS_WAITINGPLAYERS.- This is a basic gamestate that just maintains the connection, until we can enter the start of a new gamestate, where the client should have the same state as the server again.
- Add an extremely simple drawer for
GS_WAITINGPLAYERS, to make it clear what is happening. - This is intended to fix desync when joining during intermission.
- Prevent possible connection timeout during fades / other internal loops.
- Clients are now consistently given a connection timeout when their delay reaches the end of
BACKUPTICS.- This code existed before, but it only looked one tic ahead instead of however many tics the server was attempting to acknowledge.
- Dedicated servers will not run any game logic if there are no players connected to it.
- This reduces CPU usage when there is no one interacting with your server.
- Unlike SRB2Kart, the amount of time is configurable with the
dedicatedidletimeconsole variable. Setting this to 0 will disable this feature.
-
CL_SendClientCmduses exact packet types, instead of magic number offsets.
Edited by Sal