WoWan-SM Написал:Декомпилированный с помощью Ida Pro Hex-Rays Engine.dll клиента Lindvior 530 протокол.
Забираем https://yadi.sk/d/6HFyr9bVX6pzh
Все методы обработчики пакетов сгененировались нормально. Можно увидеть структуру пакета и его ID
Открыть спойлер
'картинка'
В общем, кто не понял, что к чему:
1-ое число - это опкод пакета (если значение меньше 208) или тип пакета 0xD0 (если значение равно 208) (как в серверных 0x00 и 0xFE);
2-ое число - это ID ветки пакетов (если пакетов с данным ID несколько) или ID пакета (если пакет с данным ID один);
3-е число - это ID пакета в ветке (если такова есть, см. 2-ое).
+ К этому, в дампе числа отображаются в десятичном формате (увы, декомпилятор не сохраняет былой вид Engine
).
Чтобы было понятней на счет этих чисел, объясню на примере того же пакета, который выдал нам ТС:
[src=java]
case 0xD0: // Это наше первое число (а именно - вид пакета - 0xD0). 208(10) = D0(16)
... // куча пакетов, остановимся на 0x93
case 0x93: // Это наше второе число (а именно - ID ветки пакетов - 0x93. 147(10) = 93(16)
int id6 = buf.getInt();
switch(id6)
{
case 0x02: // Это наше третье число (а именно - ID пакета в ветке - 0x02, как и 2 других, расположенных ниже - 0x03 и 0x04).
msg = new RequestDynamicQuestProgressInfo();
break;
case 0x03:
msg = new RequestDynamicQuestScoreBoard();
break;
case 0x04:
msg = new RequestDynamicQuestHTML();
break;
default:
client.onUnknownPacket();
break;
}
break;
[/src]