summaryrefslogtreecommitdiff
path: root/src/network
diff options
context:
space:
mode:
Diffstat (limited to 'src/network')
-rw-r--r--src/network/network_client.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/network/network_client.cpp b/src/network/network_client.cpp
index 7cb76366b..719433def 100644
--- a/src/network/network_client.cpp
+++ b/src/network/network_client.cpp
@@ -911,11 +911,10 @@ DEF_GAME_RECEIVE_COMMAND(Client, PACKET_SERVER_SHUTDOWN)
DEF_GAME_RECEIVE_COMMAND(Client, PACKET_SERVER_NEWGAME)
{
- /* To trottle the reconnects a bit, every clients waits
- * his _local_company value before reconnecting
- * COMPANY_SPECTATOR is currently 255, so to avoid long wait periods
- * set the max to 10. */
- _network_reconnect = min(_local_company + 1, 10);
+ /* To trottle the reconnects a bit, every clients waits its
+ * Client ID modulo 16. This way reconnects should be spread
+ * out a bit. */
+ _network_reconnect = _network_own_client_id % 16;
_switch_mode_errorstr = STR_NETWORK_MESSAGE_SERVER_REBOOT;
return NETWORK_RECV_STATUS_SERVER_ERROR;