Установка компиляция плагинов

Плагины и дополнения / Plugins and add-ons

Модераторы: Dame-danners, Longipongeoos

Аватар пользователя
Longipongeoos
Сообщений: 191
Зарегистрирован: 12 апр 2017, 16:50

Установка компиляция плагинов

Сообщение Longipongeoos » 11 ноя 2021, 16:33

Установка плагинов:

Типы файлов:
.smx— Сам плагин после компилирования (нужен для работы).
Расположение: addons/sourcemod/plugins/
.sp — Файл с исходным кодом (исходник нужен для компиляции, не нужен для работы).
Расположение: addons/sourcemod/scripting/
.phrases.txt — Файл перевода (нужен для работы).
Расположение: addons/sourcemod/translations/
.inc — Файл, в котором хранятся функции плагина (нужен для компиляции, не нужен для работы).
Расположение: addons/sourcemod/scripting/include/
.cfg — Файл конфигурации плагина (нужен для работы).
Расположение зависит от плагина. Часто генерируется по пути cfg/sourcemod/
.txt — Может быть использован как конфиг или как языковой файл (нужен для работы).
Расположение зависит от плагина.
.ini — Конфигурационный файл (нужен для работы).
Расположение зависит от плагина.

Для установки плагина нужно разложить все файлы плагина по папкам указанным выше.

Чтобы проверить работу плагина:

Запускаем сервер, заходим в его консоль и пишем sm plugins list. В консоли появиться список работающих плагинов:
Изображение
Проверяем есть ли в списке установленный Вами плагин, если он там есть, значит Вы сделали все правильно.
Команды SourceMod для работы с плагинами:
sm plugins команда
Команды:
info - Information about a plugin/Показывает информацию о плагине
list - Show loaded plugins/Выводит список установленных плагинов
load - Load a plugin/Загружает указанный плагин
load_lock - Prevents any more plugins from being loaded/Блокирует загрузку плагинов
load_unlock - Re-enables plugin loading/Снимает блокировку загрузки плагинов
refresh - Reloads/refreshes all plugins in the plugins folder/Обновляет/перезагружает загруженные плагины
reload - Reloads a plugin/Перезагружает указанный плагин
unload - Unload a plugin/Выгружает указанный плагин
unload_all - Unloads all plugins/Выгружает все плагины

Компиляция плагинов:

Для редактирования исходников плагинов рекомендую использовать редактор Notepad++
Если у вас код не в файле .sp, а например, с форума то:
Создайте новый файл с расширением .sp
Откройте его с помощь notepad++ (см. выше)
Установите для него кодировку UTF-8 без BOM
Изображение
Скопируйте в него нужный код
Сохраните изменения
Произведите компиляцию (см. ниже)
Компиляция на Windows
Скачайте SourceMod и распакуйте файлы из архива (в частности папку addons/sourcemod/scripting/ со всем её содержимым) в любое место, например, на рабочий стол. Будем называть её "папкой компилятора". Из всего её содержимого необходимы только 2 файла: compile.exe, spcomp.exe и папка include.
Затем положите в папку компилятора исходники вашего плагина (файлы с расширением *.sp и если есть файлы *.inc в папку include/).
Отредактируйте исходник как вам нужно и затем перетащите главный файл .sp на сompile.exe - вы увидите черное окно с отчетом о компиляции.
Если все в порядке и ошибок нет закройте это окно и можете забирать *.smx файл из папки compiled/.
Изображение
Если у вас возникли ошибки при компиляции - необходимо их исправить.
Компиляция на Linux
Чтобы скомпилировать плагин в unix системах:
1.Откройте терминал (консоль)
2.Перейдите в директорию /addons/sourcemod/scripting/ с помощью команды cd
3.Скопируйте файл содержащий исходный код плагина (имеет расширение *.sp) в эту директорию командой cp
4.Для компиляции некоторых плагинов нужны *.inc файлы которые нужно копировать в папку addons/sourcemod/scripting/include и затем компилировать плагин
5.Выполните команду:

Код: Выбрать все

./compile.sh имя_плагина.sp

Плагин должен скомпилироваться.
Внимание! Нет разницы на какой OC компилировать плагины. Если ваш сервер работает на Linux, то плагины скомпилированные на Windows там так же будут работать.

Вернуться в «SourceMod»

Кто сейчас на форуме

Количество пользователей, которые сейчас просматривают этот форум: нет зарегистрированных пользователей и 2 гостей