diff --git a/Generals/Code/GameEngine/Source/GameNetwork/ConnectionManager.cpp b/Generals/Code/GameEngine/Source/GameNetwork/ConnectionManager.cpp index a4b6a99a360..c39ecc6b6be 100644 --- a/Generals/Code/GameEngine/Source/GameNetwork/ConnectionManager.cpp +++ b/Generals/Code/GameEngine/Source/GameNetwork/ConnectionManager.cpp @@ -1917,6 +1917,13 @@ void ConnectionManager::parseUserList(const GameInfo *game) TheMemoryPoolFactory->debugSetInitFillerIndex(m_localSlot); #endif + // Set the packet router slot to the first player (packet router fallback[0]) + // This fixes the issue where m_packetRouterSlot was hardcoded to 0 and never updated + if (numUsers > 0) { + m_packetRouterSlot = m_packetRouterFallback[0]; + DEBUG_LOG(("Packet router slot set to %d", m_packetRouterSlot)); + } + /* if ( numUsers < 2 || m_localSlot == -1 ) { diff --git a/GeneralsMD/Code/GameEngine/Source/GameNetwork/ConnectionManager.cpp b/GeneralsMD/Code/GameEngine/Source/GameNetwork/ConnectionManager.cpp index 1b93f3e5311..c80fef57d20 100644 --- a/GeneralsMD/Code/GameEngine/Source/GameNetwork/ConnectionManager.cpp +++ b/GeneralsMD/Code/GameEngine/Source/GameNetwork/ConnectionManager.cpp @@ -1979,6 +1979,13 @@ void ConnectionManager::parseUserList(const GameInfo *game) TheMemoryPoolFactory->debugSetInitFillerIndex(m_localSlot); #endif + // Set the packet router slot to the first player (packet router fallback[0]) + // This fixes the issue where m_packetRouterSlot was hardcoded to 0 and never updated + if (numUsers > 0) { + m_packetRouterSlot = m_packetRouterFallback[0]; + DEBUG_LOG(("Packet router slot set to %d", m_packetRouterSlot)); + } + /* if ( numUsers < 2 || m_localSlot == -1 ) {