Author | Message | Time |
---|---|---|
Barabajagal | This is an incomplete list of problems I've found on BNetDocs. It'll probably be updated as time goes on. Battle.net's file transfer protocol (Version 1) http://bnetdocs.valhallalegends.com/content.php?Section=d&id=9 "After sending this message, Battle.net terminates the connection." Battle.net does not terminate the connection, the client does. The server only terminates the connection if a malformed packet is sent. - User Statstrings http://bnetdocs.valhallalegends.com/content.php?Section=d&id=16 Note added Feb 10, 2007: It would make more sense to number the fields starting at 0 rather than 1, since most people will probably split the statstrings up into arrays, and technically, Computer Science denotes that 0 is the first number. DRTL/DSHR (Diablo) 9th field = Spawned (1 for DSHR, 0 for DRTL). W2BN (Warcraft II) 7th field = Iron Man Rating. 8th field = Iron Man Rank. D2DV/D2XP (Diablo II) Statstrings Client (VD2D/PX2D) Realm Comma (",") Character Name Comma (",") Char Data (All Byte values): 01 Head Armor 02 Chest Armor 03 Leg Armor 04 Right Arm Armor 05 Left Arm Armor 06 Right Hand Weapon 07 Left Hand Weapon 08 Left Hand Shield 09 Right Shoulder Pad 10 Left Shoulder Pad 11 Blank 12 Class 13 Head Color 14 Chest Color 15 Leg Color 16 Right Arm Color 17 Left Arm Color 18 Right Hand Weapon Color 19 Left Hand Weapon Color 20 Left Hand Shield Color 21 Right Shoulder Color 22 Left Shoulder Color 23 Blank 24 Level 25 Character Flags 0x04 Hardcore 0x08 Dead 0x20 Expansion 26 Act Flags Normal: 0x80 Act 1 Normal 0x82 Act 2 Normal 0x84 Act 3 Normal 0x86 Act 4 Normal 0x88 Act 1 Nightmare 0x8A Act 2 Nightmare 0x8C Act 3 Nightmare 0x8E Act 4 Nightmare 0x90 Act 1 Hell 0x92 Act 2 Hell 0x94 Act 3 Hell 0x96 Act 4 Hell 0x98 All Acts Expansion: 0x80 Act 1 Normal 0x82 Act 2 Normal 0x84 Act 3 Normal 0x86 Act 4/5 Normal (Odd thing about this is that Act 4 and 5 have the same flag, and the next flag is skipped). 0x8A Act 1 Nightmare 0x8C Act 2 Nightmare 0x8E Act 3 Nightmare 0x90 Act 4/5 Nightmare 0x94 Act 1 Hell 0x96 Act 2 Hell 0x98 Act 3 Hell 0x9A Act 4/5 Hell 0x9E All Acts 27 Unknown 28 Unknown 29 Ladder character (Boolean) 30 Unknown 31 Unknown - MCP_CHARLIST/MCP_CHARLIST2 http://bnetdocs.valhallalegends.com/content.php?Section=m&Code=102 http://bnetdocs.valhallalegends.com/content.php?Section=m&Code=408 There is no (Flags) field. Added Feb 6, 2007: Logon Sequences http://bnetdocs.valhallalegends.com/sequence.php A few of these are incorrect, such as SSHR's: [code] Send > SID_CLIENTID Send > SID_LOCALEINFO Send > SID_SYSTEMINFO Send > SID_STARTVERSIONING Recv < SID_CLIENTID Recv < SID_LOGONCHALLENGE Recv < SID_PING Recv < SID_STARTVERSIONING Send > SID_PING Send > SID_REPORTVERSION Recv < SID_REPORTVERSION Send > SID_GETICONDATA Recv < SID_GETICONDATA Send > SID_UDPPINGRESPONSE Send > SID_GETFILETIME Send > SID_READUSERDATA Recv < SID_GETFILETIME Recv < SID_READUSERDATA Send > SID_LOGONRESPONSE Recv < SID_LOGONRESPONSE Send > SID_ENTERCHAT [/code] | February 4, 2007, 12:44 AM |
UserLoser | There's no flags field for the MCP_CHARLIST*? Then how does the client know what type of character it is? Last time I checked, there were flags and always has been. | February 4, 2007, 5:45 PM |
Barabajagal | The character type is in the statstring. Look at an example statstring: [code]PX2DUSWest,RipplesBotty,„€ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ倀€ÿÿ[/code] Now, when you use the "Flags" Word field in MCP_CHARLIST, you get two bytes missing off of the char statstring. Those two bytes are your "Flags" Word. See what the first two bytes of the same character's statstring are within a channel and what the Word is for your "Flags" (remember to reverse the values because it switches endian cause it's a Word). | February 4, 2007, 9:42 PM |
Barabajagal | Just noticed... Starcraft Shareware doesn't send Channel List or Friend List on connection... | February 11, 2007, 11:29 PM |