|Direction:||Server to Client|
|Used By:||Starcraft Original, Starcraft Broodwar|
Diablo II, Diablo II Lord of Destruction
Warcraft III Reign of Chaos, Warcraft III The Frozen Throne
Returns server parameters and a versioning challenge.
0x00: Broken SHA-1 (STAR/SEXP/D2DV/D2XP)
0x01: NLS Version 1 (WAR3Beta/STAR/SEXP/D2DV/D2XP)
0x02: NLS Version 2 (WAR3/W3XP)
* - Support for NLS Version 1 was added to STAR and SEXP in patch
1.15.2 and has been supported by D2DV and D2XP since at least patch
1.10. Battle.net has never enabled NLS Version 1 for these products.
Server Token: a randomly generated value that is unique to your session and is used to calculate the
Hashed Key Data field in C>S SID_AUTH_CHECK as well as the XSHA-1 double-hashed
Password Hash field in C>S SID_LOGONRESPONSE2.
UDP value: A randomly generated value used to associate this connection with its corresponding UDP and MCP connections. Used in PKT_CONNTEST2 and MCP_STARTUP.
CheckRevision MPQ filetime and CheckRevision MPQ filename are used by products to send BNFTP requests to obtain CheckRevision.
CheckRevision Formula: This value is the 4th parameter passed to CheckRevision() calls. The formula is always null-terminated, but may contain non-printable and non-UTF8 characters.
128-byte Server signature: This field is an RSA signature that's exclusively sent to and verified by WarCraft III. Its purpose is to prevent WarCraft III clients from connecting to third-party servers. Verification implementation can be found in BNCSUtil's nls_check_signature() function.
After completing the version checking process, the client should proceed with an account logon using the mechanism specified here (SID_LOGONRESPONSE2 for
0x00 and SID_AUTH_ACCOUNTLOGON for
Using a different login type than the one given may result in an IP ban.