Metamod
Содержание
Описание
Основная цель проекта Metamod - расширить возможности HLDS сервера, добавить новый функционал или изменить существующий при помощи плагинов. Находясь в связке между библиотекой мода (далее просто DLL) и DLL подключенного к метамод плагина, он перехватывает вызовы функций между ними, с возможностью передачи их в другие плагины. Таким образом, вы можете подключать неограниченное количество плагинов и расширять возможности движка. Проще говоря, metamod внедряет функции DLLки плагина в мод. Плагины могу добавляеть или изменять функциональность мода, или самого движка - например, добавить новые команды и квары для сервера или клиента. Последняя версия: 1.20
Установка
Установка метамода довольно проста: необходимо создать пару папок и произвести изменения в liblist.gam.
Последовательность установки Metamod на Windows сервер:
- Создать папку addons в папке с модом (прим, valve или tfc).
- Создать папку metamod в созданной папке addons (основная папка metamod).
- Создать папку dlls в папке metamod (место расположение dllku метамода).
- Скопировать файл metamod.dll из архива metamod-1.20-win.zip в папку addons/metamod/dlls/.
- Теперь последняя часть: подключение метамода к серверу.
- Открыть файл liblist.gam в папке с модом при помощи блокнота.
- Найти строчку с gamedll и удалить её.
- Вписать на место удаленной строчке следующее: gamedll "addons\metamod\dlls\metamod.dll" .
- Сохранить файл liblist.gam.
Теперь при запуске сервера в консоль будет выводится следующее:
Metamod version 1.19p32 Copyright (c) 2001-2006 Will Day Metamod comes with ABSOLUTELY NO WARRANTY; for details type `meta gpl'. This is free software, and you are welcome to redistribute it under certain conditions; type `meta gpl' for details.
Что говорит нам о успешной установки metamod модуля.
Настройка и Использование
Установка плагинов
В основном используется файл plugins.ini в папке addons/metamod/ для подключения плагинов. Синтаксис файла plugins.ini: <платформа> <путь к DLL плагина> <описание (опционально)>
Платформа - это ключевое слово для обозначения типа ОС плагина. win32 для .dll и linux для .so . Путь к DLL плагина - прописываем место нахождение плагина. Используется наклонная черточка стиля unix - (/).
К примеру, строка для подключения плагина AMX MOD X будет смотреться так: win32 addons/amxmodx/dlls/amxmodx_mm.dll .
Консольные команды
Все консольные команды имеют префикс meta. использование: meta <команда> [<параметры>]
Доступные команды: version - отобразить информацию о версии metamod list - отобразить список загруженных плагинов cmds - список консольных команды, добавленных плагинами cvars - список кваров, добавленных плагинами refresh - перезагрузить metamod config - конфигурация из config.ini (нигде не используется) load <name> - найти и загрузить плагин по указанному путь unload <plugin> - выгрузить указанный плагин reload <plugin> - перезагрузить указанный плагин info <plugin> - отобразить подробную информацию о указанном плагине pause <plugin> - приостановить работу плагна unpause <plugin> - возобновить работу всех остановленных плагинлв retry <plugin> - повторить попытку неудачной загрузки плагина clear <plugin> - выгрузить из памяти неудачно загруженный плагин force_unload <plugin> - принудительная выгрузка плагина require <plugin> - выключить сервер, если указанный плагин не запущен
где <plugin> это ID плагина, его префикс или путь до плагина
Так-же есть квар:
meta_debug - установка уровня отладки
Metamod-P
Это специальная версия Metamod от финского коддера Jussi Kivilinna (автора JK_Botti). Отличия от оригинальной версии:
- Встроенный список энтайтов в библиотеке был замен на динамический. Информация о энтайтах берется на прямую из мода. Можно подключить и использовать этот метамод в любом моде.
- Автоматическое обнаружение и загрузка библиотек сервера.
- Лучшее потребление ресурсов CPU.