|
$formatted = "STEAM_1:$y:$z"; |
This is fundamentally wrong!
|
$formatted = "[U:1:$this->rawValue]"; |
Also not correct.
CS:GO uses "Universe", but CS:S and CS 1.6 do not.
Example on a real "Steam ID":
CS:GO - STEAM_1:0:18797073
CS 1.6 and CS:S - STEAM_0:0:18797073
In your ID2 and ID3 "Universe" will always be exactly 1 (Public), although for CS:S and CS 1.6 it is exactly 0 (Individual / Unspecified).
Web services and web applications, such as ban lists and Steam ID Finders, also do not use "Universe". that is, for them ID2 and ID3 generated by your code are not correct.
Documentation for whom is written?
https://developer.valvesoftware.com/wiki/SteamID
Close attention to "Universes Available for Steam Accounts" and "Types of Steam Accounts".