

Chat statstrings are space-delimited C strings that communicate attributes of a user in a chat channel. Most notably, game clients use chat statstrings to determine which icons to display for each user. Additionally, game clients will refuse to attempt to create ladder games if not enough normal game wins have been earned.
Chat statstrings are found in S > C [0x0A] SID_ENTERCHAT and in the TEXT
field of S > C [0x0F] SID_CHATEVENT for the following chat event types:
Event ID | Name |
---|---|
0x01 |
EID_USERSHOW |
0x02 |
EID_USERJOIN |
0x03 |
EID_USERLEAVE |
0x09 |
EID_USERUPDATE |
Format
The chat statstring format for each product differs, however the first field is always the user's product in reverse (e.g. STAR
becomes RATS
).
Diablo I
Contain 9 fields that are delimited with spaces.
Note that this product allows the client to specify whatever statstring it calculates, so bots may not follow this format!
- Character Level
- Character Class
- '0': Warrior
- '1': Rogue
- '2': Sorcerer
- Number of dots
- '0': Has not killed Diablo
- '1': Killed Diablo on Normal difficulty
- '2': Killed Diablo on Nightmare difficulty
- '3': Killed Diablo on Hell difficulty
- Character's Strength
- Character's Magic
- Character's Dexterity
- Character's Vitality
- Character's Gold
- Spawned
- '0': Not spawned
- '1': Spawned
Diablo II, Diablo II: Lord of Destruction
These products do not have the same format.
If the player is on Open, the format is: ProductID
Otherwise, the format is: ProductID + RealmName + ',' + CharacterName + ',' + Bytes
- ProductID
- 'PX2D'
- 'VD2D'
- Realm name
- Character name
- 33-byte struct (Each byte is between 0x01 and 0xFF and is explained below. 0xFF generally means the field is empty or not available.)
- Unknown: 0x84 (Larger values have been observed)
- Unknown: 0x80
- Equipment: Head
- Equipment: Torso
- Equipment: Legs
- Equipment: Right Arm
- Equipment: Left Arm
- Equipment: Right Weapon
- Equipment: Left Weapon
- Equipment: Left Shield
- Equipment: Right Shoulder Pad
- Equipment: Left Shoulder Pad
- Left Item (Heads)
- Character Type
- Amazon
- Sorceress
- Necromancer
- Paladin
- Barbarian
- Druid
- Assassin
- Color: Head
- Color: Torso
- Color: Legs
- Color: Right Arm
- Color: Left Arm
- Color: Right Weapon
- Color: Left Weapon
- Color: Shield
- Color: Right Shoulder Pad
- Color: Left Shoulder Pad
- Color: Left Item (Heads)
- Level (0x01 to 0x63)
- Flags
- 0x04: Hardcore
- 0x08: Dead
- 0x20 Expansion
- Current Act
- Original:
- 0x80: Normal Act I
- 0x82: Normal Act II
- 0x84: Normal Act II
- 0x86: Normal Act IV
- 0x88: Nightmare Act I
- 0x8A: Nightmare Act II
- 0x8C: Nightmare Act III
- 0x8E: Nightmare Act IV
- 0x90: Hell Act I
- 0x92: Hell Act II
- 0x94: Hell Act III
- 0x96: Hell Act IV
- 0x98: All Acts Completed
- Expansion
- 0x80: Normal Act I
- 0x82: Normal Act II
- 0x84: Normal Act III
- 0x86: Normal Act IV/V
- 0x8A: Nightmare Act I
- 0x8C: Nightmare Act II
- 0x8E: Nightmare Act III
- 0x90: Nightmare Act IV/V
- 0x94: Hell Act I
- 0x96: Hell Act II
- 0x98: Hell Act III
- 0x9A: Hell Act IV/V
- 0x9E: All Acts Completed
- Original:
- Unknown: 0x80 or 0xFF
- Unknown: 0x80 or 0xFF
- Ladder
- 0xFF: Non-Ladder
- Other: Ladder
- Seems to be season number
- Unknown: 0xFF
- Unknown: 0xFF
StarCraft, StarCraft Japanese, StarCraft: Brood War, and WarCraft II
Contain 9 fields that are delimited with spaces.
- Ladder Rating
- Ladder Rank
- Wins
- The amount of wins in normal games
- Spawned
- '0': Not spawned
- '1': Spawned
- League ID
- High Ladder Rating
- The highest rating that the player has ever achieved
- IronMan Ladder Rating
- Only applicable to:
WarCraft II
- Only applicable to:
- IronMan Ladder Rank
- Only applicable to:
WarCraft II
- Only applicable to:
- Icon Code
- Only applicable to:
StarCraft, StarCraft Japanese, StarCraft: Brood War
- This value should be searched for in the
Icon Code
array of each icon inicons_STAR.bni
. If a match is found, the client should use this icon when displaying the user. See Icons.bni.
- Only applicable to:
WarCraft III, WarCraft III: The Frozen Throne
Contain 2 fields and 1 optional field, all fields are delimited with spaces.
There is a possibility that there can be 0 fields, meaning that the user was not assigned their stats before joining the channel (often appears with bots who join a channel automatically and not waiting until the user clicks 'Enter Chat').
- Icon Code
- Format: Level + Tier + "3W" (Special icons may not follow this format)
- Level: The "win level" of the icon 1 through 5 (6 on TFT). 1 is always peon.
- Tier: The race tier of the icon
- R: Random
- H: Human
- U: Undead
- N: Night Elf
- O: Orc
- D: Tournament (TFT)
- This value should be searched for in the
Icon Code
array of each icon inicons-WAR3.bni
. If a match is found, the client should use this icon when displaying the user. See Icons.bni.
- Format: Level + Tier + "3W" (Special icons may not follow this format)
- Level
- Level of the player. (Highest out of all possible game types that the user has played.) '0' means no ladder games on record.
- Clan tag (OPTIONAL)
- Reversed clan tag, appears only if the player is in a clan.