Константы
<cs-dir> - корень
установленной КС/сервера кс/папку, куда вы скачали и распаковали кс. в
ней хранятся следующие файлы: в Windows версии это hlds.exe hltv.exe
hl.exe и тп. а в Linux версии это hlds_ru, hlds_i686 hlds_i486 и тп. ...
думаю что и так понятно, что это за папка.
<filename> -
имя файла, над которым мы работаем. Константа вводится для того, чтобы
сохранить актуальность статьи надолго, потому что имена библиотек модов
содержат свою версию, т.е. от версии к версии имена файлов меняются.
Так же в путях до папок или файлов я буду ставит "/" вместо "\". мне так удобнее.
metamodПрежде
чем рассказывать о том, как настраивать amxx (там будем называть
amxmodx), нужно знать, как и с помощью чего его подключить к CS 1.6
Существует такой файл <cs-dir>/cstrike/liblist.gam в котором указывается путь, до мода кс, который будет управлять игрой.
Содержание файла следующие:
url_info "www.counter-strike.net"
url_dl ""
version "1.6"
size "184000000"
svonly "0"
secure "1"
type "multiplayer_only"
cldll "1"
hlversion "1111"
nomodels "1"
nohimodel "1"
mpentity "info_player_start"
gamedll "dlls\mp.dll"
gamedll_linux "dlls/cs_i386.so"
trainmap "tr_1"
Нас интересуют gamedll* параметры.
gamedll - параметр для использования в Windows
gamedll_linux - соответственно в Linux.
По умолчанию там подключена стандартная библиотека. Что бы получить больше возможности и гибкости в подключение модов и плагинов, мы можем подключить другую библиотеку, стороннею и не входящую в кс. т.е. её надо скачать.
Скачать для Windows
Скачать для Linux
Скачать для 64-битных ОС.
Дальше немного оформления. Принято, что в папке Для Windows: gamedll "addons/metamod/dlls/ Для Linux Всё, больше мы файлы CS трогать не будем. За исключением server.cfg, но уже если только для какого конкретного плагина. Что такое amxmodx? Установка и подключение плагинов amxmodx. Скачивать я рекомендую архив файлов AMX Mod X Base. Там есть для linux ( Теперь устанавливаем. 3) заходим в папку Для Windows: Для Linux: Всё, amxmodx подключен. О файлах и папках configs - все конфигурационные файлы amxmodx. Нам по большому счёту интересна только папка configs, где мы будем редактировать файлы с целью добавления или удаления модулей и плагинов, а так же для настройки модов. amxx.cfg - основной конфиг amxmodx. Настроек там не много. Настройка amxmodx. Что бы привести amxx к рабочему чистому виду, нужно сделать следующее: Админка Вот на русский переведён в общих чертах: Последняя строчка дана для реального примера. это админка того компьютера, на котором запущен сервер. стирайте строчку или вписывайте вместо loopback свой IP адрес... Кто не заметил и не понял, то знак ";" вначале строчки говорит о том, что она закоментирована и мод при чтение кофига не берёт эти строчки во внимание. Настройка мода. amx_default_access "z" - дефолтный флаг, который назначится пользователю. можно внимать хоть все флаги доступа из users.ini, тогда все будут админами. "z" означает что это простой игрок. а дальше ещё небольшой набор параметров для тех, кто ставил аддоны статистики к моду amxmodx.... csstats_rank - режим привязки ранк статистики: 0 - по нику, 1- по ID, 2 - по IP. Достаточно часто из-за того, что ставится "1" или "2" сервера падают когда на них заходят более 1 человека. происходит это из-за того, что сервер не назначает уникального ID non steam клиентам и (или) не определяет игрока по IP. это зависит от 2-х вещей: 1) параметры запуска, а именно sv_lan 0/1, 2) патч сервера. Рекомендации
Возвращаемся к нашему файлу liblist.gam. И, в зависимости от того, какую ОС вы используете, нужно заменить параметры
Своими словами это мод metamod`a, который позволяет использовать расширить возможности движка КС, навешать на него полезности, красивости, новый функционал и кардинально поменять геймплэй.
Официальный сайт
Страница загрузки
Так же рекомендую сразу скачать Counter-Strike Addon - это дополнительный пакет модулей для amxx, что бы можно было воспользоваться большим кол-вом возможностей (статистика, дополнительные моды игры, типа warcraft, zombie и пр...).
На странице загрузки нажимайте на Download - тем самым попадёте на скачивание последнего релиза, а не на архив релизов.. Так вы не запутаетесь.
Вы скачали 2 архива - amxmodx-1.8.1-base.zip и amxmodx-1.8.1-cstrike.zip. (1.8.1 - это версия на сегодняшний день, потом естественно она поменяется по мере выхода новых версий).
1) Открываем base и видим там папку addons, в которой есть ещё подкаталоги. берём папку addons и распаковываем в
2) Если нужна статистика или вы будете ставить какой нить мод игры, типа warcraft, zombie, hero и тд... то, открываем архив cstrike и выполняем тоже самое. (папку addons в папку
data - статистика и в папке lang файлы со строчками сообщений от мода и различных плагинов. в txt файлах хранится несколько вариантов написания одной и тойже строчки на разных языках
dlls - библиотека мода.
documentation - документация, весьма полезная вещь
logs - логи сообщений мода. туда имеет смысл лезть только в случае сбоя в работе модулей иплагинов
modules - тут лежат модули в форумате библиотек (для Windows это *.dll файлы, а для Linux это *.so файлы)
plugins - сюда бросаются плагины в формате *.amxx
scripting - скрипт файлы и исходники плаигнов. Нужны для того, что бы можно было какой нить плагин подправить под себя. Но это не тривиальная задача, поэтому по данному вопросу отдельная тема.
файлы из addons/amxmodx/configs/
configs.ini - список конфигов и их названий для быстрого запуска под определённые нужды. мы им не пользуемся. Это для CW серверов и об этом тоже отдельная статья.
maps.ini - список карт, который будет циркулировать на сервере и из которого плагин устанавливающий голосование будет набирать названия карт. Сотрите оттуда всё и вставьте свой набор карт. Содержимое этого файла должно совпадать с содержимом файла
speech.ini - фигня для развлекухи админа, которая мешает всем! это проигрывание всяких боемых кличей и команд в игре.
core.ini - файл содержит переменные для amxmodx, которые рекомендуется не трогать.
modules.ini - список модулей
sql.cfg - файл настройки доступа к sql серверу. (некоторые модули и плагины могут использовать для хранения данных как sql_lite в файлах, так и полноценные таблицы БД)
custommenuitems.cfg - редактирование основного меню мода amxx - amxmodmenu
stats.ini - файл с настройками вкл/выкл функций модуля статистики.
clcmds.ini - не смог сформулировать ))) там можно поменять реакцию и уровень доступа команды к серверу. рекомендую не трогать, имхо ничё полезного не принесёт.
cvars.ini - набор команд, которые можно менять через основное меню мода, и можно ли через меню или консоли. три различных позиции, которые можно выбрать через меню.
plugins.ini - список плагинов.
cmdaccess.ini - полезный конфиг для разграничения прав на определённые для админов. Об это в разделе настройки админки.
hamdata.ini - не знаю. кто знает, сообщите.
users.ini - файл с настройками админки и доступа к серверу.
cmds.ini - разрешённые команды в меню и уровень разрешения этих команд. - бесполезняк имхо, не трогайте, он вам в 99% не понадобится.
зайти в
- открыть файл modules.ini и закоментировать там все строчки, поставив в начале каждой строки с название модуля знак ";". Всё что там написано сверху на английском можно снести, что бы просто не занимало пространство. Когда будете копировать содержимое файла на форум, в случае возникновения проблем, то этот мусор будет только мешать... вобщем оставьте только названия модулей и закомментируйте всё, что не закомментированно. Мы это делаем для того, что бы модули не запускались повторно. В amxx 1.8.0 и выше есть функция, которая загружает модули в случае, если они необходимы для каких либо модов или плагинов. Если оставить их раскомментированными, то они будут запускаться повторно и в консоль сервера будет сыпаться ряд ошибок с предупреждениями об уже запущеных модулях, которые ни на что не повлияют, но глаз будут резать.
- если вы ставили adodns для amxx, откройте файл amxx.cfg и отлистайте вниз - там несколько параметров добавлено для настройки статистики. Параметр csstats_rank поставьте в значение 0. Это сделано для того, что бы исключить зависание non steam сервера при подключение к нему игровов. Это из-за ошибки в модуле статистики. Так же на зависнет/не зависнет влияет параметр запуска sv_lan, потому что он в свою очередь влияет на то, как сервер будет идентифицировать клиентов, по ip или по стим ip. Так же это зависит от используемого non steam патча. Проблема весьма нагромождённая и решается путём эксперимента с параметром запуска sv_lan 0/1 и параметром в кофиге amxx.cfg - csstats_rank 0/1/2.
Открываем users.ini
Его содержимое изначально такое:
; File location: $moddir/addons/amxmodx/configs/users.ini
; Line starting with; is a comment
; Access flags:
; a - immunity (can't be kicked/baned/slayed/slaped and affected by other commmands)
; b - reservation (can join on reserved slots)
; c - amx_kick command
; d - amx_ban and amx_unban commands
; e - amx_slay and amx_slap commands
; f - amx_map command
; g - amx_cvar command (not all cvars will be available)
; h - amx_cfg command
; i - amx_chat and other chat commands
; j - amx_vote and other vote commands
; k - access to sv_password cvar (by amx_cvar command)
; l - access to amx_rcon command and rcon_password cvar (by amx_cvar command)
; m - custom level A (for additional plugins)
; n - custom level B
; o - custom level C
; p - custom level D
; q - custom level E
; r - custom level F
; s - custom level G
; t - custom level H
; u - menu access
; z - user (no admin)
; Account flags:
; a - disconnect player on invalid password
; b - clan tag
; c - this is steamid/wonid
; d - this is ip
; e - password is not checked (only name/ip/steamid needed)
; Password:
; Add to your autoexec.cfg: setinfo _pw "<password>"
; Change _pw to the value of amx_password_field
; Format of admin account:
; <name|ip|steamid> <password> <access flags> <account flags>
; Examples of admin accounts:
; "STEAM_0:0:123456" "" "abcdefghijklmnopqrstu" "ce"
; "123.45.67.89" "" "abcdefghijklmnopqrstu" "de"
; "My Name" "my_password" "abcdefghijklmnopqrstu" "a"
"loopback" "" "abcdefghijklmnopqrstu" "de"
; File location: $moddir/addons/amxmodx/configs/users.ini
; Line starting with; is a comment
; Access flags: - флажки доступа. наборы этих флагов определяют возможности администратора.
; a - иммунитет. защищает админа от диструктивных действий другого администратора и эффектов воздействия некоторых плагинов. (если флаг у админа есть, то он будет защищён от кик, слэп, слэй, бан и других комманд, которые к нему могут применить другие администраторы).
; b - если на сервере есть резервные столы для администратора, то обладатель этого флага будет допущен к их использованию
; c - amx_kick - админу даётся возможность кикать других игроков
; d - amx_ban и amx_unban команды - возможность банить и разбанивать игроков...
; e - amx_slay и amx_slap команды результат которых является кил игрока и отнятие определённого кол-ва хелсов соответственно.
; f - amx_map команда - позволить админу менять карту.
; g - amx_cvar - позволить админу менять квары сервера. (cvars.ini - там указаны наборы комманд которыми можно пользоваться)
; h - amx_cfg команда - позволить админу подгружать геймплей конфиги
; i - amx_chat - это разрешение относится к админским say командам. для админов есть множество различных способов писать текст как в чат, так и на экране у игроков или у когото отдельно...
; j - amx_vote - позволить админу ставить голосования как обычные текстовые, так и ставить на голосование карты для их последующей смены. (так можно обойти отсутствие флага f, имейте ввиду)
; k - доступ к sv_password команде
; l - эот флаг даёт доступ к amx_rcon команде. Оставляйте его только у тех администраторов, кто считается основным, или вменяемым. Этой командой можно сделать на сервере всё что у годно - действуйет как rcon команда сервера.
; m - custom level A (for additional plugins)
; n - custom level B
; o - custom level C
; p - custom level D
; q - custom level E
; r - custom level F
; s - custom level G
; t - custom level H
; u - доступ к меню мода - советую оставить этот флаг у всех админов, т.к. он существенно упрощает и ускоряет
; z - user (no admin) - этот флаг назначается всем игрокам заходящим на сервер, если это не изменено в amxx.cfg в соответствующем пункте. Флаг указывает моду, что это простой юзер и особых привилегий не имеет.
; Account flags: - флаг определяет по какому принципу определяется администратор
; a - этот флаг ставится обычно при использование админки по имени и указывает на то, что если у игрока не принялся пароль или он его не указал, то его кикает с сервера.
; b - clan tag - админку можно назначить так же по тегу команды. разумнее использовать этот флаг вместе с предыдущим
; c - говорит о том, что моду нужно назначить админку по стим айди
; d - админка по IP, можно использовать вместе с флагом "е".
; e - указывает на то, что пароль проверять не надо. рекомендую ставить только с флагом "d", т.к. ip адрес админа узнать сначала надо, а потом умудриться его себе поставить, что в сетях хороших провайдеров сделать довольно сложно.
; Password:
; Add to your autoexec.cfg: setinfo _pw "<password>"
; Change _pw to the value of amx_password_field
тут речь о том, что пароль лучше всего указать в конфиге, который запускается при заходе в игру. команда setinfo _pw "<password>" указывает какой используется пароль при авторизации на сервере. угловые кавычки естественно писать не надо. тег _pw можно заменить на любой другой в конфиге amxx.cfg. Полезно при админках на разных серверах с разными паролями. Об этом позже.
; Format of admin account: - тут показано в каком порядке указываются наборы флажков.
; <name|ip|steamid> <password> <access flags> <account flags>
; Examples of admin accounts:
; "STEAM_0:0:123456" "" "abcdefghijklmnopqrstu" "ce"
; "123.45.67.89" "" "abcdefghijklmnopqrstu" "de"
; "My Name" "my_password" "abcdefghijklmnopqrstu" "a"
сейчас разберём amxx.cfg
Весь кофиг сюда копировать не будем... просто вынесу все параметры
amx_password_field "_pw" - тег для указания пароля. если здесь поменять, то надо будет уже не setinfo _pw "
amx_mode - режим работы мода. есть три значения: 0 - пользователи не проверяются в users.ini, админка не работает. 1 - обычный режим, права проверяются в users.ini. 2 - все, кого нет в users.ini будет выброшены с сервера.
amx_show_activity - режим уведомлений о действиях администратора. так же есть три значания: 0 - нет уведомлений, 1 - все будут видеть что делает админ, но не будет написано имя админа, 2 - будет уведомление о действиях админа с указанием имени админа.
amx_scrollmsg - сообщение которое крутится в нижней части экрана с интервалом, который указан в цифрах после сообщения. 600 секунд по умолчаию. советую поставить 1200 - раздражать хоть не будет частым появлением.
amx_imessage - цветной текст который появляется в верхней части экрана... в тексте можно поставить "\n", тогда после него текст будет спущен на строчку ниже. своеобразный Еnter (конец строки)
amx_freq_imessage - частота появления amx_imessage. по умолчанию стоит 180. рекомундую так же увеличить этот параметр.
amx_plmenu_bantimes - это набор стандартных значений в amx_banmenu. делается для того, чтобы админу было удобно и быстро банить на нужные ему интервалы времени. значения указываются в минутах через пробел. помним что "0" - перманентный бан.
amx_plmenu_slapdmg - тоже, что и amx_plmenu_bantimes, только относится это к слап команде.
amx_flood_time - интервал времени, который лроден пройти между двумя сообщениями в чате одного и того же игрока. в секундах. служит ля защиты от флада в чат. игрок пишущий быстрее предупреждается и его сообщения не выводятся.
amx_reservation - кол-во резервных слотов для администратора владеющим флагом "b" в файле users.ini
amx_hideslots - кол-во спрятаных слотов. просто будет в статистиках и мониторингах показано, что сервер с maxplayers 16 на 15 слотов, при этом будет 1 слот спрятан/
amx_time_voice - 0/1 - включить отключить произношения времени противным кривым голосом каждйы раз, когда кто то в чат напишет thetime или timeleft
amx_vote_delay - время которое нужно выдержать между двумя голосованиями в секундах.
amx_vote_time - время в секундах, ограничивающие длительность голосования.
amx_vote_answers - 0/1 - показывать не показывать результат голосования.
amx_votekick_ratio - по умолчанию 0.40 - процент согласных с голосованием amx_votekick, что бы голосование было успешным.
amx_voteban_ratio - аналогично amx_votekick_ratio
amx_votemap_ratio - аналогично amx_voteban_ratio
amx_vote_ratio - любое другое голосование.
(**примечание: 0,40 - означает всего лишь 40% прогосовавших. ИМХО это не считается общим мнение и процент надо увеличивать, иначе голосования будут проходить не честно**)
amx_extendmap_max - максимальное время в минутах, на которое может быть продлена карта (при старте голосования на выбор карты всегда есть вариант продления карты)
amx_extendmap_step - шаг продления карты в минтах. 15 по умолчанию - будет продлеваться на 15 минут ... и т.п.
amx_client_languages - 0/1 - возможность выбирать язык amxx для пользователя.
amx_debug 0/1/2 - дебаггинг работы мода и плагинов. 0 - отладка не работает, 1 - включается отладка для всех плагинов. 2- включается отладка для плагинов и мода.
amx_mldebug "" - отладка для мультиязыковых плагинов... подробностей не знаю (:
csstats_maxsize - размер файла статистики. по умолчанию стоит 3500. ИМХО мало для того, что бы поставить и забыть про его существование. удвойте и можно очень долго не беспокоиться о том, что в один прекрасный момент он привысит свой лимит и сервер либо не запустится, либо не будет писать стату и скорее всего лагать. особенно опасно тем, у кого клиенты всё время разные и унизаписей создаётся огромное кол-во.
csstats_rankbots - 0/1- вести/не вести статистику для ботов...
amx_statsx_duration - время вывода статистической информации.
1) создать файл plugins-my.ini и сунуть туда все сторонние плагины, которые вы будете подключать. я, например, в общий файл plugins.ini, ничего не дописываю. он существует как есть. Все плагины, которые в нём прописаны. уже работают давно, стабильно и с сбой в их работе случается редко. Единственное что я туда списываю, это плагины статистики, которые добавляются после наложения addons для amxx. Да и так просто аккуратнее.
2) убрать лишние строчки. например те, что выскакивают при заходе игрока на сервере. Например файл открыть adminhelp.txt в папке
3) maps.ini и mapcycle.txt должны совпадать. вот лист и мапцикл в старых версиях брались из разных файлов и естественно не совпадали, если их не сделали идентичными. + меньше заморочек с плагинами использующими эти списки.