C>S 0x26 SID_READUSERDATA
Transport Layer: | Transmission Control Protocol (TCP) |
---|---|
Application Layer: | Battle.net v1 TCP Messages (SID) |
Message Id: | 0x26 |
Message Name: | SID_READUSERDATA |
Direction: | Client to Server |
Options: | In Research |
Used By: | Starcraft Original, Starcraft Broodwar Starcraft Shareware, Starcraft Japanese Diablo Retail, Diablo Shareware Diablo II, Diablo II Lord of Destruction Warcraft II BNE, Warcraft III Reign of Chaos Warcraft III The Frozen Throne |
Message Format: (does not include protocol header) |
|
Remarks
Requests an extended profile.
This message may only be sent after a successful version check from either S>C 0x51 SID_AUTH_CHECK or S>C 0x07 SID_REPORTVERSION. Official clients send this at the logon screen to query game statistics such as wins and losses for the account before logging on. (See screenshot of packet dump.)
Please note that if you provide more than one account, Battle.net will return your request as if you sent it with 0 accounts and 0 keys, indicating that no data is present other than the 3 UINT32
. This means you cannot use this message for multiple users all at once; you must submit this message once for each user you wish to know about. This only applies to official Battle.net servers, it might not apply to PvPGN servers or equivalent software.
In addition, requesting 32 or more keys at one time makes Battle.net kick you (it does not ban you however).
If you send this message on a voided account or game key, Battle.net will disconnect and IP ban you for 5 minutes.
Profile Keys
Note: This list may not represent all of the available keys that can be queried. If you find more, please consider adding them here.
User Profiles
Note: Any key in the table below can contain an 0x09 (tab) character in its value.
Key | Notes |
---|---|
profile\sex | This field is defunct in STAR/SEXP/WAR3/W3XP. |
profile\age | This field is defunct. |
profile\location | |
profile\description | The maximum length for this field is 512 bytes, including the NULL terminator. |
profile\homepage | This field is defunct. Seen in StarCraft Beta. |
profile\Star\clan | This field is defunct. Seen in StarCraft Beta. |
profile\Star\gametype | This field is defunct. Seen in StarCraft Beta. |
Account Info
Note: Battle.net returns blank values for anyone but yourself.
Key | Notes |
---|---|
System\Account Created | FILETIME value ('{high} {low}'), ex: '30842135 3648884085' == 2020-10-08 02:08:01 |
System\AuthLevel | |
System\Flags | |
System\Friends | |
System\Icon | |
System\IP | |
System\Last Logoff | FILETIME value, see: 'System\Account Created' |
System\Last Logon | FILETIME value, see: 'System\Account Created' |
System\League | |
System\MFT Bytes | |
System\MFT Last Write | |
System\MFT Time Logged | |
System\Port | |
System\Time Logged | total number of seconds account was online |
System\Username |
Game General
Most game values are numeric.
Key | Notes |
---|---|
record\SEXP\league |
Normal Games
Key | Notes |
---|---|
record\GAME\0\wins | |
record\GAME\0\losses | |
record\GAME\0\disconnects | |
record\GAME\0\last game | FILETIME value, see: 'System\Account Created' |
record\GAME\0\last game result | ex: "WIN", "LOSS", "DRAW" |
Ladder Games
Key | Notes |
---|---|
record\GAME\1\wins | |
record\GAME\1\losses | |
record\GAME\1\disconnects | |
record\GAME\1\rating | |
record\GAME\1\high rating | highest all-time rating |
DynKey\GAME\1\rank | |
record\GAME\1\high rank | highest all-time rank |
record\GAME\1\last game | FILETIME value, see: 'System\Account Created' |
record\GAME\1\last game result | ex: "WIN", "LOSS", "DRAW" |
record\GAME\1\season | |
record\GAME\1\day | |
record\GAME\1\day games |
IronMan Ladder Games
Note: These are for W2BN exclusively.
Key | Notes |
---|---|
record\GAME\3\wins | |
record\GAME\3\losses | |
record\GAME\3\disconnects | |
record\GAME\3\last game | FILETIME value, see: 'System\Account Created' |
record\GAME\3\last game result | ex: "WIN", "LOSS", "DRAW" |
record\GAME\3\rating | |
record\GAME\3\high rating | highest all-time rating |
DynKey\GAME\3\rank |
Comments
The System keys under "Account Info" can only be accessed if you are requesting your own information. Otherwise, Battle.net will send back a blank key value.
More under "Account Info":
SystemUsername
SystemAuthLevel
SystemLeague
SystemIcon
SystemMFT Bytes
SystemMFT Last Write
SystemMFT Time Logged
SystemIP
SystemPort
SystemFriends
*SystemFlags
@idiat: Added the note.
@Sixen: Added the keys.
Just to further comment on this packet, I just used Starcraft Broodwar and saw that only 5 of the System keys actually return data when I use my name.
System\Account Created
System\Last Logoff
System\Last Logon
System\Time Logged
System\Username
If anyone knows of any other System keys that return something, please comment.
Requesting 0x20 (32) or more keys at one time makes Battle.net kick you. No ban, just kick.
Added the note.
Updated document formatting to Markdown syntax.
Updated profile\description
to include its maximum length.