Перейти к содержанию

Vetalll

Пользователи
  • Публикаций

    15
  • Зарегистрирован

  • Посещение

  • Победитель дней

    1
  • Отзывы

    N/A

Vetalll стал победителем дня 27 марта 2022

Vetalll имел наиболее популярный контент!

Репутация

2

Информация о Vetalll

  • Звание
    Только пришел

Посетители профиля

534 просмотра профиля
  1. Ну и дурак.. есть скрипты даже для Пилота.. От туда и черпнул идею. С Января на Реборне стоит SmartGuard.. Работает на ура по сей день. Каптча парсится.. Спойл спойлится.. Манор манорится и здается в 2 замка с 99% вероятностью
  2. Да.. проигрывает и колосально.. На выходе все равно это смесь Автокликера + частички разума.. Это все делалось для личного пользования.. Акуму я писал еще весной. Там реально трудно отхендлить это все. а захват делается примитивно.. просто скрин всего экрана..
  3. Да.. как первая часть.. И она контрится тем же смарт гвардом на проверку isInjected event Но если посомтреть глубже class ArduinoKeyboard(Keyboard): Маленькая железяка которая за $5 + OpenCV. = обходит абсолютно все. Нет инжекта в процессы или память или еще куда.. просто парсинг екрана и вытаскивание всей инфы. Управление клиентов через физичесскую клавиатуру через сокет с ардуинкой. ПРУФ -
  4. Ну чисто для боевого сервера мой вариант не проканает.. Но моя основная цель - Сделать Архитектуру довольно большого сервера пименно по SOLID и с паттернами.. Так как сказать визитку на Гит хабе. Если интересно вот https://github.com/lebedynskyi/L2Server А еще если покапаться в моих репах то там и бот который обходит Акуму )
  5. Не ты не понял.. байты это я все понимаю. Просто сама логика. К примеру Пакет Чат.. Socket -> Client -> Player -> World -> Player -> Client -> Socket Получается классы знаю про классы на уровень выше. А не должны.. в моем понимании должно быть что-то КАКАЯТО_МАГИЯ -> World -> Player -> Client -> Socket и вот вся суть в КАКАЯТО_МАГИЯ. разве что подписку реализовать на пакеты...
  6. Всем привет.. как хобби ковыряю сервер снуля.. были тут от меня вопросы.. Я программист с опытом на разных платформах. Но есть одна задача которую я никак не могу решить... Это архитектура без круговых зависимостей. К примеру. есть игрок который должен знать о мире который должен знать о всех игроках. что-то подобное с сокетами. Есть сокет который завернут в клиент который внутри игрока. и вот когда приходит новый пакет то клиент должен дать команду игроку или миру. ну потом обратная реакция от игрока или мира. Кто-то пытался вообще решить эту проблему? Сделать красиво? Часть проблемы могу решить через Observer паттерн. Но часть нет. особенно та что с сокетом. Ни литературы ни статей толковых не нашел.
  7. В том что не могу найти. Так как я пишу с нуля.. Просто хотел заспавнить мобов на своем (самописном) сервере. Но в итоге к приеру Варка есть. А гремлинов нет..
  8. Ковыряю исходники Акис как небольшой туториал для написания своего сервера и не нашел в spawnlist спавна гремлинов. Да, понимаю что в своем сервере я могу из заспавнить сам. Достточно отправить NpcInfo пакет.. Но вопрос именно в акисе. Где и как они могут спанится? Смотрел на зоны, регионы.. Нигде не нашел.. Ктот подскажет? То что спавн отсутствует в акисе я не поверю.. сборку пилят 10+ лет.
  9. Спасибо большое.. Но Вы же понимаете что сама по себе идея так себе. Что-то деальноего на выходе не будет... дай бог мне закончить спавн НПЦ с мобами. Даже боюсь подумать что там с диалогами.. Моя основные цели были: - реально понять как работают Сокет Селекторы - Понять шифрование. Основное понял, не пойму как работает XOR в гейм сервере и Хеш сумы в логине - Сделать более мнее норм архитектуру без кучи статики (уже на старте куча вопросов и цикличесских зависимостей. Как плееру отправить пакет если плеер это часть коннектед клиента ?)
  10. Ага. Тогда заведу сервер и подебажу. Главное что не нехватка другого пакета. И так же меня смущают нули. Статы то я распарсил
  11. Я пишу свой Интерлюд сервер с нуля. Не спрашивайте зайчем - чисто для фана и для практики архитектуры, много-поточности, корутин и тд и тп. Подглядываю в исходники aCis для структуры пакетов. По этой ссылке не все понятно что и когда слать - http://www.la2kings.ru/la2bot/packets.html#UserInfo Суть вопроса - Дописал я свой сервер уже до входа в игру. Получаю пакет 0x03 EnterWorld и в ответ шлю 0x04 UserInfo Клиент загружается и появляется в точке респа все ОК. Но Клиент не отображает имя. Если открыть инвентарь и закрыть то клиент крашится с еррором связанным с именем. Я так понимаю что я шлю не правильный пакет 0x04 UserInfo или надо еще что-то отправить клиенту. В Акисе пакетов много. Копировать без разбору яне планирую. Есть идеи куда копать: В Юзер Инфо или что-то еще отправить?
  12. Все проблему решил.. Я был прав на счет пункта 2 Имя персонажа шифруется XOR ключем. Все пакеты ГеймСервера шифруются XOR ключем. XOR ключ оказывается не простой.. а 16 байтовый массив где первые 8 байт рандом, а вторые 8 байт это статик значения. (Вот тут и была моя проблема.. я юзал просто рандом на все 16 байт) Тему можно закрыть или вообще удалить.. Спасибо что хоть попытались помочь.
  13. Да. Это в Логин Сервере - тут у меня все ок. А вот в Гейм сервере. В aCis. сборке он называется AuthLogin. Подправлю название пакета в топике Посмотрите пример с CharacterCreate в топике выше. проблемы в чтении имени в этом пакете в чтении никнейма более 3х символов public final class CharacterCreate extends L2GameClientPacket { @Override protected void readImpl() { _name = readS(); _race = readD(); _sex = (byte) readD(); _classId = readD(); _int = readD(); _str = readD(); _con = readD(); _men = readD(); _dex = readD(); _wit = readD(); _hairStyle = (byte) readD(); _hairColor = (byte) readD(); _face = (byte) readD(); } } Ну и в AuthLogin в чтении аккаунта длинее 3х символов Собсвтено я думаю тут 2 проблемы - Корявый патч или папка систем (У меня Win 10 x 64) - Не правильно инициализирую шифрование в CryptPacket / CryprInit
  14. Я пишу свой Интерлюд сервер с нуля. Не спрашивайте зайчем - чисто для фана и для практики архитектуры, много-поточности, корутин и тд и тп. В момент когда клиент подключается к гейм серверу есть 2 основых пакета: 08 - RequestAuthLogin 0B - CharacterCreate Первый пакет шлет аккаунт а второй имя создаваемого перса. Так вот проблема в том что клиент шлет только 3 символа правильно. Если аккаунт или имя длинее 3х символов то все ломается. Вот расшифрованный пакет CharacterCreate с именем нового чара TheName: [67, 0, 11, 84, 0, 104, 0, 101, 0, 78, 63, 31, -54, 69, 45, 16, -6, -37, 0, 0, 0, 0, 0, 0, 0, 0, 63, 126, -54, 40, 45, 117, -6, -37, 0, 0, 0, 0, 0, 0, 0, 0, 63, 126, -54, 40, 45, 117, -6, -37, 0, 0, 0, 0, 0, 0, 0, 0, 63, 126, -54, 40, 45, 117, -6, -37, 0, 4, 83, 0, 86, 86, 83, 1, 9, 2, 9, 1, 81, 84, 81, 9, 85, 86, 9, 3, 4, 7, 5, 85, 4, 6, 85, 4, 6, 9, 4, 81, 1, 8, +65,436 more] Вопрос в начале пакета 67 - Длина пакета 0,11 - Оп код 84,0 - 'T' 104,0 - 'h' 101,0 - 'e' 78 - 'N'. (1 байт вместо 2) !!!!!!! 63, 31, -54 и так далее уже какойто мусор Я подглядываю в фришные исхдники для всяких частей по типу структуры пакета и шифрации. Шифрование должно работать ОК (В теории, так как я брал с aCis исходников) Запустить Акис сервер пока нет возможности.. На выходных уже буду пробовать..
×
×
  • Создать...