Difference between revisions of "Ru AMX Mod X FAQ"

From AlliedModders Wiki
Jump to: navigation, search
m
m
Line 2: Line 2:
 
[[Category:Ru:AMX Mod X]]
 
[[Category:Ru:AMX Mod X]]
 
= Общие положения, термины, сокращения и условные обозначения =
 
= Общие положения, термины, сокращения и условные обозначения =
:* HL или HL1 - аббревиатура от Half-Life (часть первая);
+
:* HL или HL1 - аббревиатура от [[Half-Life]] (часть первая);
 
:* Mod - "мод", модификация - дополнение к чему-либо, как правило, расширяющее/изменяющее функциональность;
 
:* Mod - "мод", модификация - дополнение к чему-либо, как правило, расширяющее/изменяющее функциональность;
 
:* HL Engine - "движок" Half-Life - "центральный модуль", осуществляющий выполнение базовых "общемодовых" задач;
 
:* HL Engine - "движок" Half-Life - "центральный модуль", осуществляющий выполнение базовых "общемодовых" задач;
:* MM - MetaMod - сторонний мод особого типа, является промежуточным звеном в системе "HL движок - HL мод";
+
:* MM - [[MetaMod]] - сторонний мод особого типа, является промежуточным звеном в системе "HL движок - HL мод";
 
:* AMXX - аббревиатура от [[AMX Mod X]] - MetaMod plugin ("плагин"), своего рода MetaMod мод;
 
:* AMXX - аббревиатура от [[AMX Mod X]] - MetaMod plugin ("плагин"), своего рода MetaMod мод;
 
:* Map - "карта" - определяет внешний вид территории, на которой происходит игровое действие;
 
:* Map - "карта" - определяет внешний вид территории, на которой происходит игровое действие;
Line 14: Line 14:
 
:* DM - аббревиатура от Death Match - динамичный мультиплеер тип игры, когда после "смерти" игрока происходит его скорый спавн ("респавн");
 
:* DM - аббревиатура от Death Match - динамичный мультиплеер тип игры, когда после "смерти" игрока происходит его скорый спавн ("респавн");
 
:* HLDM - аббревиатура от Half-Life Death Match - оригинальный HL мод DM типа;
 
:* HLDM - аббревиатура от Half-Life Death Match - оригинальный HL мод DM типа;
:* CS - аббревиатура от Counter-Stirke - наиболее популярный HL мод;
+
:* CS - аббревиатура от [[Counter-Stirke]] - наиболее популярный HL мод;
:* VALVE - кампания, разработчик HL и CS, также редко используется как термин, синонимичный HLDM, но направленный на акцентирование названия директории мода ("valve");
+
:* VALVE - [[VALVe Software|корпорация, разработчик HL и CS]], также редко используется как термин, синонимичный HLDM, но подчеркивающий название директории мода ("valve");
:* $MODDIR - способ обобщенного указания названия корневой директории мода, например: ''cstrike'', ''valve'';
+
:* $MODDIR - способ условного обозначения корневой директории мода, например: ''cstrike'', ''valve'';
:* $MMDIR - способ обобщенного указания относительного пути (относительно пути к $MODDIR) к корневой директории MetaMod, по-умолчанию: ''addons/metamod'';
+
:* $MMDIR - способ условного обозначения относительного пути (относительно пути к $MODDIR) к корневой директории MetaMod, по-умолчанию: ''addons/metamod'';
:* $AMXMODX - способ обобщенного указания относительного пути (относительно пути к $MODDIR) к корневой директории AMX Mod X, по-умолчанию: ''addons/amxmodx''.
+
:* $AMXMODX - способ условного обозначения относительного пути (относительно пути к $MODDIR) к корневой директории AMX Mod X, по-умолчанию: ''addons/amxmodx''.
  
  
Line 41: Line 41:
  
 
== Как запустить два различных сервера AMX Mod X? ==
 
== Как запустить два различных сервера AMX Mod X? ==
: К примеру, вы хотите запустить два различных сервера из одной ''cstrike'' директории на базе различных AMX Mod X/Metamod плагинов, настроек и прочего. Это решаемо. Один из примеров для win32 системы приведен ниже:
+
: К примеру, вы хотите запустить два различных сервера из одной ''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"
Line 88: Line 88:
  
 
== Компилятор выводит "max. usage is unknown, due to recursion" ==
 
== Компилятор выводит "max. usage is unknown, due to recursion" ==
: Ничего страшного. Просто компилятор не может вычислить предполагаемый объем памяти, используемый вашим плагином.
+
: Ничего страшного - просто компилятор не может вычислить предполагаемый объем памяти, используемый вашим плагином.
  
 
= Вопросы по скриптингу =
 
= Вопросы по скриптингу =
  
 
== С чего начать? ==
 
== С чего начать? ==
: С [[Ru Fundamental Basics of AMX Mod X Scripting|фундаментальных основ AMX Mod X скриптинга]].
+
: С со статьи [[Ru Fundamental Basics of AMX Mod X Scripting|Фундаментальные основы AMX Mod X скриптинга]].
  
 
== А стоит ли вообще начинать? ==
 
== А стоит ли вообще начинать? ==
 
: В зависимости от того, какую цель вы преследуете, а также от вашего желания и потенциала.
 
: В зависимости от того, какую цель вы преследуете, а также от вашего желания и потенциала.

Revision as of 02:37, 19 March 2007

Общие положения, термины, сокращения и условные обозначения

  • 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"

Ничего страшного - просто компилятор не может вычислить предполагаемый объем памяти, используемый вашим плагином.

Вопросы по скриптингу

С чего начать?

С со статьи Фундаментальные основы AMX Mod X скриптинга.

А стоит ли вообще начинать?

В зависимости от того, какую цель вы преследуете, а также от вашего желания и потенциала.