скрипт выкладовать не буду, ибо тут всё общедоступно, да и скрипт у меня не под пакетхак ...
первоначально сделать надо скрипт эмулятор сервера, тогда становится всё проще и более анализируемо ...
пишем скриптик для 2106 (ЛС), снимаем лог коннекта с ЛС, потом забиваем чтоб все пакеты от сервераи клиента просто блокировались, а заместо них посылались те пакеты что мы сняли, это как раз и будет эмулятором ЛС.
пишем скриптик на 7777(ГС), снимаем лог коннекта с ГС, забиваем чтоб все пакеты от сервера и клиента блокировались, а заместо них посылались те пакеты что мы сняли ... после 1 пакета от клиента "ProtocolVersion", высылаем клиенту обратно "KeyInit", потом когда придёт "RequestAuthLogin", высылаем "CharSelectInfo", дальше можно ничего не всылать вообще, тогда при нажатии кнопки выбра персонажа у нас будет приходить пакет "CharSelected", при чём сколько будем нажимать, столько пакетов и будет приходить, при этом ключики будут менятся, ибо пакет то новый
а пакетик то 1 "CharSelected" соответственн мы можем написать скриптик что получать ключик .....
Дальше начинаем игратся с "KeyInit", а именно с теми 4 байтами что входят в наш первоначальный ключ, собсвтенно если мы поставим там 00 00 00 00 то получим ту 1 константу, 82 93 1А 41 ..... дальше ещё не много поигравшись с этим ключом, мы понимаем что или эта константа задействована во всех формарованиях ключа или ключ имеет наследственнсть от предыдущего (так как в обычном алгоритме) ...
Не буду описавать процесс как я выяснил что ключ в "RequestAuthLogin" тоже влияет на формирования ключей, потому как уже и не помню
но это так, можете опять же поигратся с ним, меняется он в пакете ЛС, "LoginOk"
000000 23 00 03 CB E2 04 00
3E 69 02 3A 00 00 00 00 00 #..Ëâ..>i.:.....
000010 00 00 00 EA 03 00 00 00 00 00 00 00 00 00 00 02 ...ê............
000020 00 00 00 ...
когда измените его тут то он будет менятся и в "RequestAuthLogin"
000000 2D 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00 -...................
000010 00 00 00 00 00 00 00 00 00 CB E2 04 00 7B 51 00 ............Ëâ..{Q.
000020 00 CB E2 04 00
3E 69 02 3A 01 00 00 00 .Ëâ..>i.:....
а паралельно заметите что и ключик для каждого 2 пакета от клиента начинаем менятся именно на
3E 69 02 3A 3E 69 02 3A в данном случае ...
пока всё, щас с мыслями соберусь и может ещё накатаю
кстати может есть у кого эмулятор сервера, чтоб тупо посылал паеты что я ему укажу ?