Ни Packet, ни Rpc. Что это и как его контролировать?

Xmoore

Новичок
Автор темы
21
6
Версия MoonLoader
.026-beta
Я значит конкретно погрузился в тему изменения packet'ов и rps's и заметил, что на Аризоне есть что то третье. Приведу пример с моими любимыми порталами.
Если игрок рядом с тобой ставит портал, то тебе эта информация придёт в обход packet'ов и rpc. Я пробовал блокировать все входящие packet's и rpc's, но порталы всё равно создавались. Так-же, через эту систему передаётся синхра охранников и ещё полагаю много чего. Что это за третья "Система передачи данных" и можно-ли её контролировать?
 
Решение
Я значит конкретно погрузился в тему изменения packet'ов и rps's и заметил, что на Аризоне есть что то третье. Приведу пример с моими любимыми порталами.
Если игрок рядом с тобой ставит портал, то тебе эта информация придёт в обход packet'ов и rpc. Я пробовал блокировать все входящие packet's и rpc's, но порталы всё равно создавались. Так-же, через эту систему передаётся синхра охранников и ещё полагаю много чего. Что это за третья "Система передачи данных" и можно-ли её контролировать?
Ты хочешь залезть в очень сложные дебри.

Все кастомные пакеты по 220 айдишнику обрабатываются в core.asi и vorbisFile.dll. Они работают в симбиозе. core.asi чаще всего обрабатывает какие-то новые события относящиеся к лаунчеру, а vorbisFile.dll...

Tema05

Известный
1,485
452
Я значит конкретно погрузился в тему изменения packet'ов и rps's и заметил, что на Аризоне есть что то третье. Приведу пример с моими любимыми порталами.
Если игрок рядом с тобой ставит портал, то тебе эта информация придёт в обход packet'ов и rpc. Я пробовал блокировать все входящие packet's и rpc's, но порталы всё равно создавались. Так-же, через эту систему передаётся синхра охранников и ещё полагаю много чего. Что это за третья "Система передачи данных" и можно-ли её контролировать?
Ты хочешь залезть в очень сложные дебри.

Все кастомные пакеты по 220 айдишнику обрабатываются в core.asi и vorbisFile.dll. Они работают в симбиозе. core.asi чаще всего обрабатывает какие-то новые события относящиеся к лаунчеру, а vorbisFile.dll же чаще занимается пакетами, связанными с изменениями самой игры и её родных элементов. Следующим за 220 байтом идёт условно "id события". Самый популярный 17, это передача строки на обработку cef браузером. Их дохрена, они разной длинны и имеют разную структуру данных, или же 2 байтом пакет может закончится. Всё это различные настройки, кастомные события расширяющие функционал игры, триггеры состояний и т.п. Никаких списков нет, только самостоятельно ревёрсить файлы и изучать что они делают

Помимо этого есть ещё вроде 12 исходящий пакет относящийся к запуску cef. 221 это охранники, которые обрабатываются в файле pedlib (не помню, но что-то подобное). Там jit компиляция, поэтому разобраться будет сложнее. У лаунчера куча своих собственных кастомных структур, которые чаще всего нужны для расширения границ обычного сампа. И иногда они могут заменять оригинальные как например с новыми аксессуарами.

На некоторые пакеты нельзя повлиять из lua из-за разной последовательности их обработки. Поэтому не получится всё заблочить. Так что тут остаётся искать адрес и хукать обработчик или патчить память в самих дллках меняя логику работы. Хуки в lua вызывают кучу проблем и лучше делать в виде asi/sf плагинов или же при помощи либы libtcc, позволяющий из lua выполнять код на C.

Чтобы полноценно изучать устройство определённых систем в лаунчере и даже влиять на них тебе необходимы навыки ревёрс инденеринга. Это достаточно обширная тема требующая много знаний
 
Последнее редактирование:
  • Нравится
Реакции: Xmoore