Апдейт 21.03.07 rRO

Официальный сервер Ragnarok On-Line в России - https://ru.4game.com/ro/install/

Модератор: 4epT

Правила форума
ВНИМАНИЕ: реклама сторонних ботов запрещена! Всякие плюшки - можно :)
Asacura
Грамотный
Сообщения: 403
Зарегистрирован: Сб фев 03, 2007 11:07 pm
Откуда: Эстония;)
Контактная информация:

Сообщение Asacura »

дайте вариантик доброму челвоеку)
Изображение
Нет добра и зла,есть разные мнения, разные противостоящие стороны. :)
Аватара пользователя
kLabMouse
Профессионал
Сообщения: 4776
Зарегистрирован: Вс ноя 05, 2006 4:32 pm

Сообщение kLabMouse »

Обясню технологию как оно делается.
1) Нужен последний клиент подконектить к посейдону, повесить на него ВПЕ.
2) Нужен последний пакет-екстрактор от ВЦЛ. Здесь есть одно НО: пакет-екстрактор тот норм пашет только в лине, так что кто здеалет буду благодарен.
3) Нужен старый екзешник, и новый.
4) Берём старую екзешку и генерируем список пакетов без сортирования
5) Берём новую екзеху и генерируем список пакетов без сортирования
6) Сравниваем текстовые файлы результатов (4) и (5).
7) Сохраним результат (6) в формате: перфикс_старый длинна_старая -> префикс_новый длинна_новая
8 ) Смотрим в src\Network\Send\ServerType13.pm, выделяем какие префиксы (старые) нам извесны (столбец 1 результата (7)).
9) добавляем данные в результат (7) таким образом: перфикс_старый длинна_старая -> префикс_новый длинна_новая : название_функции
10) Теперь мы знаем как они поменяли пакеты, точнее какие, и с чего они будут начинатся.
11) Идём выпьем пива. Треть дела зделано.
12) Подключаем новую екзеху к посейдону (как, ищите в софте).
13) Пока незалогинились, вешаем ВПЕ
14) логинимся: юзер poseidon пароль poseidon
15) Теперь методом проб и ошибок пытаемся словить определённые пакеты, префиксы которых мы получили в результате (9), и выделяем полезную нагрузку в них.
16) Опционально: можем забацать перловый код для каждого пакетика. Или кто на перле не умеет, просто выставляем здесь в формате: XX XX YY YY XX XX итд.
zasada
Начинающий
Сообщения: 31
Зарегистрирован: Чт ноя 30, 2006 9:57 am

Сообщение zasada »

ээээээ
Ну буду пытаться)
Хотя 11 пункт я уже выполнил,так что осталось совсем немного доделать)
- База по мерчам Раггейма, сервера Хаос и Локи. Обновление каждые ~15 минут.
Lims
Нууууп
Сообщения: 723
Зарегистрирован: Чт ноя 09, 2006 7:55 pm

Сообщение Lims »

Ну вот попробую написать что понял из общения с Джерри)
было это дело 7марта.
Первый пакет который начинал не правильно послыть бот был "логин к мап серверу"
Выглядел он тогда так
11 29 Send (11- номер в впе. 29-размер пакета)
0000 8C 00 00 00 00 C6 67 05 00 94 0C 0A 00 00 7B 4A ......g.......{J
0010 00 00 00 00 00 00 B3 4A AC 04 01 00 00
А вот от клиента пакет.
11 37 Send
0000 F3 00 61 62 00 94 0C 0A 00 C6 67 05 00 00 FC 66 ..ab......g....f
0010 00 00 66 64 62 34 30 65 66 66 00 C2 3B E0 00 01 ..fdb40eff..;...
0020 63 31 61 33 00 c1a3.
Править нам нужно пакет который найдем поиском на запрос 8C(это вроде как его заголовок?) в ServerType13
смотрим изменения и видим что изменился "заголовок пакета".
$msg = pack("C*", 0x8C, 0) . pack("x3") . $accountID . $charID . pack("x1") . $sessionID . pack("x4") . pack("V", getTickCount()) . pack("C*", $sex) . pack("x2");
Правим заголовок $msg = pack("C*", 0xF3, 0)
как сказал джерри те байты которые мы не знаем - это пустышки. прописываются они как pack("x3")(вместо 3 нужное количество байт) например 61 62 00 это пустышка
C6 67 05 00 это $accountID
94 0C 0A 00 это $charID
соответственно будет $msg = pack("C*", 0x8C, 0) . pack("x3") . $charID . $accountID . и тд
в итоге после всех исправлений вышел вот такой пакет
$msg = pack("C*", 0xF3, 0) . pack("x3") . $charID . $accountID . pack("x1") . $sessionID . pack("x9") . pack("V", getTickCount()) . pack("C*", $sex) . pack("x5");
с остальными также.
(дальше мои познания в этом нелегком деле заканчиваются)
darzanebor
Грамотный
Сообщения: 221
Зарегистрирован: Чт дек 07, 2006 8:43 pm
Откуда: Бирмингем, ул. Бр.Грим....

Сообщение darzanebor »

Дайте старый ехешник, ссылку на ВПЕ и Пакет экстрактор...
Изображение
Изображение
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8205
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

Да без экстрактора делайте. Экстрактор это "для ленивых". ))
Я им например вообще никогда не пользовался.
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
japplegame
Профессионал
Сообщения: 272
Зарегистрирован: Вс ноя 05, 2006 2:03 pm

Сообщение japplegame »

А я и посейдоном никогда не пользовался. Я вообще ничем не пользовался. Врубаю дебаг-режим, XKore 1 и читаю обновленные пакеты.
zasada
Начинающий
Сообщения: 31
Зарегистрирован: Чт ноя 30, 2006 9:57 am

Сообщение zasada »

Мышуль.Огромная к тебе просьба!
В своей технологии напиши программы которые требуются.
Например что за прога посейдон?
А также как сгенерировать пакеты из екзешника?Что для этого требуется?
- База по мерчам Раггейма, сервера Хаос и Локи. Обновление каждые ~15 минут.
Lims
Нууууп
Сообщения: 723
Зарегистрирован: Чт ноя 09, 2006 7:55 pm

Сообщение Lims »

вот чет нахимичил. но не знаю....
$msg = pack("C*", 0x93, 01) . pack("x3") . $accountID . $charID . pack("x4") . $sessionID .pack("x6") . pack("C*", $sex) . pack("V", getTickCount()) . pack("x1");
ответ приходет как и клиенту.
приходет ответ в виде $accountID
а вот потом клиенту еще идет ответ с перечислением возможных скиллов. а боту не идет((
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8205
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

japplegame писал(а):А я и посейдоном никогда не пользовался. Я вообще ничем не пользовался. Врубаю дебаг-режим, XKore 1 и читаю обновленные пакеты.
Посейдон хорош тем, что ты можешь начинать работы еще до того, как оф-сервер будет включен.
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
Lims
Нууууп
Сообщения: 723
Зарегистрирован: Чт ноя 09, 2006 7:55 pm

Сообщение Lims »

АП!
Пирожок! Пожалуйста подскажи стоит ли насиловать дальше этот пакет или я его правильно сделал? просто у клиента идет ответ в 4 байта (аккаунт ид) после чего сразуже идет ответ со всем скиллами. стоит ли ожидать что бы боту шло 2 ответа на 1 этот пакет?
Eddga
Энтузиаст
Сообщения: 88
Зарегистрирован: Ср ноя 15, 2006 3:05 am

Сообщение Eddga »

До патча в коре 5506 работал Xkore 1?
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8205
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

(2)
japplegame писал(а):А я и посейдоном никогда не пользовался. Я вообще ничем не пользовался. Врубаю дебаг-режим, XKore 1 и читаю обновленные пакеты.
А еще посейдон похош тем, что он очень красиво подписывает текстом что-где в пакете. Ну очень красиво. Попробуй!
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
Lims
Нууууп
Сообщения: 723
Зарегистрирован: Чт ноя 09, 2006 7:55 pm

Сообщение Lims »

Eddga
в 5455 точно работал
piroJOKE
Можешь примерно расписать как посейдон запускать?) и надо ли чтонибудь качать еще кроме того посейдона который лежит в боте
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8205
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

клиент + wpe + посейдон + моск, больше ничего.

зы: в посейдоне какая-то часть функций криво реализована,
всё-таки 1...2 пакета надо подстраивать на натуре.
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
Закрыто