

Message Id: | 0x50 |
---|---|
Message Name: | SID_AUTH_INFO |
Direction: | Client to Server |
Used By: | Starcraft Original, Starcraft Broodwar Diablo II, Diablo II Lord of Destruction Warcraft III Reign of Chaos, Warcraft III The Frozen Throne |
Format: |
|
Sends information about the client's product and locale to Battle.net.
Field descriptions:
- Protocol ID: Battle.net's current Protocol ID is
0x00
. This field has only been seen with a value of0x00
. - Platform code: Identifies the client's platform value.
- Product code: Identifies the client's product value.
- Version byte: Identifies the client's version number.
- Language code: Identifies the client's language value. If set to
0x00
the server will likely use its default, or English (enUS). This value is used to determine the client's home channel (eg:Diablo II En-1
). - Local IP: This is the local network IP of the client, in network byte (big-endian) order, for NAT compatibility. Can safely be set to
0.0.0.0
, or0x00
. - Timezone bias: The difference between UTC and local time, in minutes.
- Retrieve using TIME_ZONE_INFORMATION structure returned from GetTimeZoneInformation()
- Depending on whether the return value is
TIME_ZONE_ID_STANDARD
orTIME_ZONE_ID_DAYLINE
, addTZI.Bias + TZI.StandardBias
orTZI.Bias + TZI.DaylightBias
to get the bias in minutes, whereTZI
is the returnedTIME_ZONE_INFORMATION
structure. - Alternatively, you may use GetSystemTime(), GetLocalTime(), and SystemTimeToFileTime(): convert both system and local time to FILETIMEs, subtract local time from system time, and divide by 600,000,000 to get the bias in minutes.
- MPQ locale ID: This field is part of Blizzard's multi-lingual MPQ system and is used to specify which version of an MPQ should be used when the MPQ is available in multiple languages. Can safely be set to
0x00
, but you may also use something like GetUserDefaultLCID(). - User language ID: Can be retrieved with GetUserDefaultLangID(). Can safely be set to
0x00
. - Abbreviated country name and country name: Can be retrived with GetLocaleInfo() with LCType set to
LOCALE_SABBREVCTRYNAME
(three-letter code) andLOCALE_SENGLISHCOUNTRYNAME
(English country name) respectively.- If you're unable to retrieve these values you can use
USA
andUnited States
.
- If you're unable to retrieve these values you can use