PDA

Просмотр полной версии : l2walker корявость пакетов GS


CodBoy
29.10.2011, 13:48
Пишу программу исправления пакетов сервера, чтото типа Вашего коректора. Верифицирую валкер методом замены значений по оффсету. Дальше прохожу логин гейм сервер своей прогой успешно. Потом собственно начинаются проблемы. Мои перекодированые пакеты те что приходят от сервера волкер воспринимает отлично все работает, но при этом сам шлет на сервер чтото непонятное. Думал проблема с моим ХOR-ом но посмотрел под WPF он дешифрует пакеты точно также. Вот часть лога работы, что бот шлет

AUthLogin:
33001865007800700065007200740030003800390000003E1A 0600996E00003E1A0600CB4C047A04000000B00970F3180000 00

этот пакет правильный но тип должен быть не 0x18 a 0x2B

CharacterSelected:
150012000000000000000000000000000000000000

пакет полностью правильный

RequestManorList:
0500191100

не правильно должно быть
0500D00100

RequestKeyMapping:
0500192E00

не правильно должно быть
0500D02100

дальше все ботовские пакеты неправильные...

Вот собственно в чем вопрос как решить эту проблему, возможно я чтото неправильно сделал, но бот мои пакеты перекодированые моим ксором отлично понимает. Или бот так же как и логин сервер коряво шифрует непонятно чем. Прошу вашей помощи.

Kilatif
29.10.2011, 13:51
CodBoy, Совпадает ли версия корректора и версия хроник сервера? Ведь как ты сказал, что пишешь что-то типа корректора, значит должен корректировать пакеты, которые отправляет бот на сервер

CodBoy
29.10.2011, 14:02
Собственно пакеты все должны быть грасии.если вручную заменить несколько пакетов бота для входа в игру то становится видно что бот показывает все отправленные из серва пакеты и перекодированые мною userInfo, charInfo и тд. Но сам как я уже сказал шлет чето непонятное... Значит бот как я думаю должен тоже отправлять пакеты грасии или я не прав?

Kilatif
29.10.2011, 17:45
CodBoy, Ну если у тебя хроники грации, то и бот должен отсылать пакеты естественно грации. А если ты используешь бота от Интерлюда, то он естественно отправляет пакеты интерлюда и поэтому ты должен перехватывать пакеты которые посылает бот, изменять их на пакеты грации и потом посылать их на сервер

CodBoy
29.10.2011, 18:22
Давайте все действия по порядку. Бот версии 10.9.3
1. Патчим бота.
2. Проходим авторизацию логин сервера. Пакеты бота декодируем с помощью блуфиш и ксора.
3. После конекта к гейм серверу отправляем иниткей боту.
4. Далее он уже шифрует все пакеты ксором на этом ключе.
один ключ для принятых пакетов один для отосланых.
И то что мне приходят пакеты что после дешифрации непонятные есть не что иное как ошибка в реализации ксора? Но тогда возникает вопрос почему WPF декодирует их также как моя программа. А они собственно не являются грацией. Может вы чемто таким занимались и есть исходник настроенный на какой нибудь сервер. Может проблема в самом боте?

Kilatif
29.10.2011, 23:29
CodBoy, я говорю в том что проблема не в ксоре, а в том что просто тупо не совпадают пакеты по строению. Т.е. на бота приходят пакеты Грации, а бот их воспринимает как пакеты Интерлюда и наоборот, бот посылает пакеты Интерлюда, а сервер их воспринимает как пакеты Грации

guplen
30.10.2011, 01:05
Может доп шифрация стоит на сервере?

CodBoy
31.10.2011, 00:45
Многоуважаемый Kilatif с чего вы взяли что пакеты от бота интерлюд?) Тип пакетов валкера вообще к никаким хроникам нельзя отнести. И править их тоже не надо они просто не правильно дешефруются на сколько я понял.

guplen проблем с сервером как раз никаких. Проблема с пакетами самого волкера.

Добавлено через 22 минуты
Ну так что никто не декодировал пакеты GS валкера? Дайте код если можно... буду очень благодарен.

Добавлено через 30 минут
Или бот тупит и все его пакеты нужно вручную фиксить?

Добавлено через 22 часа 37 минут
Частично решена прооблема заменой типов пакета что отправляет бот на грасию.

case 0x8b://139 Say2
buffpacket[0] = 0x49;
break;
case 0x2d://45 MoveBackwardToLocation
buffpacket[0] = 0x0f;
break;
case 0x4F: //Action
buffpacket[0] = 0x1f;
break;