Помощь Конфигурация AMX Mod X

loveyoush

Заблокирован
10.01.2024
35
-4
  • Заблокирован
  • #1
Введение
Устанавливая AMX Mod X, вы получаете ряд стандартных плагинов и конфигов, позволяющих конфигурировать сервер по своему разумению. Этот гайд содержит описание основных настроек - то, что должен знать любой админ. Команда Dev-CS понимает, что в век игровых хостингов и панелей управления можно вообще ничего не знать и держать сервер, но если вы хотите перерасти нулевой уровень, создать действительно что-то хорошее с какими-то своими особенностями, то вам рано или поздно придётся понимать, за что отвечает каждый плагин и каждая настройка. Мы не можем рассказать абсолютно обо всём, но про функционал "из коробки" - вполне, понимания которого достаточно чтобы двигаться дальше.
За основу взята версия 5151

Cписок плагинов


Название

Назначение

admin.amxx

Подключаем админов из файла users.ini

admin_sql.amxx

Подключаем админов из базы SQL

admincmd.amxx

Базовые команды админа (кик/слэп/бан)

adminhelp.amxx

FAQ по админским командам. Для вызова в консоли сервера пропишите amx_help

adminslots.amxx

Резервация слота для админа. Например, если на сервере 30 слотов и N мы зарезервировали, то смогут зайти только 30-N игроков, даже если админов в игре нет

multilingual.amxx

Поддержка мультиязычности. То есть игрок может выбрать тот язык на сервере, который хочет.

menufront.amxx

Общее админское меню для удобного вывода всех остальных

cmdmenu.amxx

Голосовое меню и меню ряда серверных настроек. Находятся в файле addons/amxmodx/configs/cvars.ini

plmenu.amxx

Меню действий с игроками (кик, бан и.т.д.)

telemenu.amxx

Админское меню телепортации

mapsmenu.amxx

Админское меню карт(голосование за смену карты, смена карты и.т.д.).

adminchat.amxx

Отдельный чат для админов

antiflood.amxx

Запрещает посылать сообщения в чат чаще, чем раз в N секунд.

scrollmsg.amxx

Показывает на экране движущееся сообщение. По сути плагин рекламы.

imessage.amxx

Показывает сообщение в HUD. Ещё один плагин рекламы.

adminvote.amxx

Возможность админам устраивать голосования

nextmap.amxx

Показывает следующую карту по команде чата say nextmap

mapchooser.amxx

Менеджер карт. Позволяет игрокам выбирать следующую карту, продлевать текущую, номинировать и.т.п

timeleft.amxx

Показывает, сколько осталось времени до конца карты по команде чата say timeleft

pausecfg.amxx

Позволяет ставить плагины на паузу

statscfg.amxx

Конфигурация статистики

pluginmenu.amxx

Меню кваров и команд плагинов

restmenu.amxx

Менюшка, позволяющая запрещать использование определённых видов оружия

statsx.amxx

Стандартная статистика. Для работы требуется модуль CSX. По умолчанию в комплекте есть.

miscstats.amxx

Вывод анонсов статистики. Крики Multikill и.т.п.

stats_logging.amxx

Логирование и ведение статистики оружия. Для работы требуется модуль CSX. По умолчанию в комплекте есть.


Базовые настройки

Располагаются в ../addons/amxmodx/configs/amxx.cfg

Квар

Значение по умолчанию

Назначение

Плагины, которые работают с кваром

amx_default_access


"z"

Уровень доступа простого игрока

admin.amxx

amx_password_field


"_pw"

Название ключа setinfo, где пользователь хранит свой пароль от админки.

admin.amxx

amx_mode


1

Управляет работой админских прав
0 - отключает проверку игроков на наличие прав админа. Как итог - на сервере админов не будет.

1 - Обычный режим. У админов есть админские права, игроки также свободно заходят, но без прав администратора.

2 - Кикает всех, кто не находится в списке админов.

admin.amxx

amx_show_activity


2

Оповещение игроков о действиях администратора
0 - Отключено. Можно банить, кикать втихомолку.

1 - Включено, все будут видеть что делает админ, но не будут знать кто именно.

2 - Включено. Все будут видеть какой админ что делает.


admin.amxx

adminchat.amxx

amx_scrollmsg


"Welcome to %hostname% -- This server is using AMX Mod X" 600

Параметры движущейся рекламной строки.

scrollmsg.amxx

amx_imessage






"Welcome to %hostname" "000255100"



"This server is using AMX Mod X\nVisit our official site" "00010025"

Параметры рекламного сообщения в HUD.

imessage.amxx

amx_freq_imessage


180

Частота отображения рекламного сообщения в HUD в секундах

imessage.amxx

amx_flood_time


0.75

Минимальное время между 2 сообщениями от одного игрока. Предотвращает флуд в чате.

antiflood.amxx

amx_plmenu_bantimes


0 5 10 15 30 45 60

Времена бана в минутах. 0 = бан навсегда

plmenu.amxx

amx_tempban_maxsize


4320

Максимальное время в минутах для НЕ перманентного бана

amx_plmenu_slapdmg


0 1 5

Урон от слапа в slap menu

amx_reservation


0

Число резервных слотов.

adminslots.amxx

amx_time_display


"ab 1200" "ab 600" "ab 300" "ab 180" "ab 60" "bcde 11"

Частота оповещения игроков о времени до конца карты в секундах. Настраивается флагами:
a - Показать белый цвет сверху в HUD

b - Использовать голос

c - не использовать слово "remaining" в голосе

d - Не использовать слова "hours/minutes/seconds" в голосе

e - Показывать/говорить, если осталось времени меньше, чем указано в этом параметре

timeleft.amxx

amx_time_voice


1

Голосовое сопровождение "say thetime" и "say timeleft"

timeleft.amxx

amx_vote_delay


10

Минимальная задержка в секундах между 2 голосованиями

admin.amxx
adminvote.amxx
mapsmenu.amxx

amx_vote_time


10

Длительность голосования в секундах

admin.amxx
adminvote.amxx
mapsmenu.amxx

amx_vote_answers


1

Отображает всем кто и за что голосует

admin.amxx
adminvote.amxx
mapsmenu.amxx
mapchooser.amxx

amx_voteban_ratio


0.40

Доля игроков, которые должны прописать voteban в чате, чтобы открыть голосование за кик определённого игрока. Значение задаётся числом от 0 до 1.

admin.amxx
adminvote.amxx

amx_votekick_ratio


0.40

Доля игроков, которые должны прописать votekick в чате, чтобы открыть голосование за кик определённого игрока. Значение задаётся числом от 0 до 1.

admin.amxx
adminvote.amxx

amx_votemap_ratio


0.40

Доля игроков, которые должны прописать votemap в чате, чтобы открыть голосование за кик определённого игрока. Значение задаётся числом от 0 до 1.

admin.amxx
adminvote.amxx
mapsmenu.amxx

amx_vote_ratio


0.40

Минимальная доля проголосовавших игроков для утверждения голосования.

admin.amxx
adminvote.amxx

amx_extendmap_max


90

Максимальное время на продление голосования

mapchooser.amxx

amx_extendmap_step


15

Время, на которое продлевается текущая карта при выборе продления в голосовании

mapchooser.amxx

amx_client_languages


1

Добавляет или убирает выбор языка на сервере для каждого клиента

multilingual.amxx

amx_debug


1


Устанавливает опцию дебага(отладки) у плагинов:

0 - Без отладки. При возникновении ошибки будет идти запись в лог, но без расшифровки.

1 - Плагины с опцией "debug" в plugins.ini будут находиться в режиме отладки.

2 - Все плагины находятся в режиме отладки. Учтите, что включение отладки повышает нагрузку на процессор, поэтому крайне не рекомендуется использовать "2" без необходимости.

amx_mldebug



Язык лога, на котором будет писаться дебаг. Можно ставить обозначения из 2 букв. "ru", "en","de" и.т.п.

amx_language_display_msg


1

Отображение информации о языках игроку сразу после подключения к серверу

multilingual.amxx

amx_help_display_msg


1

Отображать игрокам о команде amx_help как только они подключатся к серверу.

adminhelp.amxx

amx_help_display_msg_time

15

Через сколько секунд после заходи игрока на сервер отобразится информация о команде amx_help

amx_help_amount_per_page


10

Какое количество команд отображать при вводе команды amx_help

adminhelp.amxx

amx_hideslots


0

Скрыть определённое количество слотов на сервере. К скрытым можно подключиться только командой connect ip:port

adminslots.amxx

amx_language


"ru"

Язык сервера по умолчанию

multilingual.amxx

csstats_rank


1

Режим ведения статистики.
0 - ник
1 - SteamID
2 - IP

csstats_maxsize


3500

Максимальный размер файла статистики. При достижении статистика обнуляется.

csstats_rankbots


0

0 - не учитывать ботов, 1 - учитывать.

amx_statsx_duration


12.0

Длительность показа статистики в HUD

statsx.amxx

amx_statsx_freeze


-2.0

Время отображения статистики (HUD) в конца раунда. Отрицательные значения отключают опцию.

statsx.amxx

amx_restrmapsettings


0

Будет плагин запрета оружия(Restrict weapons) использовать отдельный конфиг для каждой карты или нет. Таким образом можно ограничить на определённой карте какое-либо оружие. 0 = нет, 1 = да. Если 1, то конфиг имеет следующий формат: weaprest_mapname.ini. Например, weaprest_de_dust.ini

restmenu.amxx

SQL

За работу с базой данных отвечает модуль mysql_amxx. Поставляется с AMX Mod X. Настройки подключения располагаются в
../addons/amxmodx/configs/sql.cfg

Квар


Значение по умолчанию

Назначение

amx_sql_host


"127.0.0.1"

IP адрес sql-сервера

amx_sql_user


"root"

Имя пользователя

amx_sql_pass


""

Пароль подключения

amx_sql_db


"amx"

Название базы данных

amx_sql_table


"admins"

Таблица для плагина admin_sql.amxx

amx_sql_type


"mysql"

Тип коннекта к базе




amx_sql_timeout



60




Тайм-аут коннекта к базе

Карты

Маплист


Карты прописываются в ../cstrike/addons//amxmodx/congigs/maps.ini или ../cstrike/mapcycle.txt. Если в maps.ini прописаны карты, то будут использоваться они. Если файл пуст или отсутствует, то карты будут браться из mapcycle.txt


Конфигурация карт

Далеко не все знают, что для каждой карты или типа карт можно настроить свой список кваров и плагинов стандартными средствами.


Меню

Здесь можно видеть те действия с сервером и игроками, которые может производить админ, имея соответствующие уровни доступа

Действия админа с игроками


Файл:

addons\amxmodx\configs\clcmds.ini

Формат:

"Name" "Command" "Flags" "Access level"

Опции:

Name - текст, который будет отображаться в меню админа.
Command - исполняемая консольная команда.

Flags - флаги. Могут быть следующими:

a - выполнить в консоли сервера

b - выполнить в консоли админа

c - выполнить на выбранном игроке

d - показать меню админа после выполнения

Access level - уровень доступа админа для выполнения команды

Пример:

"Slay player" "amx_slay #%userid%" "bd" "u"


Действия админа с сервером


Файл:

addons\amxmodx\configs\cmds.ini

Формат:

"Name" "Command" "Flags" "Access Level"

Опции:

Name - текст, который будет отображаться в меню админа.
Command - исполняемая консольная команда.

Flags - флаги. Могут быть следующими:

a - выполнить в консоли сервера

b - выполнить в консоли админа

c - выполнить на выбранном игроке

d - показать меню админа после выполнения

Access level - уровень доступа админа для выполнения команды

Пример:

"Pause" "amx_pause" "bd" "u"

Подключаемые конфиги


Файл:

addons\amxmodx\configs\configs.ini

Формат:

"Name" "Command" "Flags" "Access Level"

Опции:

Name - текст, который будет отображаться в меню админа.
Command - исполняемая консольная команда.

Flags - флаги. Могут быть следующими:

a - выполнить в консоли сервера

b - выполнить в консоли админа

c - выполнить на выбранном игроке

d - показать меню админа после выполнения

Access level - уровень доступа админа для выполнения команды

Пример:

"PUBLIC Settings" "servercfgfile server.cfg;exec server.cfg" "a" "u"

Серверные переменные


Файл:

addons\amxmodx\configs\cvars.ini. Используется плагином cmdmenu.amxx

Формат:

"CVAR" "Values" ... "Access Level"

Опции:

CVAR - название квара
Values - список значений, выводимых у этого квара в меню

Пример:

"mp_autoteambalance" "0" "1" "2" "u"

Голосовые сообщения


Файл:

addons\amxmodx\configs\speech.ini

Формат:

"Name" "Command" "Flags" "Access Level"

Опции:


Name - текст, который будет отображаться в меню админа.

Command - исполняемая консольная команда.

Flags - флаги. Могут быть следующими:

a - выполнить в консоли сервера

b - выполнить в консоли админа

c - выполнить на выбранном игроке

d - показать меню админа после выполнения

Access level - уровень доступа админа для выполнения команды

Пример:

"Hello!" "spk \'vox/hello\'" "cd" "u"


Добавление администраторов на сервер


Админа можно добавить как через файл ../addons/amxmodx/configs/users.ini(первый способ), так и через базу данных SQL(второй способ). Через базу добавлять удобнее, если у вас много серверов и админ является админом одновременно на всех серверах. Если сервер один, то лучше добавить первым способом, так как локальное хранение надёжнее, чем на сервере SQL.

Первый способ(users.ini)
Откройте файл ../addons/amxmodx/configs/users.ini. Запись администратора имеет четыре опции: аутенфикацию, пароль, доступ, свойства подключения.
Записи вводятся на каждой новой строке, опции записи заключаются в кавычки и разделяются пробелом.

Типичная запись выглядит так:
Код:
"Dude" "ghtghjwtccjh8086" "abcdefghijklmnopqrstu" "a"
C++
Copy


Dude - аутентификация админа на сервере. По нику.
ghtghjwtccjh8086 - пароль админа.
abcdefghijklmnopqrstu - уровни доступа.
a - свойства подключения.

Уровни доступа:


Уровень доступа(буква в админке)


Обозначение N1 в amxconst.inc


Обозначение N2 в amxconst.inc


Назначение


a


ADMIN_IMMUNITY


1<<0


иммунитет (не может быть удален/забанен/убит и действия от других команд)


b


ADMIN_RESERVATION


1<<1


резервация (может зайти на резервный слот)


c


ADMIN_KICK


1<<2


доступ к команде amx_kick


d


ADMIN_BAN


1<<3


доступ к командам amx_ban и amx_unban


e


ADMIN_SLAY


1<<4


доступ к командам amx_slay и amx_slap


f


ADMIN_MAP


1<<5


доступ к команде amx_map


g


ADMIN_CVAR


1<<6


доступ к команде amx_cvar (не все команды доступны)


h


ADMIN_CFG


1<<7


доступ к команде amx_cfg


i


ADMIN_CHAT


1<<8


доступ к команде amx_chat и других командам чата


j


ADMIN_VOTE


1<<9


доступ к команде amx_vote и другим командам голосования


k


ADMIN_PASSWORD


1<<10


доступ к команде sv_password (через команду amx_cvar)


l


ADMIN_RCON


1<<11


доступ к командам amx_rcon и rcon_password (через команду amx_cvar)


m


ADMIN_LEVEL_A


1<<12


резервный уровень A. Резервные уровни не используются и оставлены для ваших плагинов


n


ADMIN_LEVEL_B


1<<13


резервный уровень B


o


ADMIN_LEVEL_C


1<<14


резервный уровень C


p


ADMIN_LEVEL_D


1<<15


резервный уровень D


q


ADMIN_LEVEL_E


1<<16


резервный уровень E


r


ADMIN_LEVEL_F


1<<17


резервный уровень F


s


ADMIN_LEVEL_G


1<<18


резервный уровень G


t


ADMIN_LEVEL_H


1<<19


резервный уровень H


u


ADMIN_MENU


1<<20


резервный уровень H


v


ADMIN_BAN_TEMP


1<<21


Скрытый дополнительный флаг для скриптеров. В админке как правило не используется.


любая


ADMIN_ALL


0


Скрытый дополнительный флаг для скриптеров. В админке как правило не используется.


y


ADMIN_ADMIN


1<<24


Скрытый дополнительный флаг для скриптеров. В админке как правило не используется.


z


ADMIN_USER


1<<25


простой игрок(не админ)


Свойства подключения(флаги):


Флаг


Обозначение N1 в amxconst.inc


Обозначение N2 в amxconst.inc


значение


a


FLAG_KICK


1<<0


удалить игрока с сервера при неверном пароле


b


FLAG_TAG


1<<1


тег клана/команды


c


FLAG_AUTHID


1<<2


аутенфикация через Steam ID


d


FLAG_IP


1<<3


аутенфикация через IP


e


FLAG_NOPASS


1<<4


пароль не проверяется (только имя/IP/Steam ID необходимо)


k


FLAG_CASE_SENSITIVE


1<<10


Для скриптеров. В админке не используется

Разберём пару учебных записей.

Код:
"STEAM_0:0:15619" "" "abcdefghijklmnopqrstu" "ce"
C++
Copy

  1. STEAM_0:0:15619 - наш метод аутентификации. Указан Steam ID администратора. То есть только с таким Steam ID вы можете стать админом.
  2. "" - пароль. Пароль не прописан, так как использовался тип аутенфикации по Steam ID.
  3. Полный доступ, добавлены все уровни
  4. Аутентификация через Steam ID ("c") и без пароля ("e").

Такой метод хорош если вы выдаёте админку по Steam ID из лицензионной копии игры(как говорят, "играет со стима"). Если же ваш админ играет с пиратской копии, лучше не выдавать админку по Steam ID из соображений безопасности. Лицензионные Steam ID уникальные, а вот пиратские - нет.

Код:
"Dude" "ghtghjwtccjh8086" "abcde" "a"
C++
Copy


  1. Dude - наш метод аутентификации. Указан ник администратора. То есть только с таким ником вы можете стать админом.
  2. ghtghjwtccjh8086 - пароль. Помимо ника должен совпасть пароль.
  3. abcde - доступ. Как видите, букв меньше чем в прошлом примере, соответственно, меньше прав и возможностей на сервере.
  4. Аутентификация через соответствие ника и пароля("a").
Для аутентификации игрока с ником Dude как админа необходимо, чтобы он прописал в config.cfg или консоли:

Код:
setinfo "_pw" "ghtghjwtccjh8086"
C++
Copy
Где "_pw" - это значение команды "amx_password_field" из файла amxx.cfg.
Примечание: Не используйте флаг доступа "z" для администраторов.


Этот метод авторизации подходит для администраторов, играющих с пиратской копии Counter-Strike.

Удаление администратора:

Чтобы снять с администратора его полномочия, надо в файле ../addons/amxmodx/configs/users.ini перед его записью установить знак ; (комментарий), в результате чего он не будет считываться:
Код:
;"STEAM_0:0:123456" "" "abcdefghijklmnopqrstu" "ce"
C++
Copy

либо удалить эту строку.


Второй способ(SQL)

Убедитесь, что настроили SQL доступ (об этом написано выше). Затем включите плагин admin_sql.amxx вместо admin.amxx в списке плагинов ../addons/amxmodx/configs/plugins.ini. Должно получиться так:
Код:
;admin.amxx
admin_sql.amxx
C++
Copy


После первого запуска сервера в базе данных будет создана таблица amx_sql_table. Вы можете добавить админа через SQL запрос, используя инструменты для работы с базами данных. Например, phpMyAdmin или adminer. Или вы можете добавить администратора через команду amx_addadmin, которая работает, как и для SQL, так и для users.ini.

Пример добавления через SQL запрос:
Код:
INSERT INTO admins VALUES("STEAM_0:1:15619", "", "abcdefghijklmnopqrstu", "ce");
C++
Copy


Пример добавления через команду amx_addadmin
В консоли сервера прописываем
Код:
amx_addadmin "STEAM_0:1:15619" "abcdefghijklmnopqrstu"
C++
Copy



Настройка уровней доступа админа

Выше я писал про Access levels, или уровни доступа админа для выполнения какой-либо команды. Вы можете настроить уровни доступа по своему вкусу. Вовсе необязательно, чтобы, например, бан шёл на букву "d". Это можно изменить в файле ../addons/amxmodx/configs/cmdaccess.ini
Его структура выглядит так:
Код:
"amx_statscfgmenu" "l" ; statscfg.amxx
"amx_statscfg" "l" ; statscfg.amxx
"amx_reloadadmins" "l" ; amxbans_core.amxx
C++
Copy

amx_statscfgmenu // админская команда
l // буква админки, отвечающая за доступ к этой команде
; statscfg.amxx // комментарий, показывающий плагин, отвечающий за работоспособность админской команды

Мы можем изменить доступы к определённым командам. Например, мы хотим букву l зарезервировать под свои нужды. Для этого нам надо раскидать права, прописанные на букву l, по другим буквам.
Код:
"amx_statscfgmenu" "d" ; statscfg.amxx
"amx_statscfg" "d" ; statscfg.amxx
"amx_reloadadmins" "d" ; amxbans_core.amxx
C++
Copy
Теперь буква l свободна, а доступ к вышеуказанным 3 командам получает админ с буквой d
 
Сверху Снизу