Описание: Эмуляция работы механизма SAMP QUERY. С помощью этой вещи можно создать фейковый сервер в клиенте SA:MP.
Гайд: Пакет принимается сервером, обрабатывается и сервер вызывает каллбек в зависимости от типа пакета.
Исходник: https://github.com/Receiver1/re_samp_query_fake/
Гайд: Пакет принимается сервером, обрабатывается и сервер вызывает каллбек в зависимости от типа пакета.
Вот так выглядит каллбек для пакета получении информации о сервере:
Список всех каллбеков:
Вы можете вручную добавить каждый из них.
Чтобы вернуть результат серверу вам нужно заполнить и вернуь пакет, делается это через
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/
Последнее редактирование: