Closed divinity76 closed 9 years ago
I think the 7.6 protocol is: 78 (throw packet) - 1 byte (Throw From $myx$ $myy$ $myz$) - 5 bytes (Item ID to throw) 2 bytes (stack position in BP) 1 byte (Throw TO X/Y/Z) 5 bytes (How many to throw?) 1 byte
Meaning the packet should be 15 bytes (which is what the client send), but BlackD Proxy send 14 bytes here. (which the server don't understand) - i dont know where BlackD is making a mistake, but i will try to look into it later
Sorting this manually, Tibia client: 0F 00 78 FF FF 40 00 00 E3 0B 00 FF FF 40 00 01 01 BlackD Proxy (invalid): 0E 00 78 FF FF 40 00 00 E3 0B ?? FF FF 40 00 01 01 (the ?? is the missing byte); Turns out that byte is res1.slotID .. i have made a fix
(note, i tested this code several times, with items in several different positions in backpack, the code never failed. )
It refuses to stack Platinum Coins. This is my opened backpack #1
When i do StackItems SayMessage stacked
it will hang indefinitely on StackItems, constantly sending the packet "0E 00 78 FF FF 40 00 00 DB 0B FF FF 40 00 01 14 " (judging by the last byte 0x14, meaning 20 in decimal, its trying to move the 20x platinum coin, as expected. but the packet is malformed somehow, because the server does not understand it.) When i move the last platinum in to the first, manually, the bytes are: "0F 00 78 FF FF 40 00 01 DB 0B 01 FF FF 40 00 00 14" As you can see, though quite similar, the length of the packet does not match, meaning a byte is missing! (I guess the protocol changed in a newer version, with removing some un-needed information, and you removed it for every version? maybe? :p )