Показать сообщение отдельно
Старый 13.06.2012, 18:12   #1
Местный
 
Аватар для Elecktron
 
Регистрация: 27.10.2011
Адрес: Харьков
Сообщений: 106
Сказал Спасибо: 24
Имеет 11 спасибок в 7 сообщенях
Elecktron пока неопределено
По умолчанию фиксы IG Walker

Надумал я пофиксить валкер чтобы можно было спокойно ботить и не париться что он "палевный".

Насколько мне известно проблемные места это:
1 пакет движения
2 отправляет пакет GMlist
3 не отправляет пекет ValidatePosition
4 не корректно обрабатывает некоторые диалоги с нпс
5 иногда некорректно формирует Action

В наличии:
1 La2offline 4 Gracia Final для "безнаказанных" тестов бота
2 "чистый" клиент с прикрученным ботом настроенный под данный сервер
3 OllyDbg которой не "сопротивляется" клиент
4 написанная на C++ Builder 6 с использованием ассемблерных вставок длл с перехваченными send и recv
5 l2phx.3.5.33.174 для просмотра трафика

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

Этот код вызывается валкером после формирования паета на отправку, здесь происходит вызов send в Engine.dll клиента:
Код:
01DCEB40                 A1 D88EEE01           MOV EAX, DWORD PTR DS:[1EE8ED8]
01DCEB45                 8B00                  MOV EAX, DWORD PTR DS:[EAX]
01DCEB47                 8B40 48               MOV EAX, DWORD PTR DS:[EAX+48]
01DCEB4A                 894424 04             MOV DWORD PTR SS:[ESP+4], EAX
01DCEB4E               - FF25 D48EEE01         JMP DWORD PTR DS:[1EE8ED4]           ; Engine.00765470


P.S. правку трафика пакетхаком и подобными программами не предлагать по совокупности причин.
__________________
C++Builder 6, Delphi 7, RAD Studio XE2, MS VC++...

Последний раз редактировалось Elecktron, 16.06.2012 в 20:45.
Elecktron вне форума   Ответить с цитированием