Перейти к публикации
LineaAge II Forum L2Corvet

самодельный бот


Рекомендованные сообщения

привет

кто-то пытался написать свое или модифицировать существующий бот под себя? 

я вот решил немного попробовать, т.к. меня не устраивает надежность существующих ООГ (иногда вылетают и есть неисправимые дефекты)

(ингейм меня не устраивает по очень глупой причине - через какое-то время клиент л2 меняет яркость видео  на мониторе  - гамма на рабочем столе становится такой что  паралельно читать\смотреть кино становится некомфортно)

 

я тут потратил пару дней на возню с L2NET (https://github.com/devmvalvm/L2Net) , но застрял на стадии коннекта к игровому серверу

т.е. он заходит на логин сервер, получает список серваков, шлет пакет выбора сервера и коннектится к игровому серверу

но видимо первый же  пакет который мы получаем или отправляем игровому серверу - некоректный и дальше ничего не происходит

т.е. чара с этого же акакаунта который на волкере в это время загружен  - даже не  выбивает из игры

 

я пока не могу понять в чем проблема - 

1. я некорректно указал протокол или хроники (протокол из файла настроек волкера  ProtocolVersion=746)

2. игровые пакеты как-то еще дополнительно шифруются ( не зра ведь с l2walker в комплекте идет wss)

 

если кто-то смог здесь зайти в игру л2нет ботом  - буду признателен за подсказки

если у вас есть код бота которым можете поделиться - буду очень признателен

если есть какая-то детальная информация  о специфике сервера - тоже пригодится

 


 

 

Изменено пользователем iNoj
Ссылка на сообщение
Поделиться на других сайтах

а в чем проблема с L2NET?Версия 384 нормально конектится..перс заходит..двигается..с нпс разговаривает..единственный минус в разговоре кракозябра..дальше пока не пробовал..

 

Ссылка на сообщение
Поделиться на других сайтах

Вообщем проверил...работает..бегает ровно..хилит,бафает,ассистирует..

Проверял только Аутгейм L2NET.Дисконнектов в течении часа не наблюдал..повторюсь-единственный минус при разговорах с НПС кракозябра вместо слов..

Ссылка на сообщение
Поделиться на других сайтах
6 часов назад, RomabaffNewline сказал:

Ты скомпилил исходники и пытаешься подрубиться так?

да, предварительно я их немного минимизировал

 

но когда увидел что не конектится решил попробовать оригинал ( но версия самая свежая с того же гитхаба)

в нем такая  же картина  логинится, выдает серваки, и застревает там же

но там меня смущает что есть только одна опция HighFive, возможно надо специально старье искать для совместимости с интерлюдом

 

 

Ссылка на сообщение
Поделиться на других сайтах

поковырял статьи, везде говорится что когджа завершили с логином и получили "Login OK" то надо слать гейм серверу  пакет с номером протокола

и везде говорится что тип пакета 0x00

http://www.la2kings.ru/la2bot/packets.html#ProtocolVersion

http://netpro.revengineer.eu/protocols/interlude_update_3.html

 

но в исходниках л2нет бота везде прописан другой айди пакета (я нарыл три разные версии и везде так)

  Logout = 0x00, 
...

AuthLogin = 0x0E, //ProtocolVersion 

видимо дело  в том что в исходниках самая самая первая версия "468"

 

пробовал поменять и чесно слать то что в доках - пока тоже ноль реакции от сервера

 

 

Ссылка на сообщение
Поделиться на других сайтах

 

то ли после 100й попытки сервер тупо сдался, то ли я нащупал правильную комбинацию, но наконец-то игровой сервер меня признал и выдал список чаров и кикнул чара который был в игре

 

но потрудиться прийдется много, чтоб л2нет задаунгрейдить под интерлюд, там как минимум все номера пакетов перемешаны,  а как максимум - они еще и по структуре отличаются 

 

а писатели всяческих документаций почти никогда не упоминают к какому конкретно типу сервера относятся их гайды, так что будет вдвойне  геморно  

 

 

 

Ссылка на сообщение
Поделиться на других сайтах

Дак в пакетах и есть вся проблема.На коте так же было когда с кривым бегом разбирались.Нашли причину в разницах пакетов,сделали фикс и бот нормально забегал.

Ссылка на сообщение
Поделиться на других сайтах

 

короче путем замены айди пакетов, удаления отправки ГГ, и небольшого шаманства удалось запустить клиент, залогиниться

побегать, поговорить с нпц и побить мобов 

даже смог русифицировать диалоги с нпц (и гк работает, но он и на волкере до 40 работает)

(да, этой пока вожусь с исходниками л2нет, чтобы проверить работоспособность всех отсылаемых\принимаемых  пакетов, а до своего отдельного бота  пока далеко)

 

но надо еще повозиться и прикрутить данные от интерлюда (названия предметов, нпц,скиллов,  и т.п.) 

может кто залить датапак от старой версии, который идет на интерлюде?

 

image.thumb.png.be3624d343f17951544407291c04cf89.png

Ссылка на сообщение
Поделиться на других сайтах

короче не зря я мучился, пока что сделал минимальный бот ( хотя там конечно для минимальности стоило бы датапак отрезать )

 

файлик зарелизил сюда

https://drive.google.com/drive/folders/1dil8QFuCa42f5JzQJfOrmxXrx545E_-x?usp=sharing
 

там есть конфиг и батник для запуска конфига

формат конфиг файла  примитивнейший:

сервер

 SERVER=31.211.110.217
порт

 PORT=2106
логин и пароль 

 LOGIN=test675test
PASS=testtest1
будущий класс чара (пока не реализовано, сейчас создает ельфов файтеров ) 

   CLASS=TH
имя чара (если такое есть на акке заходит, если нет - создает. если имя занято - виснет)

 NAME=TORT9091
(чар от кого принимает пати и за кем бегает)

 PL=NETORT
(по кому ассист, пока не реализовано)

  ma=NETORT

 

практическое применение пока тоже  минимально - можно создать  толпу чаров (запуская с разными конфигами) и собрать в пати и отвести их куда-то личить експу

 

пока что в ближайших планах

 0. создание чаров нужной расы и типа (мистик\воин)

 1. сделать ассист

 2. использование скиллов для атаки и лечения

...

10. простейшие скрипты (чтобы свежесозданые чары сами бежали в город например)

...

100.  попробовать починить л2нет ( собрать  ХФ версию из исходников, но с интерлюд датапаком и исправлеными пакетами)

 

буду рад любым отзывам

Ссылка на сообщение
Поделиться на других сайтах

Поздравляю!Начало положено!Бот реально входит в игру,цепляется в пати,бежит за ПЛ..бег ровный,дисконнектов в течении часа не наблюдал..Молодец!Удачи в продолжении!

Ссылка на сообщение
Поделиться на других сайтах

обновил до 1.2 (сорян,  версия техническая, так что будет спамить всякими текстами )

- пофиксил чтение пакета о составе пати, чар теперь более адекватно видит пати мемберов

- попытки сделать бафф и хил: 

  (я пытаюсь это сделать не настраиваемым, а вшитым в код, на уровне: задать чару роль и ожидать что он по ней будет работать)

    теперь будущие ЕЕ и БП будут пытаться лечить и будут баффать Might(будущим ДД). если его нету (проверяется наличие Herb Of Power, остальные альтернативы пока не добавлены)

- подправил ассист до моментального, на небольшом споте вроде более-менее адекватно себя ведут, на большом чары иногда отрываются 

- сделана команда в патичате: CMD:SOE, по которой все чары делают анстак (допишите если есть идеи добавить командам)

 

из багов - то что я считал пожиранием памяти, на самом деле поднимает нагрузку на проц, причина пока все ще туманна

 

ближайшие планы: 

 - использование атакующих скиллов, 

 - доделать еще пару основных баффов и отладить всю схему для всех классов

 - автореконнект при дисконекте 

 - починить баг с зависанием 

 

 

 

 

 

 

 

 

Ссылка на сообщение
Поделиться на других сайтах

обновил файл,  там был неправильный ID для Heal

заодно добавил бафф Shield ( моя пачка на х0.1 едва апнула 10й уровень, так что какое-то время новых баффов не появится)

нашел еще баг, очень редко но  при старте при расшифровке RSA пакета  не проходит дальше 

 

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, iNoj сказал:

обновил файл,  там был неправильный ID для Heal

заодно добавил бафф Shield ( моя пачка на х0.1 едва апнула 10й уровень, так что какое-то время новых баффов не появится)

нашел еще баг, очень редко но  при старте при расшифровке RSA пакета  не проходит дальше 

 

Проблема похоже вот тут (EnterWorld)

03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 C9 BC F2 A7 66 5A 0B 98 36 A5 BD 89 ED 7F E4 D7 6B 49 E2 9F EF 76 EB CE A3 FA F4 BF 0C 64 A3 B4 A4 CE DC C6 08 3E 6E EA 45 CA D3 FE 88 13 87 B8 06 2C 96 F0 9B 1E 8E BC C6 9B 98 C8 63 16 CF D0 29 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
Длина пакета должна быть 105+2, а периодически приходит 105+4. Это я по опыту walker oog говорю. 

Ссылка на сообщение
Поделиться на других сайтах

обновил до 1.3 

- пофиксил ошибку которая вешала мой комп дважды - не было вообще обработки пакета с сообщением о дисконнекте. (автореконнект пока не сделал)

 - ошибка при логине не воспроизвелась при 20+ попытках, отложим пока ее

- добавил снятие дебаффа  Poison  с пати мемберов

 -добавил чистку памяти от устаревших обьектов( спер из л2нет оригинала) - будет нужна позже, когда буду делать одиночный\таргетер режим

 

ближайшие планы: 

 - использование атакующих скиллов (спойл наше все, ну и маги нужны)

 - автореконнект при дисконекте 

-  селфбаффы и  использование банок\предметов 

 

 

 

 

 

 

 

Ссылка на сообщение
Поделиться на других сайтах

пока обновления нет,  т.к. вместо обещаного сел заниматься тем что "интересно" и еще не закончил

 

делал соло режим. он вышел очень упоротый: чары страшно тупят, игнорируют моба прям перед носом, или забегают на то место где моб стоял раньше 

 - вероятно что-то не так с пакетом атаки, или он спамится  и чар начинает тупить, или  еще что 

 

делал скрипты. В них еще хотя бы пару команд еще добавить, пока там функционал на уровне "пробежать по координатам "и "затаргетить нпц"

 -  причем в "пробежать" проверка точки с очень большой поправкой, т.к. чар останавливался на расстоянии 150 от точки и отказывался сдвинуться еще немного 

 

 делал команды чата, которые заставят чаров "общаться" с НПЦ:  взять нубобафф всей пачкой или телепортнуться от глобал ГК 

 - обычный гк после  выбора локации кидает еще окошко с подтведждением(я не разбирался пока как там отвечать , но идея есть)

 

 переделывал код бафера, т.к. он просто спамил ( хоть и только нужное, но все равно )

 

обновлю, когда хоть что-то из этого приведу в  приемлемый для использования вид 

 

 

 

Ссылка на сообщение
Поделиться на других сайтах

обновление 1.4

добавлены новые настройки

если указать в качестве PL/МА слово  SOLO, то чар просто пытается убивать окружающих мобов как умеет, автоатакой, и при смерти встает в город и продолжает(не всегда, там баг) 

качество убиения оставляет желать лучшего, чары иногда тупят 

PL=SOLO
ma=SOLO

если в комплекте с соло настройками  указать скрипт - то чар начинает его выполнять 
SCRIPT=TOWNTEST.TXT

 

пример скрипта в архиве с 1.4, набор скриптовых команд (пока) примитивен, условий (пока) нету, команды выполняются по очереди

MoveTo(-72232, 257336, -3104) - чар бежит в ту точку; (координаты скопированы прямо из адреналина, да)

WAIT(1000) пауза
TARGET(Newbie Helper) - выделяет нпц (кликает дважды, т.е. чар подбежит - а если это моб, то и атакует)

DIALOG(ILYANA, 0,0) - говорит с нпц и выполнит команды(т.е. кликнет по ссылкам), первую в первом окне, первую в втором - указать можно больше чем две(для глобал ГК надо 3 например).  да, нумерация начинается с нуля

TOWNTEST.TXT  - этот демо скрипт например старует в руне и заставляет бота прыгнуть от обычного ГК в годдарт, затем в штутгарт, затем обратно в руну


 добавлен GROUP HEAL с вшитым условием в 3+ мембера с ХП<70%

 добавлен BATLE HEAL (HP<50%)

добавлены первые баффы варка 

гном юзает SPOIL и  SWEEP (правда на х0.1 результаты сложно заметить)

 

собственно в обычном пати режиме использование НПЦ тоже доступно. 

пишете в пати чате команду CMD:TALK 0 0, тыкаете в ГК и вся пати портуется куда указано.

пишете в пати чате команду CMD:TALK 4 (ну или какой там номер?), тыкаете в нубо буфера и вся пати бафается 

глобал ГК тоже работает.

мультиселл(это маммон обенник, люксор, ГМ шоп диалоги, и самое ценное ОБМЕН РЫБНЫХ СОСОК) потыкал, но расшифровки пока нету - отложим 

 

 

ближайший планируемый фикс - добавить номер сервера в конфиг, чтоб можно было на х1 тестить на более прокачаных чарах

 

 

Ссылка на сообщение
Поделиться на других сайтах
Опубликовано: (изменено)

обновил до 1.5

 

Скрытый текст

 

добавлено

новая  опция в конфиге, номер сервера ( 0 - это х1 сервер, 1 - это  х0.1, он же дефолтный)

SERVERNUM=0 
 

новые команды для скрипта:

добавил условные команды, если условие не выполнено - весь код до "ENDIF" будет пропущен

 

IF_LOC(-99544, 237688, -3568, 1200)
проверяет находимся ли в радиусе 1200 от точки с координатами


IF_BUFF(4323)
проверяет наличие баффа с указаным айди

 

IF_NO_BUFF(4323)

проверяет отсутствие баффа с указаным айди

 

UNSTUCK

делает СОЕ 

 

EXIT

бот завершает выполнение скрипта и   переходит в режим соло охоты

 

теоретически этого достаточно чтоб сделать скрипт который будет проверять бафф и лететь за ним в город

но есть два нюанса:

1. пока нет функционала который бы периодически запускал скрипт заново или запускал бы его при смерти чара

2. движение бота иногда зависает, я отправляю пакет передвижения, но сервер ничего не делает, расстояние не менется и   мы висим в вечном цикле. 

 

замеченые недостатки:

-в рамках оптимизации я чуть "улучшал ассист" и сейчас боты безбожно ассистят по игрокам и мобам, флагаются и вероятно могут запросто пкануть пати мембера, если МА его выделит. ( неплохо если у вас армия ПКанавтов, кстати надо будет проверить)

-беготня за МА немного глючная, видимо я не всегда шлю Validate position. В обычном клиенте и волкере выглядит будто чары телепортируются на небольшое расстояние

-соло режим иногда тупит

- перемещение в скрипте (см выше)

- в памяти волкер занимает меньше, при большем в десятки раз функционале 

- скрипт ипсользует имена НПЦ для таргетинга, а они в датапаке чуть отличаются, пришлось помучиться пока обнаружил что ГК на Talking Islang зовется ROXXY, а нубобаффер NEWBIE HELPER

команда items выводит некоректные названия для половины предметов. возможно я буду делать датапак на основе расшифровки файлов з папки system

 

 

 

Изменено пользователем iNoj
Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...