SteamID
From Wikipedia, the free encyclopedia
A SteamID is a unique identifier used for Steam, an online game service run by Valve Software.
It provides a way of uniquely identifying a player. The SteamID replaces the WonID, previously used when Half-Life CD key checks were done through WON. SteamID's are, at the moment, mainly used by Half-Life, Half-Life 2 and their numerous modifications, such as Counter-Strike.
[edit] User Management
The advantage of the SteamID (and previously the WonID) is that player banning is a lot more effective. In online games that do not use such a mechanism the only way to ban a player from a server is by IP address. While this works in some cases, it is usually very easy for the player to obtain a new IP by disconnecting and then reconnecting their Internet connection (if they have a dynamic IP address). With the new IP, the banned player can regain access to the server.
If a player is banned on a SteamID, it is not possible for them to rejoin the server with their copy of the game. They will need a new copy (another copy on the same account won't work) to regain access. This increases the cost of rejoining a server to the point where the player will usually decide to try a different server.
To prevent banned people from hopping from one server to the other until they all have individually banned him/her, systems are being worked on to share banned SteamIDs. Valve Software has their own list, but this list is only populated with SteamIDs that have been banned by VAC. It does not allow server admins(or Valve staff) to add their own bans, only bans from the automatic detection apply. The reason for this is that such an open system would be an ideal candidate for abuse, since it would allow one person to falsely ban someone on any and all existing game servers.
However, there are some alternatives that do allow server admins to add their own bans, but under very strict control. Steambans is such a system that allows an admin to nominate a player for banning and submit a demo as proof. If the proof is sufficient, the player will be banned from all servers participating with Steambans.
Another use of the SteamID is for tracking statistics. Because a player can be uniquely identified it is relatively easy to collect statistics like number of kills, number of deaths and playtime, without making the mistake of accidentally attributing the scores to another player. This can even be done spanning multiple servers, because a players SteamID doesn't change between servers. This does not work well on LAN however.
Steam ID's are also required for competitive online leagues such as the Cyberathlete Amateur League to prevent impersonation of players.
SteamIDs are viewed in the format STEAM_0:Y:Z. Y is either 0 or 1 corresponding to which authentication server the account is on. The third number (Z) is a sequential number assigned when the account was first activated, which can be used to determine the age of an account. For example, numbers lower than 4000 (may) indicate the account was created before Steam was public, whereas the latest accounts created have numbers with eight digits.
There are special SteamIDs, namely STEAM_ID_PENDING for when the server hasn't fully authenticated the client, and VALVE_ID_ED_23_LAN/STEAM_ID_LAN for players playing on a lan server.