Difference between revisions of "Ru AMX Mod X FAQ"
m (→Вопросы по компилированию) |
m |
||
Line 16: | Line 16: | ||
:* CS - аббревиатура от Counter-Stirke - наиболее популярный HL мод; | :* CS - аббревиатура от Counter-Stirke - наиболее популярный HL мод; | ||
:* VALVE - кампания, разработчик HL и CS, также редко используется как термин, синонимичный HLDM, но направленный на акцентирование названия директории мода ("valve"); | :* VALVE - кампания, разработчик HL и CS, также редко используется как термин, синонимичный HLDM, но направленный на акцентирование названия директории мода ("valve"); | ||
− | :* $MODDIR - способ | + | :* $MODDIR - способ обобщенного указания названия корневой директории мода, например: ''cstrike'', ''valve''; |
− | :* $MMDIR - способ | + | :* $MMDIR - способ обобщенного указания относительного пути (относительно пути к $MODDIR) к корневой директории MetaMod, по-умолчанию: ''addons/metamod''; |
− | :* $AMXMODX - способ | + | :* $AMXMODX - способ обобщенного указания относительного пути (относительно пути к $MODDIR) к корневой директории AMX Mod X, по-умолчанию: ''addons/amxmodx''. |
Line 41: | Line 41: | ||
== Как запустить два различных сервера AMX Mod X? == | == Как запустить два различных сервера AMX Mod X? == | ||
− | : К примеру, вы хотите запустить два различных сервера из одной cstrike директории на базе различных AMX Mod X/Metamod плагинов, настроек и прочего | + | : К примеру, вы хотите запустить два различных сервера из одной ''cstrike'' директории на базе различных AMX Mod X/Metamod плагинов, настроек и прочего. Это решаемо. Один из примеров для win32 системы приведен ниже: |
− | :* Создать отдельную AMX Mod X директорию с необходимыми файлами, например: addons/amxmodx2 | + | :* Создать отдельную AMX Mod X директорию с необходимыми файлами, например: ''addons/amxmodx2'' |
− | :* В addons/amxmodx2/configs/core.ini везде изменить "amxmodx" на "amxmodx2" | + | :* В ''addons/amxmodx2/configs/core.ini'' везде изменить "amxmodx" на "amxmodx2" |
− | :* Создать отдельный файл загрузки MetaMod плагинов, например: addons/metamod/plugins2.ini | + | :* Создать отдельный файл загрузки MetaMod плагинов, например: ''addons/metamod/plugins2.ini'' |
− | :* В созданный plugins2.ini файл вписать: win32 addons\amxmodx2\dlls\amxmodx_mm.dll | + | :* В созданный ''plugins2.ini'' файл вписать: ''win32 addons\amxmodx2\dlls\amxmodx_mm.dll'' |
− | :* Создать в директории cstrike файл, например, с именем amxmodx2.cfg, его содержимое должно быть следующим: | + | :* Создать в директории ''cstrike'' файл, например, с именем ''amxmodx2.cfg'', его содержимое должно быть следующим: |
<pre>localinfo mm_pluginsfile "addons/metamod/plugins2.ini" | <pre>localinfo mm_pluginsfile "addons/metamod/plugins2.ini" | ||
localinfo amxx_basedir "addons/amxmodx2" | localinfo amxx_basedir "addons/amxmodx2" | ||
Line 68: | Line 68: | ||
localinfo amx_modulesdir "addons/amxmodx2/modules" | localinfo amx_modulesdir "addons/amxmodx2/modules" | ||
localinfo amx_pluginsdir "addons/amxmodx2/plugins"</pre> | localinfo amx_pluginsdir "addons/amxmodx2/plugins"</pre> | ||
− | :* Теперь второй сервер необходимо будет запускать с параметром командной строки: +exec amxmodx2.cfg | + | :* Теперь второй сервер необходимо будет запускать с параметром командной строки: ''+exec amxmodx2.cfg'' |
Line 79: | Line 79: | ||
== Как упростить процесс компилирования? == | == Как упростить процесс компилирования? == | ||
− | : Можно написать стороннюю программу или скрипт, например такой, как пакетный batch файл. Например, создайте файл make.bat | + | : Можно написать стороннюю программу или скрипт, например такой, как пакетный batch файл. Например, создайте файл make.bat со следующим содержимым: |
@amxxpc.exe %1 -i.\include -o.\compiled\%1 | @amxxpc.exe %1 -i.\include -o.\compiled\%1 | ||
− | : Чтобы с помощью него откомпилировать плагин, | + | : Чтобы с помощью него откомпилировать плагин, необходимо выполнить следующую команду: |
make.bat my_plugin.sma | make.bat my_plugin.sma | ||
: В итоге откомпилированный файл будет помещен в каталог ''compiled'' текущей директории. Если его там нет, значит в процессе компилирования возникли фатальные ошибки, которые выводятся на экран. | : В итоге откомпилированный файл будет помещен в каталог ''compiled'' текущей директории. Если его там нет, значит в процессе компилирования возникли фатальные ошибки, которые выводятся на экран. | ||
− | : Если вам необходимо (например, в случае ошибок) кому-нибудь | + | : Если вам необходимо (например, в случае ошибок) отправить кому-нибудь результат компиляции, можете перенаправить вывод информации о процессе компилирования в файл, например таким образом: |
make.bat my_plugin.sma > my_plugin.log | make.bat my_plugin.sma > my_plugin.log | ||
Revision as of 08:09, 18 March 2007
Contents
Общие положения, термины, сокращения и условные обозначения
- HL или HL1 - аббревиатура от Half-Life (часть первая);
- Mod - "мод", модификация - дополнение к чему-либо, как правило, расширяющее/изменяющее функциональность;
- HL Engine - "движок" Half-Life - "центральный модуль", осуществляющий выполнение базовых "общемодовых" задач;
- MM - MetaMod - сторонний мод особого типа, является промежуточным звеном в системе "HL движок - HL мод";
- AMXX - аббревиатура от AMX Mod X - MetaMod plugin ("плагин"), своего рода MetaMod мод;
- Map - "карта" - определяет внешний вид территории, на которой происходит игровое действие;
- World - "мир" - все пространство, которое занимает карта, а также область, находящаяся за картой;
- Spawn - "спавн" - момент, когда игрок появляется в мире, обретая физическое тело;
- SinglePlayer - "синглплеер" - игровой тип, когда одновременно в игре может участвовать только один игрок;
- MultiPlayer - "мультиплеер" - игровой тип, когда одновременно в игре может участвовать несколько игроков;
- DM - аббревиатура от Death Match - динамичный мультиплеер тип игры, когда после "смерти" игрока происходит его скорый спавн ("респавн");
- HLDM - аббревиатура от Half-Life Death Match - оригинальный HL мод DM типа;
- CS - аббревиатура от Counter-Stirke - наиболее популярный HL мод;
- VALVE - кампания, разработчик HL и CS, также редко используется как термин, синонимичный HLDM, но направленный на акцентирование названия директории мода ("valve");
- $MODDIR - способ обобщенного указания названия корневой директории мода, например: cstrike, valve;
- $MMDIR - способ обобщенного указания относительного пути (относительно пути к $MODDIR) к корневой директории MetaMod, по-умолчанию: addons/metamod;
- $AMXMODX - способ обобщенного указания относительного пути (относительно пути к $MODDIR) к корневой директории AMX Mod X, по-умолчанию: addons/amxmodx.
Общие вопросы
Где скачать последнюю версию AMX Mod X?
- Последнюю версию всегда можно скачать на официальном сайте AMX Mod X в разделе закачек.
А что именно качать?
- Качайте либо инсталлятор (AMX Mod X Full Installer), который включает базовый AMX Mod X пакет, все AMX Mod X дополнения для HL модов, а также AMXX-Studio (специализированный редактор AMX Mod X плагинов), либо, если готовы произвести установку AMX Mod X вручную, а также не желаете закачивать все существующие AMX Mod X дополнения для HL модов, качайте базовый архив (AMX Mod X Base), а затем дополнение для интересующего вас HL мода. Сама по себе базовая поставка практически во всех случаях будет достаточна только для HLDM мода.
Где искать плагины?
- Предварительно отметим, что условно AMX Mod X плагины можно разделить на следующие категории: стандартные, официально одобренные, официально отклоненные и неофициальные. Одобренные плагины можно искать здесь, или, используя поисковую систему официального форума. В поле Search in Forum(s) отметьте Approved Plugins, также, зажав клавишу Ctrl, можно отметить интересующие вас секции из подраздела High-Traffic Plugins. Чтобы искать неофициальные плагины, следует также воспользоваться поисковой системой официального форума, правда, в поле Search in Forum(s) необходимо выбрать Unapproved/Old Plugins. Если для вас не имеет значения статус плагина, и вы склонны к экспериментам, осуществляйте поиск по категории Plugins, которая включает в себя одобренные, отклоненные, недавно опубликованные, вполне возможно, "сырые" плагины, а также темы-запросы, в которых могут быть "быстро написанные" плагины. Немного поработав с поисковой формой форума, вы легко освоите эту систему. Единственное возможное для некоторых неудобство - практически все описания плагинов написаны на английcком языке. Неофициальные плагины также можно попробовать искать с помощью общеизвестных поисковых систем: Google, Yandex, Rambler и др.
Сколько плагинов сейчас выпущено под AMX Mod X?
- "Тонны" плагинов. Но, к сожалению, качеством и надежностью большая половина из них не белещет. К тому же некоторые плагины, "заброшены" авторами и не обновляются, что приводит даже к несовместимости с новыми версиями AMX Mod X.
Как устанавливать плагины?
- Обратитесь к этой статье.
Как удалять плагины?
- Обратитесь к этой статье.
Как запустить два различных сервера AMX Mod X?
- К примеру, вы хотите запустить два различных сервера из одной cstrike директории на базе различных AMX Mod X/Metamod плагинов, настроек и прочего. Это решаемо. Один из примеров для win32 системы приведен ниже:
- Создать отдельную AMX Mod X директорию с необходимыми файлами, например: addons/amxmodx2
- В addons/amxmodx2/configs/core.ini везде изменить "amxmodx" на "amxmodx2"
- Создать отдельный файл загрузки MetaMod плагинов, например: addons/metamod/plugins2.ini
- В созданный plugins2.ini файл вписать: win32 addons\amxmodx2\dlls\amxmodx_mm.dll
- Создать в директории cstrike файл, например, с именем amxmodx2.cfg, его содержимое должно быть следующим:
localinfo mm_pluginsfile "addons/metamod/plugins2.ini" localinfo amxx_basedir "addons/amxmodx2" localinfo amxx_cfg "addons/amxmodx2/configs/core.ini" localinfo amxx_configsdir "addons/amxmodx2/configs" localinfo amxx_customdir "addons/amxmodx2/custom" localinfo amxx_datadir "addons/amxmodx2/data" localinfo amxx_logdir "addons/amxmodx2/logs" localinfo amxx_logs "addons/amxmodx2/logs" localinfo amxx_modules "addons/amxmodx2/configs/modules.ini" localinfo amxx_modulesdir "addons/amxmodx2/modules" localinfo amxx_plugins "addons/amxmodx2/configs/plugins.ini" localinfo amxx_pluginsdir "addons/amxmodx2/plugins" localinfo amxx_vault "addons/amxmodx2/data/vault.ini" localinfo csstats "addons/amxmodx2/data/csstats.dat" localinfo csstats_score "addons/amxmodx2/data/csstats.amxx" localinfo amx_basedir "addons/amxmodx2" localinfo amx_configdir "addons/amxmodx2/configs" localinfo amx_langdir "addons/amxmodx2/data/amxmod-lang" localinfo amx_logdir "addons/amxmodx2/logs" localinfo amx_modulesdir "addons/amxmodx2/modules" localinfo amx_pluginsdir "addons/amxmodx2/plugins"
- Теперь второй сервер необходимо будет запускать с параметром командной строки: +exec amxmodx2.cfg
Вопросы по компилированию
Что такое компиляция?
- Это процесс, который переводит текстовые файлы (*.sma), содержащие исходный код (т.е. инструкции для AMX Mod X, который их исполняет), в формат, более пригодный для исполнения. За счет этого скорость выполнения плагинов возрастает многократно, упрощается разработка "движка", который эти плагины исполняет, а также в некотором смысле защищается авторский код. Почему в "некотором смысле"? Потому что все AMX Mod X плагины должны публиковаться под лицензией GNU General Public License. В случае опубликования плагина лицензия обязывает также публиковать его исходный код. Откомпилированные плагины имеют расширение .amxx. Именно файлы этого типа, а не .sma, должны указываться в файле plugins.ini для последующей корректной загрузки плагина.
Как компилировать плагины?
- Базовую информацию вы можете найти на этой странице.
Как упростить процесс компилирования?
- Можно написать стороннюю программу или скрипт, например такой, как пакетный batch файл. Например, создайте файл make.bat со следующим содержимым:
@amxxpc.exe %1 -i.\include -o.\compiled\%1
- Чтобы с помощью него откомпилировать плагин, необходимо выполнить следующую команду:
make.bat my_plugin.sma
- В итоге откомпилированный файл будет помещен в каталог compiled текущей директории. Если его там нет, значит в процессе компилирования возникли фатальные ошибки, которые выводятся на экран.
- Если вам необходимо (например, в случае ошибок) отправить кому-нибудь результат компиляции, можете перенаправить вывод информации о процессе компилирования в файл, например таким образом:
make.bat my_plugin.sma > my_plugin.log
Компилятор выводит "max. usage is unknown, due to recursion"
- Ничего страшного. Просто компилятор не может вычислить предполагаемый объем памяти, используемый вашим плагином.
Вопросы по скриптингу
С чего начать?
А стоит ли вообще начинать?
- В зависимости от того, какую цель вы преследуете, а также от вашего желания и потенциала.