L2PacketHackФорум программы L2PacketHack, всё что с ней связано находится тут.
Правила раздела!
Категорически запрещено:
* Просить пакеты/скрипты на шмот/адену/другие вещи;
* Просить (помочь) взломать/сломать сервак/аккаунт или раздеть/наказать кого-то на любом серваке;
* Просить научить работать с программой, если не понимаете элементарных вещей в отношениях клиент-сервер (так как, если вы их понимаете, то вопросов по основным возможностям программы быть недолжно);
* Все посты не удовлетворяющие этим запретам, а так же не относящиеся к теме будут удаляться при первой возможности.
* Запрещается создавать темы с просьбой выполнить какую-то работу за автора темы.
* Форум является средством общения и общего поиска решения. Вашу работу за Вас никто выполнять не будет.
* Данные запреты неподлежат обсуждению.
Вступление
Хочу устроить флеш-моб на сервере, так сказать синематик-шоу на тысяч 5 персонажей
Создавать персонажей, покупать у нпс нужные расходники, бафаться и идти на ивент по заданному маршруту в ручном режиме это очень напряжно для такого количества персонажей. Хочется потрудиться над сценарием для одного персонажа и прогнать его для всех.
План мероприятий
1) При помощи L2PH отловить нужные моей программе клиент/серверные пакеты.
2) Консольная программа (на Delphi) воспроизводит набор пакетов в заданной последовательности
Необходимые действия в игре
1) ЛогИн/ЛогОфф на сервер *) Выбор сервера и коннект на сервер
2) Создание персонажа (ник, раса, класс, пол и т.д.)
3) Релог персонажа по имени
4) Движение (хотьба/бег) в точку с указанными координатами (X,Y,Z)
5) Использование телепорта (выбор нужного пункта в меню ГК)
6) Покупка определенного предмета у НПС
7) Получение бафа у определенного НПС
8) Получение сведений о количестве определенного предмета в инвентаре
9) Отправка личного сообщения другому персонажу, с указанием ссылки на предмет в инвентаре (шифтинг)
Исходные данные
- сервер High Five, платформа PTS
- версия L2PH имеющаяся в наличии - 3.5.34.176
Вопросы
1) Возможно ли в принципе реализовать такую задумку?
2) Позволит ли L2PH на пакетном уровне отловить все пакеты взаимодействий, что я описал в разделе "Необходимые действия в игре"?
2) Какие трудности могут встретиться на пути реализации?
Последний раз редактировалось Linux, 18.05.2016 в 17:57.
Я из поиска нашел ваше упоминание о la2_client_emu, где говорилось что этот пример позволяет авторизоваться на Логин-Сервер L2. Собрал приложение на D7, и, за не имением документации на этот пример, вопрос: представленный лог о выполнении является ли корректным? Как понять работает ли он в целом?
Код:
WinSocket Library has been initialised
Connected to Remote Server
Server MSG, Length: 186 (0xBA)
-------------------------------------------------------
RSA Key changed
BlowFish key changed
Client MSG, Length: 42 (0x2A)
-------------------------------------------------------
Server MSG, Length: 42 (0x2A)
-------------------------------------------------------
Client MSG, Length: 178 (0xB2)
-------------------------------------------------------
Server MSG, Length: 66 (0x42)
-------------------------------------------------------
Login Ok
Client MSG, Length: 34 (0x22)
-------------------------------------------------------
RS was Disconnected
RS disconnected
смущает меня что сразу же происходит и дисконнект
может кто предоставить полный листинг рабочего коннекта данного примера? и если можно с указанием сервера Ла2, чтобы можно было проверить самолично
UPD1:
Кажется сам понял почему происходит дисконнект, этот пример только для взаимодействия с Логин-Сервером, а чтобы попасть в игровой мир нужно допилить программу для взаимодействия с Гейм-Сервером (добавить IP/PORT ГС, порядок обмена пакетами К-ГС). Вопрос: верно ли мое предположение насчет работы данного примера только с ЛС? т.к. в коде я видел процедуры по выбору игровых серверов и получении информации о них, а значит по идее программа должна заходить так далеко, или это только объявления таких процедур? пока еще так глубоко не успел копнуть исходники
UPD2:
По логике вещей я понимаю, что Логин-Сервер на мой клиентский запрос (логин+пасс) должен мне сформировать уникальный ID, который мне понадобиться для общения с Гейм-Сервером. Вопрос: что является таким ID (полученным пакетом) и как правильно его нужно будет интегрировать в последующие пакеты для общения с Гейм-Сервером?
Последний раз редактировалось Linux, 18.05.2016 в 17:58.
мне уже кажется, что с этими непонятками я просто хожу по замкнутому кругу, буксую на месте
UPD1
кто является автором примера la2_client_emu.rar?
UPD2 Добавлено через 17 часов 26 минут
Расширил логирование в la2_client_emu и судя по логу программа не может дойти до следующих методов: LS_ServerList() и LS_PlayOk().
После последнего успешного выполнения метода RequestServerList() в методе WMSOCK_RS_EVENT(Msg) происходит WSAECONNABORTED (#10053).
Подскажите в чем может быть проблема? Что может разрывать совет?
Linux, для корректного переноса проекта на поддерживающие юникод делфи нужно также заменить PChar на PAnsiChar, Char на AnsiChar и в целом проанализировать использование строк и символов в проекте
__________________ Начало.
За это сообщение supernewbie нажился спасибкой от:
Скорее всего эти ключи "битые", значения которых получены не подходящим к моему серверу алгоритмом. Подскажите как и чем можно отловить "корректные" ключи или какой алгоритм формирования этих ключей для HighFive хроник?
Linux, для корректного переноса проекта на поддерживающие юникод делфи нужно также заменить PChar на PAnsiChar, Char на AnsiChar и в целом проанализировать использование строк и символов в проекте
Я в принципе так и делал, но что-то все равно проект не стартует на D2010. Я решил пока забить и довести до ума код примера на D7
Последний раз редактировалось Linux, 26.05.2016 в 16:50.
Причина: Добавлено сообщение