Add GUID collision check
Since PB was responsible for giving unique ID and check for collision (dropping players with non unique ID), it’s removal from the open source code led to adding an etkey generator in the client.
However, 2.60b clients that have no GUID can still possibly connect to any mod. In Legacy mod, we added a check to prevent players with no guid to connect (due to issue with Skill Rating, see #1344, and obviously invalid guid make administration harder). It might be wise to prevent this server side too.
- Add GUID check for validity (empty, "unknown", "NO_GUID", wrong format)
- Add check for duplicate GUID on server (beware of multiple clients use for dev mode though!)
- Drop clients with invalid GUID with a nice message ("Go get ET:L client, or use etkey.org")
- If the check is done server side, the relevant mod code could be removed (Legacy mod is not designed to run on the vanilla server, and Skill Rating depends on database code added to ETLegacy).
- Maybe move some other part of the UserInfo string to server check? (f.e. empty name).