PDA

Просмотр полной версии : Звериная прыть


HuntsMan
20.04.2011, 22:57
Разгребаю этот спелл. Уверен чуть менее чем полностью, что нужное действие (встать на 4 лапы) реализуется изменением апдейт поля в UPDATE_OBJECT. Проглядел снифы, пакет нашел, но почему-то мой парсер не хочет его парсить :( Есть предположение что в этом пакете что-то все-таки есть, а мой апдейт парсер построен на хаках, изоленте и добром слове, поэтому если кому не трудно гляньте пожалуйста дамп пакета. Буду весьма признателен :)

Packet SMSG_UPDATE_OBJECT (14208), len 78
|---------------------------------------------------------------------------|
| OFFSET | 0 1 2 3 4 5 6 7 8 9 A B C D E F |0123456789ABCDEF|
|----------------------------------------------------------|----------------|
|00000000| 00 00 01 00 00 00 00 CB 41 84 03 80 07 0F 00 00 |........A.......|
|00000010| 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
|00000020| 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
|00000030| 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
|00000040| 00 00 00 00 00 00 00 00 00 00 57 00 00 00 -- -- |..........W.....|
|----------------------------------------------------------|----------------|

Lordronn
20.04.2011, 23:14
На дамп глянь. Там больше чем 3\4 - это нули. Он пустой пришел

TOM_RUS
20.04.2011, 23:53
Ну там судя по всему только 1 поле меняется, поэтому и нулей много.


|00000000| 00 00 01 00 00 00 00 CB 41 84 03 80 07 0F 00 00 |........A.......|
|00000010| 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
|00000020| 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
|00000030| 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
|00000040| 00 00 00 00 00 00 00 00 00 00 57 00 00 00 -- -- |..........W.....|

00 00 mapid
01 00 00 00 count
00 update type
CB 41 84 03 80 07 packed guid
0F blocksCount

00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 bitmask

57 00 00 00 value


если я не ошибся, то тут UNIT_FIELD_POWER2 = 87 выставляется..., ну или я биты не с той стороны считал :)

HuntsMan
20.04.2011, 23:55
Ну я про это тоже :) В принципе я хитростью выловил значение из поля которое менялось :)