-
Уважаемый пользователь! Вы не представились системе! Для получения полного доступа к форуму войдите <ИЛИ> зарегистрируйтесь!
Спасибо.
-
База знаний:
Плагины-
Стандартные функции PAWN
-
Версия: 0.3.7
-
Версия: 0.3e
-
Версия: 0.3d
-
Версия: 0.3c
-
Версия: 0.3b
-
Версия: 0.3a
-
Автовызываемые функции
-
-
Плагины и инклуды
-
Уроки
Войдите для возможности подписатьсяПодписчики 0RAKNET plugin - Гайды, уроки, общая информация. Рускоязычная WIKI.
От DEST
- Перехват и обработка входящих / исходящих пакетов и RPC ( Remote Procedure Call, удаленный вызов процедур).
- Отправка игроку RPC и пакетов.
- Поместите pawnraknet.dll / pawnraknet.so (в зависимости от OS) и pawnraknet.cfg в папку plugins вашего сервера.
- Поместите Pawn.RakNet.inc в папку /pawno/include (данный параметр имеет смысл только для Windows).
-
Добавить в server.cfg:
При использовании Windows:
plugins pawnraknet.dll
При использовании Linux-систем:
plugins pawnraknet.so -
Добавить инклуд в начало вашего GM:
#include <Pawn.RakNet>
-
Если вы хотите использовать RakNet как фильтрскрипт, то перед инклудом добавить:
#define FILTERSCRIPT
- InterceptIncomingRPC (true / false) - включает / отключает перехват входящих RPC.
-
InterceptIncomingPacket (true / false) - включает / отключает перехват входящих пакетов.
-
InterceptOutcomingRPC (true / false) - включает / отключает перехват исходящих RPC.
-
InterceptOutcomingPacket (true / false) - включает / отключает перехват исходящих пакетов.
-
UseCaching (true / false) - включает / отключает кеширование.
-
Windows:
-
git clone --recursive https://github.com/urShadow/Pawn.RakNet.git
- Открыть Pawn.RakNet/pawnraknet.sln
- Build -> Build Solution
-
-
Linux-системы:
-
git clone --recursive https://github.com/urShadow/Pawn.RakNet.git
- cd Pawn.RakNet
- make
-
Обсудить / получить поддержку
Гайды, уроки, общая информация по плагину Pawn.RakNet. Сам плагин позволяет перехватывать пакеты, отправляемые игроком клиенту для дальнейшей их обработки.
Для поддержки всегда актуальной версии оставляю ссылку на гитхаб разработчика: перейти на гитхаб разработчика
Однако, актуальную версию на данный момент (31.12.2017) вы можете скачать и с наших серверов:
Pawn.RakNet.inc - инклуд
pawnraknet-1.0.2-win32.zip - Шindoшs версия
pawnraknet-1.0.2-linux.tar.gz - линукс версия
[ ]: Значение по умолчанию.
Так как дополнение имеет открытый исходный код его можно компилировать.
У плагина RAKNET есть свои функции, а также автовызываемые функции. В этом разделе мы подробно остановимся на них.
RAKNETMANAGER (RNM) и Pawn.Raknet два разных, но схожих плагина. Соответственно, в RNM нет всех тех функций, которые есть в Pawn.Raknet.
Описание функции:
Отправляет RPC-пакет игроку.
Параметры функции:
(BitStream: bs, playerid, rpcid, PR_PacketPriority: priority = PR_HIGH_PRIORITY, PR_PacketReliability:reliability = PR_RELIABLE_ORDERED)
bs - информация, записанная в битах
playerid - получатель RPC
rpcid - ID rpc
priority - Приоритет пакета (подробнее см. в оглавлении)
reliable - надежность отправки (подробнее см. в оглавлении)
Возвращаемые значения:
Фукнция не возвращает никаких специальных значений. [?]
Пример использования:
stock SendChatMessage(senderid, msg[]) { new BitStream:bs = BS_New(), RPC_Chat = 101; BS_WriteValue(bs, RNM_INT16, senderid, RNM_INT8, strlen(msg), RNM_STRING, msg); BS_RPC(bs, senderid, RPC_Chat); BS_Delete(bs); }
Описание функции:
Создает новый BitStream (для возможности записи в него данных и последующей отправки / обработки их).
Параметры функции:
Отсутствуют.
Возвращаемые значения:
Функция не возвращает никаких специальных значений.
Пример использования:
new BitStream: bs = BS_New(); BS_WriteValue(bs, :...);
Описание функции:
Удаляет созданный BitStream.
Параметры функции:
(&BitStream:bs)
bs - идентификатор созданного BitStream'a.
Возвращаемые значения:
Функция не возвращает никаких специальных значений.
Пример использования:
new BitStream: bs = BS_New(); // создадим BitStream new OnFootData[PR_OnFootSync]; // создадим массив OnFootData[PR_animationId] = 56; // изменим анимацию игроку на 56 BS_WriteOnFootSync(bs, OnFootData); // запишем новые данные BS_Send(bs, 207, playerid); // отправим новые данные BS_Delete(bs); // удалим после работы
Описание функции:
Очищает BitStream массив.
Параметры функции:
(BitStream:bs)
bs - идентификатор созданного BitStream массива.
Возвращаемые значения:
Функция не возвращает никаких специальных значений.
Пример использования:
BS_Reset(bs);
Описание функции:
Игнорирует биты при чтении.
Параметры функции:
(BitStream: bs, number_of_bits)
bs - BitStream массив, в котором будем игнорировать биты.
number_of_bits - кол-во игнорируемых битов
Возвращаемые значения:
Функция не возвращает никаких специальных значений.
Пример использования:
BS_IgnoreBits(bs, 8); // игнорируем прочтение первых 8 бит, обычно это название пакета
Описание функции:
Перемещает указатель запись на определенное число символов.
Параметры функции:
(BitStream: bs, offset)
bs - существующий массив данных
offset - смещение (число)
Возвращаемые значения:
Функция не возвращает никаких специальных значений.
Пример использования:
BS_SetWriteOffset(bs, 8); // смещаем запись на 8 символов (бит), т.к. зачастую первые 8 бит - это название пакета
Описание функции:
Получает смещение при записи.
Параметры функции:
(BitStream: bs, &offset)
bs - идентификатор созданного BitStream массива
&offset - переменная целочисленного типа, в которую будет записан результат
Возвращаемые значения:
Вернет строку с информацией о смещении.
Пример использования:
new offset; GetWriteOffset(bs, offset);
Дополнение статьи будет произведено позже
.
Войдите для возможности подписатьсяПодписчики 0
-