Navigation

Console
Generate Code: All packets
Packets

Game Statstrings


Game Statstrings
STAR/SEXP/JSTR/SSHR/W2BN Statstrings are comma delimited, and most fields can be null. Each field is a different format, but they all stick to numeric integers, hexadecimal strings (in lower case), or plaintext strings. The encoding Latin1 is recommended for correct viewing; map names may be UTF-8 or anything else, but will still show up as Latin1 to the client.

STAR/SEXP:
0,1,2,3,4,5,6,7,8,9,10,11

0 Saved Game
Null: This game is not saved.
Hex String: This is a saved game. The hex string is a DWORD, and is probably a checksum of the save file.
1 Map Size
Null: 128x128
Two Digit Number: Width and Height of the map, divided by 32.
Ex: 43 = 4*32 x 3*32 = 128x96
2 Max Players
Null: 8 Player Map
Value: Number of players allowed on the map, plus 10.
Ex: 16 = 6 players
3 Speed
0x00: Slowest
0x01: Slower
0x02: Slow
0x03: Normal
0x04/Null: Fast
0x05: Faster
0x06: Fastest
4 Approval
0x00: Not Approved
0x01: Blizzard Approved
0x02: Ladder Approved
0x03: PGL Approved
0x04: KBK Approved
0x05: CompUSA Approved
5 Game Type
0x02: Melee
0x03: Free for All
0x04: One vs One
0x05: Capture the Flag
0x06: Greed
0x07: Slaughter
0x08: Sudden Death
0x09: Ladder
0x0A: Use Map Settings
0x0B: Team Melee
0x0C: Team Free For All
0x0D: Team Capture the Flag
0x0F: Top vs Bottom
0x20: PGL
6 Unknown
This field has only been observed to be Null.
7 Game Parameter
This field is based on the Game Type:

Melee, Free for All, One vs One, Capture the Flag, Sudden Death, Use Map Settings, PGL
0x01: None
Greed
0x01: 2500 Resources
0x02: 5000 Resources
0x03: 7500 Resources
0x04: 10000 Resources
Slaughter
0x01: 15 Minutes
0x02: 30 Minutes
0x03: 45 Minutes
0x04: 60 Minutes
Ladder
0x01: None
0x02: Disconnect Counts as a Loss
Team Melee, Team Free for All, Team Capture the Flag
0x01: 2 Teams
0x02: 3 Teams
0x03: 4 Teams
Top vs Bottom
Team Ratios, as gathered by the following Equation:
val[7] vs (val[2] - 10 - val[7])
Ex: if (val[2] = 16, val[7] = 2), then "2 vs 4"
8 CD-Key Checksum
This is a hex string DWORD checksum of the creator's CDKey as generated by call #502 of Storm.dll (SStrHash).
9 Tileset
0x00/Null: Badlands
0x01: Space Platform
0x02: Installation
0x03: Ashworld
0x04: Jungle
0x05: Desert
0x06: Arctic
0x07: Twilight
10 Replay
0x00/Null: Not a Replay
0x01: Game Replay
11 Creator/Map
Game's Creator [0x0D] Map Name [0x0D]

JSTR:
0,1,2,3,4,5,6,7,8,9

0 Saved Game (Unsure)
Null: This game is not saved.
Hex String: This is a saved game. The hex string is a DWORD, and is probably a checksum of the save file.
1 Map Size
Null: 128x128
Two Digit Number: Width and Height of the map, divided by 32.
Ex: 43 = 4*32 x 3*32 = 128x96
2 Max Players
Null: 8 Player Map
Value: Number of players allowed on the map, plus 10.
Ex: 16 = 6 players
3 Speed
0x00: Slowest
0x01: Slower
0x02: Slow
0x03: Normal
0x04/Null: Fast
0x05: Faster
0x06: Fastest
4 Approval
0x00: Not Approved
0x01: Blizzard Approved
0x02: Ladder Approved
0x03: PGL Approved
0x04: KBK Approved
0x05: CompUSA Approved
5 Game Type
0x02: Melee
0x03: Free for All
0x04: One vs One
0x05: Capture the Flag
0x06: Greed
0x07: Slaughter
0x08: Sudden Death
0x09: Ladder
0x0A: Use Map Settings
0x0B: Team Melee
0x0C: Team Free For All
0x0D: Team Capture the Flag
0x0F: Top vs Bottom
0x20: PGL
6 Game Parameter
This field is based on the Game Type:

Melee, Free for All, One vs One, Capture the Flag, Sudden Death, Use Map Settings, PGL
0x01: None
Greed
0x01: 2500 Resources
0x02: 5000 Resources
0x03: 7500 Resources
0x04: 10000 Resources
Slaughter
0x01: 15 Minutes
0x02: 30 Minutes
0x03: 45 Minutes
0x04: 60 Minutes
Ladder
0x01: None
0x02: Disconnect Counts as a Loss
Team Melee, Team Free for All, Team Capture the Flag
0x01: 2 Teams
0x02: 3 Teams
0x03: 4 Teams
Top vs Bottom
Team Ratios, as gathered by the following Equation:
val[7] vs (val[2] - 10 - val[7])
Ex: if (val[2] = 16, val[7] = 2), then "2 vs 4"
7 CD-Key Checksum
This is a hex string DWORD checksum of the creator's CDKey as generated by call #502 of Storm.dll (SStrHash).
8 Tileset
0x00/Null: Badlands
0x01: Space Platform
0x02: Installation
0x03: Ashworld
0x04: Jungle
0x05: Desert
0x06: Arctic
0x07: Twilight
9 Creator/Map
Game's Creator [0x0D] Map Name [0x0D]

SSHR:
,1,2,3,4,5,6,7,8,9

1 Map Size
Null: 128x128
Two Digit Number: Width and Height of the map, divided by 32.
Ex: 43 = 4*32 x 3*32 = 128x96
2 Max Players
Null: 2 Player Map
Value: Number of players allowed on the map, plus 10.
Ex: 16 = 6 players
3 Speed
0x00: Slowest
0x01: Slower
0x02: Slow
0x03: Normal
0x04/Null: Fast
0x05: Faster
0x06: Fastest
4 Approval
0x00: Not Approved
0x01: Blizzard Approved
0x02: Ladder Approved
0x03: PGL Approved
0x04: KBK Approved
0x05: CompUSA Approved
5 Game Type
0x02: Melee
6 Game Parameter
0x01: None
7 Checksum
This is a hex string DWORD checksum that seems to always be 2ac374b3, probably because SSHR has no CDKey and only one map.
8 Tileset
0x00/Null: Badlands
9 Creator/Map
Game's Creator [0x0D] Map Name [0x0D]

W2BN:
0,1,2,3,4,5,6,7,8,9

0 Saved Game
Null: This game is not saved.
Hex String: This is a saved game. The hex string is a WORD, and is probably a checksum of the save file.
1 Map Size
Null: 128x128
Two Digit Number: Width and Height of the map, divided by 32.
Ex: 43 = 4*32 x 3*32 = 128x96
2 Max Players
Null: 8 Player Map
Value: Number of players allowed on the map, plus 10.
Ex: 16 = 6 players
3 Speed
0x00: Slowest
0x01: Even Slower
0x02: Slower
0x03: Slow
0x04: Normal
0x05/Null: Fast
0x06: Faster
0x07: Even Faster
0x08: Fastest
4 Approval
0x00: Not Approved
0x01: Blizzard Approved
0x02: Ladder Approved
0x03: PGL Approved
0x04: KBK Approved
0x05: CompUSA Approved
5 Game Type
0x02: Melee
0x03: Free for All
0x04: One vs One
0x09: Ladder
0x0A: Use Map Settings
0x0F: Top vs Bottom
0x10: Iron Man Ladder
6 Game Parameter
This field is based on the Game Type:

Melee, Free for All, One vs One, Use Map Settings, Iron Man Ladder
0x01: None
Ladder
0x01: None
0x02: Disconnect Counts as a Loss
Top vs Bottom
Team Ratios, as gathered by the following Equation:
val[7] vs (val[2] - 10 - val[6])
Ex: if (val[2] = 16, val[6] = 2), then "2 vs 4"
7 CD-Key Checksum
This is a hex string DWORD checksum of the creator's CDKey as generated by call #502 of Storm.dll (SStrHash).
8 Game Settings
This field is a bitwise-based hex string, containing specific game settings.
Each Setting section has a bitwise mask, which should be applied to read the setting. Bitwise fields may be combined, Specific fields can only have one option.

Options - 0xF00 Mask - Bitwise
0x200: One Peon
0x400: Fixed Order
Resources - 0x23000 Mask - Specific
0x00/Null: Default
0x1000: Low
0x2000: Medium
0x3000: High
0x20000: Random
Tileset - 0x1C000 Mask - Specific
0x00/Null: Default
0x4000: Forest
0x8000: Winter
0xC000: Wasteland
0x14000: Random
0x1C000: Orc Swamp
9 Creator/Map
Game's Creator [0x0D] Map Name [0x0D]

DRTL/DSHR:
Diablo Statstrings are instead [0x0D] delimited and use the following pattern:

0 Difficulty
0x00: Normal
0x01: Nightmare
0x02: Hell
1 Creator
The name of the game's creator
2 Creator Statstring
The statstring of the game's creator. See Chat Statstrings for the format of this field.

D2DV/D2XP:
Diablo II game statstrings are either Null or contain a single digit, usually a 1 or a 2. No information has yet been documented on it.

WAR3/W3XP:
Warcraft III games use a completely different format for SID_GETADVLISTEX, and do not contain a "Statstring" in the classic sense.

User Comments


For detailed questions and discussion, visit the Battle.net Research Forum

Jailout2000
Mar 27, 2008
03:30 PM

If the map name has a 0x0D or a 0x0A, then others will not be able to join.
They will receive a "Unable to join game." message from Battle.net and the information screen will be blank.
(Tested on Starcraft Broodwar)

Im going to play safe and assume that this is because Starcraft cannot parse the invalid statstring.

ansichart
Oct 03, 2008
02:29 PM

I have done some packet analyzing and I found out the first unknown value. It is the number of players allowed on the map. If the value is blank, then it is an 8 player map, values 12-17 are 2 player maps - 7 player maps.

And #7 does not seem to be the checksum of the map, since it seems to be the same value for me no matter what map I pick.

The other unknown value is set to 1 for a replay game, and set to blank if not.

Also, there is a parameter that lies before the map size... before the first comma and after the game password. The field contains a DWORD in it only when you host a saved game. I am not sure what this data means.

Jailout2000
Aug 23, 2009
11:51 AM

The statstring format for Starcraft needs to be updated... I made my bot send the SID_STARTADVEX3 following these specifications and it had the blank info come up.

Now, that is not saying I do not have a working statstring, because I do. I may find time later on to update this with my working statstring, and ansichart's findings.

RealityRipple
Apr 09, 2010
09:24 PM

Got this info regarding Starcraft Shareware games. Will be doing the rest of them soon as well:

Game Statstring: ,33,12,6,,2,1,2ac374b3,,RealityRipple(0x0D)Byways(0x0D)
Map Size: 33 3*32,3*32 96x96
Players: 12 2 players
Game Speed: 6 Fastest
Approval: - Not Implemented/No Approval/Unknown
Game Type: 2 Melee
Parameter: 1 See above Parameter
Checksum: 2ac374b3
Tileset: blank Badlands
Creator: RealityRipple
MapName: Byways

As for the checksum, http://forum.valhallalegends.com/index.php?topic=17702.msg182264#msg182264 will explain how it is created.

Jailout2000
Jun 30, 2010
06:07 AM

That looks about right.

Sixen
Sep 02, 2010
10:11 PM

Going to check back on these, it's from old research of mine.
DRTL:
Status: 0
Game Type: 7
Language ID: 67698688
Address Family: 0
Port: 2
Host IP: -1290215401
???: 0
???2: 0
Game Status: 0
Time Elapsed: 101580800
Game Name: asdf
Game Pass:
Game Statstring: 0
Host: UssRustolium16 LTRD 19 0 0 101 16 79 105 19312 0

MysT_DooM
Sep 30, 2010
08:36 PM

7: the Hex Dword is actually a CDKey Hash hashed by SStrHash()

Sixen
Sep 30, 2010
09:16 PM

Mhmm. Talking to Frost now.

Jailout2000
Oct 03, 2010
11:24 PM

Updated.

Heinermann
Feb 25, 2011
04:46 AM

Just want you to know that the hash is easily broken on older games and updating to an installation with a Digital Key is highly recommended.

BNLS Server Status
bnls.bnetdocs.org:
bnls.net:
bnls.mattkv.net:
phix.no-ip.org:
pyro.no-ip.biz:
bnls.war-lords.net:
bnls.anubisdev.net:
knight.mattkv.net:

= Online       = Offline

Battle.net Server Status

Battle.net v1

uswest.battle.net:
exodus.battle.net:
useast.battle.net:
asia.battle.net:
europe.battle.net:
ustest.battle.net:
beta.battle.net:
classicbeta.battle.net:
demo.war3.battle.net:

Battle.net v2

us.logon.battle.net:
eu.logon.battle.net:
kr.logon.battle.net:
cn.logon.battle.net:
us.patch.battle.net:
eu.patch.battle.net:
kr.patch.battle.net:
cn.patch.battle.net:
public-test.logon.battle.net:
public-test.patch.battle.net:

emNet

cali.emwar.com:
dallas.emwar.com:
kc.emwar.com:
ny.emwar.com:

PvPGN

server.eurobattle.net:
rubattle.net:
sc.theabyss.ru:
wc3.theabyss.ru:
bnetd.fishbattle.net:

RBNETD

server.bnetdocs.org:

= Online       = Offline



Copyrights

Site scripts and design copyrights reserved to Don Cullen.
Contents copyrighted to Blizzard and their parent corporation, Vivendi.
Main credits for contents goes to Arta. View the rest of credits.
Demented Minds copyrights reserved to Don Cullen 2003-present.
Copyright infringements will be prosecuted to the fullest extent allowable by law.
Please view our legal disclaimer and terms of service.