If the server or an intermediate server identifies connections by IP or device ID, it treats two clients on the same PC (same public IP) as one person.
Why The session table is keyed by IP, or by IP + device ID → Effect The second client’s data overwrites or gets mixed into the first session → On screen One side can’t see NPCs, and the other disconnects or receives someone else’s data
One client on the same PC, Same household, Specific region/ISP
When
Right after login or maintenance
Owner
Primary owner Game team (Server development) · Also Game team (Client development)
Game team action items
Server: identify every connection by a unique session token on both the server and intermediate servers, and be sure to fix this, because several people in the same home (behind router NAT) and players on mobile networks where the carrier shares one IP among many subscribers (CGNAT) hit the same problem. Client: use the session token each running client received separately.
On the graph
Outliers only · Concurrent sessions from the same public IP, session overwrites
Where to look
Server and intermediate server logs of the key used to look up the session, the session token, and the client IP and port, checking whether the existing session changed the moment a second connection came in from the same IP. Reproduces by starting two clients one after another on the same PC
Confirmed if
The moment the second client connects, the first session’s address or character data changes, and the same disconnects appear for other players behind the same router or mobile network (CGNAT)
Ruled out if
Two sessions from the same IP are kept apart with different tokens: not this cause. Two processes use the same local port: fixed UDP port collision