Valhalla Legends Forums Archive | Battle.net Bot Development | [0x19] Realm CharacterList 2 Statstring Research

AuthorMessageTime
Elneroth
I'm working on researching the entire d2 statstring for characters on realm packet 0x19 (S>C).
This is what I have so far.
I can't find out how to tell Hardcore from Non-Hardcore, or Non-Expired from Expired.
If you have any information I don't, please fill me in. TY

[quote]#1 Expansion Ladder (Lvl86 Sorc)
#2 Expansion Ladder (Lvl1 Barb)
#3 Expansion (Lvl1 Sorc)
#4 Expired Expansion (Lvl1 Sorc)
#5 Expired Expansion Ladder (Lvl1 Sorc)
#6 Hardcore Ladder (Lv1 Necromancer)
#7  (Lv1 Amazon)

[##] = Character Type
0x01 = Amazon, 0x02 = Sorceress, 0x03 = Necromancer, 0x04 = Paladin, 0x05 = Barbarian, 0x06 = Assasin

{##} = Character Level

<##> = Client?
0xFF = Expansion, 0x80 = Non-Expansion

[[##]] = Ladder?
0xFF = Non-Ladder, 0x02 = Ladder

------- #1
FF FF FF FF FF FF FF FF FF FF FF [02] FF FF FF FF FF FF FF FF FF FF FF {56} E8 9E FF <FF> [[02]] FF FF 00 Statstring

-------#2
FF FF FF FF FF FF FF FF FF FF FF [05] FF FF FF FF FF FF FF FF FF FF FF {01} E0 80 FF <FF> [[02]] FF FF 00 Statstring

-------#3
FF FF FF FF FF FF FF FF FF FF FF [02] FF FF FF FF FF FF FF FF FF FF FF {01} A0 80 FF <FF> [[FF]] FF FF 00 Statstring

-------#4
FF FF FF FF FF 25 FF FF FF FF FF [02] FF FF FF FF FF FF FF FF FF FF FF {01} A0 80 FF <FF> [[FF]] FF FF 00 Statstring
Why is there a 25 there?!^

-------#5
FF FF FF FF FF FF FF FF FF FF FF [02] FF FF FF FF FF FF FF FF FF FF FF {01} E0 80 FF <FF> [[02]] FF FF 00  Statstring

-------#6
FF FF FF FF FF FF FF FF FF FF FF [03] FF FF FF FF FF FF FF FF FF FF FF {01} C5 80 80 <80> [[02]] FF FF 00 Statstring

-------#7
FF FF FF FF FF FF FF FF FF FF FF [01] FF FF FF FF FF FF FF FF FF FF FF {01} 81 80 80 <80> [[FF]] FF FF 00 Statstring
[/quote]

I believe the two at the end  have {80} in the 27'th spot because they're going to 'expire in 10 days'. They're the only two characters with that.. or maybe the client is the 27'th spot, and the expiration byte is the 28'th spot.
July 13, 2005, 7:39 AM
Archangel
[code]
84 80 FF FF FF FF FF 1B FF 4F FF FF FF 01 FF FF FF FF FF FF FF FF FF FF FF 01 A0 80 FF FF FF FF FF 00
             |--------> Class (14)               |--------> Level (26)
     |--------> Flags (27)
|--------> Ladder Boolean (31)

84 80 FF FF FF FF FF 1B FF 4F FF FF FF 01 FF FF FF FF FF FF FF FF FF FF FF 01 A0 80 FF FF FF FF FF 00
|--------> Act (28)
[/code]

Position 14: Class
Position 26: Level
Position 27: Flags [Check the existance of each flag]
Position 28: Act
Position 31: Ladder Boolean [FF = Non-Ladder, 02 = Ladder]

Character Class:
0x01: Amazon
0x02: Sorceress
0x03: Necromancer
0x04: Paladin
0x05: Barbarian
0x06: Druid
0x07: Assassin

Character Flags:
Classic = 0x00
Classic Hardcore = 0x04
Classic Ladder = 0x40
Classic Hardcore Ladder = 0x44
Expansion = 0x20
Expansion Hardcore = 0x24
Expansion Ladder = 0x60
Expansion Hardcore Ladder = 0x64

[quote]
In the "(Byte) Acts" it shows the completed Acts, Expansion got 5 acts per level and Non-Expansion got 4 acts, so:

For Expansion:

If Byte <= 5 Then Level = "Normal"
If Byte >= 6 and Byte <= 10 Then Level = "Nightmare"
If Byte >= 11 and Byte <= 15 Then Level = "Hell"

Non-Expansion:

If Byte <= 4 Then Level = "Normal"
If Byte >= 5 and Byte <= 8 Then Level = "Nightmare"
If Byte >= 9 and Byte <= 12 Then Level = "Hell"
[/quote]

Almost all the other bytes are for equipment.

[Edit: Elneroth Correction]
July 13, 2005, 2:47 PM
LoRd
https://davnit.net/bnet/vL/phpbbs/index.php?topic=2937.0
https://davnit.net/bnet/vL/phpbbs/index.php?topic=1965.0
July 13, 2005, 3:32 PM
Elneroth
Archangel, character type bytes start at 0x01 for character list statstrings.
Example: Amazon = 0x01, Sorceress = 0x02, etc.

Ingame, I believe they start at 0x00 like you said.

Also, I went over the information you provided. Nothing matches up.

I've already looked through those posts, they're channel event statstrings. As far as I can see, they have different values than character list statstrings.
July 13, 2005, 4:23 PM
LoRd
[quote]I've already looked through those posts, they're channel event statstrings. As far as I can see, they have different values than character list statstrings.[/quote]

Except for the fact that the realm stat string is missing the first two bytes, the two are identical.
July 13, 2005, 6:35 PM
Archangel
[quote author=Elneroth link=topic=12197.msg120512#msg120512 date=1121271811]
Archangel, character type bytes start at 0x01 for character list statstrings.
Example: Amazon = 0x01, Sorceress = 0x02, etc.

Ingame, I believe they start at 0x00 like you said.

Also, I went over the information you provided. Nothing matches up.

I've already looked through those posts, they're channel event statstrings. As far as I can see, they have different values than character list statstrings.
[/quote]

Well, because i am adding 2 more bytes at the beggining: 84 80
If i remember the Statstring is 34 Bytes long.
July 13, 2005, 7:17 PM

Search