Показать сообщение отдельно

  #1  
Старый 26.07.2021, 12:54
Receiver
Постоянный
Регистрация: 26.03.2016
Сообщений: 660
С нами: 5332594

Репутация: 163


По умолчанию

Описание:Эмуляция работы механизма SAMP QUERY. С помощью этой вещи можно создать фейковый сервер в клиенте SA:MP.



Гайд:Пакет принимается сервером, обрабатывается и сервер вызывает каллбек в зависимости от типа пакета.

Вот так выглядит каллбек для пакета получении информации о сервере:​​

​Список всех каллбеков:​​

​Вы можете вручную добавить каждый из них.​Чтобы вернуть результат серверу вам нужно заполнить и вернуь пакет, делается это через​bytestream с помощью функцию write_num – записать число, и write_str – записать строку.​​При записи строки её размер записывается перед ней автоматически.​​При первом чтении пакета во втором аргументе функции необходимо указать 11,​это делается потому что первые 11 байт пакета содержат текст запроса от сервера:​

Цитата:

When you recieve a packet, there are 11 bytes of a packet you can remove right away. These eleven bytes are what we call the header. These eleven bytes equals your query that you have sent.
​После заполнения пакета нужно вернуть его как результат выполнения с помощью функции bytestream – get.​​В этой статье описаны все составы пакетов: https://sampwiki.blast.hk/wiki/Query​В этой статье описаны размеры типов данных: https://ravesli.com/urok-30-razmer-peremennyh-operator-sizeof/

Исходник: https://github.com/Receiver1/re_samp_query_fake/
 
Ответить с цитированием