• Welcome to Valhalla Legends Archive.
 

Diablo II Statstring (Character Info)

Started by Barabajagal, September 11, 2008, 05:48 AM

Previous topic - Next topic

Barabajagal

I know there's a few topics about this already, but none of them are complete. I'll be posting my completed findings as they occur.

Sources:
My Correction List for my original listing of d2 statstrings.
iago's transcription of d2 info.
My own bnet emulation server (written from scratch in vb6 as usual). If people want, I'll upload the source, which is actually rather fun to play with if you like seeing 256 amazons all lined up in different colors and clothes. ;D

Quote from: Format
(DWORD) Product
(STRING) Realm
(BYTE) Comma [0x2C]
(STRING) Character Name
(BYTE) Comma [0x2C]
(BYTE) Unknown [0x84]
(BYTE Unknown [0x80]
(BYTE) Head¹
(BYTE) Torso¹
(BYTE) Legs¹
(BYTE) Right Arm¹
(BYTE) Left Arm¹
(BYTE) Right Weapon²
(BYTE) Left Weapon (Typically Bows)²
(BYTE) Left Shield²
(BYTE) Right Shoulder Pad¹
(BYTE) Left Shoulder Pad¹
(BYTE) Left Item (Heads)²
(BYTE) Character Type
(BYTE) Head³
(BYTE) Torso³
(BYTE) Legs³
(BYTE) Right Arm³
(BYTE) Left Arm³
(BYTE) Right Weapon³
(BYTE) Left Weapon³
(BYTE) Shield³
(BYTE) Right Shoulder Pad³
(BYTE) Left Shoulder Pad³
(BYTE) Unknown
(BYTE) Level
(BYTE) Flags (0x04 = HC, 0x08 = Dead, 0x20 = Expansion)
(BYTE) Acts completed
(BYTE Unknown [0x80 or 0xFF] (Seems to depend on if has played past the first quest or act or something? I forget what I thought it was...)
(BYTE Unknown [0x80 or 0xFF] (Same?)
(BYTE) Ladder (0xFF = No, Else= Yes [currently 0x05])
(BYTE) Unknown [0xFF] (If I had to guess, I'd say maybe some of these unknowns were plans for the legion system that was never implemented.)
(BYTE) Unknown [0xFF]
Strings are not NT. ¹ denotes Equipment, ² denotes Item, ³ denotes Color.
Quote from: Equipment
0: none
1: leather
2: chain
3: plate
4, 39: cap
5, 3A: skullcap
6, 3B: helm
7, 3C: full helm
8, 3D: great helm
9, 3E: crown
A, 3F: mask
40,53: bone helm
56: wolf head
57: hawk helm
58: antlers
59: fanged helm
5A: horned helm
5B: avenger guard
To determine the current armor, a combination of Torso, Legs, Arms, and Shoulders are used. I'm still working on this part. 86-91 are class specific, and will display a headless character if incorrectly matched.
Quote from: Item
4: hand axe
5: axe
6: double axe
7: war axe
8: gaint axe
9: wand
A: yew wand
B: grim wand
C: club
D: mace
E: warhammer
F: flail
10: maul
11: short sword
12: scimitar
13: falchion
14: crystal sword
15: broadsword
16: longsword
17: claymore
18: bastard sword
19: dagger
1A: blade
1B: short spear
1C: glaive
1D: pilum
1E: spear
1F: trident
20: spetum
21: pike
22: bardiche
23: scythe
24: halberd
25: short staff
26: long staff
27: battle staff
28: war staff
29: short bow
2A: long bow
2B, F3, F4, FB: claws
2C, F5, F6, FC: scissorskatar
2D, F7, F8, FD: katar
2E, F9, FA, FE: hatchet hands
2F: hunter's bow
30: composite bow
31, 7A, F0: crossbow
32, 7C, F2: heavy crossbow
33: eagleorb
34: sacredglobe
35: claspedorb
36: stag bow
37: reflex bow
4F: small shield
50: large shield
51: kite shield
52: tower shield
54: bone shield
55: spiked shield
5C: targe
5D: heraldic shield
5E: crown shield
5F: demon head
60: gargoyle head
61: zombie head
75, EB: short battle bow
76, EC: long battle bow
77, ED: short war bow
78, EE: long war bow
79, EF: light crossbow
7B, F1: heavy crossbow
7D, 7F, 81: Green Potion
7E, 80: Red Potion
86: ?
EF: light crossbow
F1: repeating crossbow
0x86 characters have something round in their hands. I do not know what it is. Head names aren't actual names of head items, they're just describing the size of the head pictured.
Quote from: Colors
1: Gray
2: Light Black
3: Dark Black
4: Black
5-7: Blue
8-A: Red
B-D: Green
E-11: Yellow (11 is the same as F)
12,13: Purple
14: Gold
15: White
21-35: same colors, but tinted
41-55: same but lighter tint
A1 starts over again. I'm not sure about the exact naming of the colors, I'm just describing how it looks in chat, not what items caused it.

Armor is determined using the values of the Torso, Legs, Arms, and Shoulders. The values for each armor class are in the order Torso, Legs, Right Arm, Left Arm, Right Shoulder, Left Shoulder.
Quote from: Armor Classes
1 1 1 1 1 1: none
1 1 1 1 2 2: quilted
2 1 1 1 2 2: leather
2 1 2 2 2 2: hard leather
1 2 2 1 2 2: studded leather
2 2 1 1 2 2: ring mail
2 2 2 2 2 2: scale mail
3 1 1 1 3 3: breast plate
2 2 2 2 3 3: chain mail
3 2 2 2 2 2: splint mail
2 2 3 1 3 3: light plate
3 3 2 2 3 3: field plate
3 3 3 3 2 2: plate mail
2 3 3 3 3 3: gothic plate
3 3 3 3 3 3: full plate mail
3 3 2 3 3 1: ancient armor

Ribose

Quote from: Andy on September 11, 2008, 05:48 AM(BYTE) Ladder (0xFF = Yes, 0x05 = No)
Backwards:
0xFF = nl, 0x05 = ladder
And I thought I saw written somewhere on the vast Internet that this is ladder season five, so this might even make sense, unless I was either dreaming, that was a few seasons ago, or that was on WarCraft III. :/
~Ribose

Barabajagal

#2
Oops! Thanks.

I also found out what one of the two unknowns in the middle are! The first's exclusively heads, and there's only three of them. How stupid....

I think I'll be relabeling the sections as well, as it seems there are one set of variables for "items" and one for "equipment", meaning the numbers for weapons/shields/hand held items don't overlap, and nor do the various parts of armor (if you think about how they're actually determined to be separate). Color is still, of course, a third category.