The following conventions are used throughout this documentation.
Where a field in a message is marked as Unknown
, we do not know its use. If a value is specified in brackets after the 'Unknown', you can safely use that value when constructing the message. In these cases, the situation is generally either that the relevant game always sends the same value and its use has not been investigated, or that the relavent game ignores this value and we are therefore unable to speculate on its use. If you find an Unknown
field here and think that you know what it is, please do let us know! You will be credited should we use the information you provide.
Fields or descriptions marked as Todo
are things we haven't gotten to yet. You shouldn't see too many of these!
||A Windows struct used to store filetime information.
|A 32-bit unsigned little-endian integer.
|An array of 32-bit unsigned little-endian integers. The lack of a specified size indicates that the size is variable or unknown.
||An unsigned little-endian integer whose value is always 0 (FALSE) or 1 (TRUE). The size of this value may change according to the packet in which it is found.
||A 16-bit unsigned little-endian integer.
||An 8-bit unsigned little-endian integer.
||Null-terminated array of characters.
A null-terminated UTF-8 string. See also:
Please also note that Battle.net only Unicode-encodes strings for Starcraft and Brood War. Other clients are still using ASCII, although it's likely that this will change in the future.
||An array of strings (see above). This type is generally only used when another field in the packet specifies how many entries there are.
||A series of strings (see above) with an additional null-terminator at the end.
||Data marked as VOID has no particular type or length. Where data is marked as VOID, additional information is given on its use.