Теперь, когда у нас есть установленный и запущенный сервер, нам пора озаботиться вопросами его администрирования. Не секрет, что встроенным Valve средствам администрирования не достает как гибкости, так и банальной функциональности. Так что, если вы хотите облегчить управление собственным сервером, вам нужен сторонний плагин.
Двумя наиболее популярными админ-плагинами являются Mani Admin Plugin и BeetleFart MinimumAdmin Mod. Я расскажу вам только о первом в силу следующих причин:
- С Mani Admin Plugin я знаком гораздо больше, а значит могу рассказать о нем лучше
- Лично мне кажется, что Mani обладает более широкой функциональностью и удобством
- Mani является самым распространенным админ-плагином в мире (на данный момент более половины всех Counter-Strike: Source серверов работают под управлением Mani).
- Плагин непрерывно обновляется, обрастая все большей функциональностью
- Автор плагина прислушивается к нуждам коммьюнити и четко представляет будущее развитие плагина
- К тому же автор плагина просто замечательный человек
Прежде, чем перейти к описанию установки, хочу заметить, что детальное описание всех настроек плагина последует позже (причем вероятно значительно позже) просто по соображениям времени. Сейчас я просто расскажу как устанавливать плагин, как назначать админинов и какие конфигурационные файлы за что отвечают.
I. Установка
Первым делом необходимо скачать последнюю версию плагина.
Итак, следуем на http://mani-admin-plugin.com скроллим вниз до первой новости о релизе и выбираем полную версию плагина для вашей игры из списка ссылок.
Скачиваем файл во временную директорию и распаковываем его. Распаковав получаем полную структуру папок плагина, начиная собственно с папки игры (я буду приводить примеры на основе Counter-Strike: Source, поэтому папка игры будет cstrike).
Для установки плагина на сервер, просто скопируйте получившуюся структуру в папку, где установлен сервер.
Пример: вы распаковали плагин в папку c:\temp\mani, а сервер стоит в папке c:\server. Вам нужно скопировать папку c:\temp\mani\cstrike в папку c:\server поверх уже существующей там.
Если вы все скопировали верно, то в папке c:\server\cstrike\addons у вас появятся файлы mani_admin_plugin.dll и т.п.
Перезапустите сервер. Введите в консоли сервера plugin_print - вы должны увидеть список плагинов, среди которых Mani Admin Plugin. Если не увидели - проверьте правильно ли скопированы файлы.
2. Описание
Теперь перейдем к описанию того, что каждый из файлов делает:
Папка cstrike\addons:
mani_admin_plugin.dll - собственно файл плагина под Windows
mani_admin_plugin.vdf - файл, указывающий серверу откуда необходимо подгрузить плагин
mani_admin_plugin.so - файл плагина под Linux (если вы запускаете сервер под Windows, этот файл можно удалить)
Папка cstrike\addons\mani_admin_plugin\bin:
mani_admin_plugin.dll и mani_admin_plugin.so - это библиотеки плагина под SourceMM для Windows и Linux соответственно. Если вы не знаете, что такое SourceMM или не хотите его использовать - можете просто удалить всю папку
Папка cstrike\cfg:
autoexec.cfg - этот файл не принадлежит самому плагину, а является конфигурационным файлом сервера, подгружаемым при каждом запуске. В версиях плагина 1.2 он не используется (в следующих версиях плагина он будет удален из пакета).
mani_server.cfg - основной файл настройки плагина. Один из двух наиболее важных файлов, именно в нем вам придется копаться больше всего.
Папка cstrike\cfg\mani_admin_plugin:
actionsoundlist.txt - в этом файле прописаны действия, при наступлении которых всем игрокам проигрывается определенных звуковой файл (например вход на сервер, начало голосования и т.п.)
adverts.txt - в этом файле вы можете разместить текстовую рекламу, которая будет демонстрироваться на сервере
cexeclist_all.txt - в этом файле вы можете добавить пункты админского меню и соответствующие им команды. При выборе этих пунктов меню, соответствующие команды будут исполнены на всех клиентах
cexeclist_ct.txt - в этом файле вы можете добавить пункты админского меню и соответствующие им команды. При выборе этих пунктов меню, соответствующие команды будут исполнены на команде CT
cexeclist_player.txt - в этом файле вы можете добавить пункты админского меню и соответствующие им команды. При выборе этих пунктов меню, соответствующие команды будут исполнены на одном выбранном вами игроке
cexeclist_spec.txt - в этом файле вы можете добавить пункты админского меню и соответствующие им команды. При выборе этих пунктов меню, соответствующие команды будут исполнены на всех спектаторах
cexeclist_t.txt - в этом файле вы можете добавить пункты админского меню и соответствующие им команды. При выборе этих пунктов меню, соответствующие команды будут исполнены на команде T
chattriggers.txt - в этом файле настраиваются параметры блокирования say команд. Это полезно для предотвращения флуда популярными командами типа rank, top10 и т.п. Вы можете настроить, что команда будет блокирована полностью (не отобразится в чате и не сработает), блокирована только в чате (не отобразится в чате, но сработает, то есть клиент получит ответ от сервера/плагина) или блокирована в чате определенное количество раз (например будет отображаться в чате каждый 10-й раз)
clients.txt - список админов, групп и клиентов, имеющих иммунитет. Второй самый важный файл в плагине
commandlist.txt - в этом файле вы можете настроить собственные say команды. Например сделать, чтобы "say @rr" выполняло команду "mp_restartgame 1"
crontablist.txt - базовый планировщик действий. Вы можете настроить график автоматического выполнения определенных команд на сервере
database.txt - здесь хранятся параметры доступа к базе данных
decallist.txt - здесь находится список нестандартных декалей, которые будут закачиваться клиентам и использоваться для работы ma_effects или графической рекламы в игре
default_weapon_restrictions.txt - в этом файле хранятся запреты на оружие, которые будут действовать на всех картах на сервере
downloads.txt - в этот файл заносятся любые файлы, которые вы хотите закачать на клиентов
flaglist.txt - список админских флагов. Файл служит исключительно для информации и функциональности не несет
gametypes.txt - служебный файл плагина, определяющий функциональные ограничения для разных игр и модов.
gimpphrase.txt - в этом файле хранятся фразы, на которые будут заменяться любые чат сообщения "юродивого" игрока (подвергшегося команде ma_gimp)
mapadverts.txt - в этом файле хранятся настройки координат и текстур для графической рекламы на картах
pingimmunity.txt - в этом файле хранятся STEAMID или ip адреса клиентов, имеющих иммунитет к ограничениям по пингу
rconlist.txt - в этом файле вы можете настроить пункты админского меню и соответствующие им rcon команды. При выборе этих пунктов меню, на сервере исполнятся соответствующие rcon команды
reserveslots.txt - в этом файле хранятся STEAMID или ip адреса клиентов, обладающих резервными слотами на сервере (админы обладают ими по умолчанию и в этот список их вносить не надо)
restricted_weapons.txt - список оружия, которое админы могут запрещать через меню
soundlist.txt - список алиасов и соответствующих им звуковых файлов, которые можно исполнять на клиентах
spawnpoints.txt - список дополнительных точек респауна на картах. Полезно для серверов, на которых количество слотов выше, чем количество стандартных точек респауна на определенных картах
texturelist.txt - список текстур, необходимых для нестандартных эффектов через ma_effect.
votequestionlist.txt - список пунктов меню и соответствующих им вопросов для голосования. При выборе пункта меню будет запущено голосование с соответствующим вопросом
voterconlist.txt - список пунктов меню и соответствующих им rcon команд. При выборе пункта меню будет запущено голосование за выполнение соответствующей rcon команды.
votemaplist.txt - список карт, за которые могут голосовать игроки при соответствующей настройке в mani_server.cfg. Файл генерируется автоматически при первом запуске плагина, в инсталляционном пакете его нет.
webshortcutlist.txt - список ярлыков и соответствующих им URL адресов. При выполнении ярлыка через say у клиента откроется соответствующий адрес во встроенном в игру браузере
wordfilter.txt - список запрещенных слов, которые будут блокироваться в чате
Папка cstrike/cfg/mani_admin_plugin/language:
english.cfg - этот файл содержит текст, который может быть переведен на другие языки. Этот файл необходим для работы плагина и менять его напрямую не рекомендуется
language.cfg - в этом файле указывается язык, на который переведен плагин. Если в нем указано что либо, отличное от english, в этой же папке должен быть соответствующий cfg файл. Например, если в language.cfg указано russian, то в этой же папке должен находиться файл russian.cfg.
Папка cstrike/cfg/mani_admin_plugin/mani_logs:
В этой папке хранятся логи Mani плагина, если соответствующая настройка указана в mani_server.cfg
Папка cstrike/cfg/mani_admin_plugin/map_config:
В этой папке хранятся конфиги с настройками Mani, специфичными для определенной карты. Конфиги должны называться имя_карты.cfg. Например: de_dust2.cfg
Папка cstrike/cfg/mani_admin_plugin/restrict:
В этой папке хранятся конфиги ограничения оружия, специфические для конктреных карт. Файл должен называться имя_карты_restrict.txt
Папка cstrike/cfg/mani_admin_plugin/skins:
В этой папке хранятся нестандартные скины и файлы ресурсов к ним
Папка cstrike/cfg/mani_admin_plugin/data:
Это - служебная папка.
Папка cstrike/materials/decals/custom/mani_admin_plugin:
В этой папке хранятся текстуры, которые вы можете использовать для графической рекламы на сервере или других целей.
Папка cstrike/sound/admin_plugin:
В этой папке хранятся звуки, которые используются Mani плагином.
3. Настройка
Разобравшись с тем, какой файл за что отвечает, можно перейти к настройке плагина.
Первым делом вам необходимо тщательно изучить файл mani_server.cfg и определиться с желаемыми настройками.
Для того, чтобы настройки подействовали, необходимо добавить в конец файла server.cfg строку "exec mani_server.cfg"
Далее необходимо настроить админов. Для начала разберемся со структурой файла clients.txt (чисто в информативных целях, на практике вам в него лезть не придется):
При начальной установке плагина файл отсутствует. Он будет создан при первом запуске.
Структура нового файла для назначения админов сложнее, чем раньше, но в реальности - удобнее.
Первым делом идем в конец файла и смотрим в раздел "admingroups". Тут прописаны группы доступа. Это ГОРАЗДО удобнее, чем вписывать все флаги на каждого админа.
В отличие от версий 1.1.х по умолчанию все запрещено, и указание флага (буквы) не отбирает права, а дает. Формат задания группы (флаги необходимо указывать через пробел):
"имя_группы" "с п и с о к ф л а г о в"
Флаг admin необходим для получения админских прав. Без него доступа к администрированию не будет независимо от других флагов.
Флаг client дает доступ к управлению списком админов
Флаг pban дает доступ к перманентным банам
Флаг spray дает доступ к отслеживанию спреев игроков
Флаг grav дает доступ к изменению гравитации
Полный список флагов описан в файле flags.txt
Разобравшись с группами переходим к админам:
Все админы прописываются в секции "players".
Первое поле - ID, отделяющего одного админа от другого. По этому полю идентифицируется админ, так что делайте его понятным (пример: admin1 - полохое, обозначение, Vasya Pupkin - хорошее).
Дальше идут параметры:
"name" - понятное вам и другим имя админа
"steam" - SteamID админа
"admingroups" - группы админа
"immunityflags" - параметры иммунитета
"adminflags" - параметры доступа к админским функциям (аналогично тому, как мы делали в группах)
"ip" - ip адрес админа если вы хотите назначать админов по адресам
"nick" - ник админа, если вы хотите назначать админов по никам
"password" - пароль админа (используется только при назначении по никам)
Любой из параметров, кроме пароля, может содержать несколько значений.
Теперь собственно назначение админов:
Способ 1: Нормальный
Все операции по назначению админов, можно делать прямо из игры или с консоли сервера с помощью команды ma_client и ma_clientgroup.
Проделать это вам необходимо как минимум раз, т.к. добавление через меню (Способ 2) возможно только, если настроен хотя бы один админ.
Параметры я расписал выше, так что теперь просто приведу последовательность команд, которая создает группу с полным доступом, одного админа, устанавливает его SteamID, включает его в группу и дает полный иммунитет (+# при назначении флагов означает "все флаги", индивидуальные флаги добавляются по одному "+a +b +c":
ma_clientgroup addagroup "Full Access" "+#"
ma_client addclient "Nickname"
ma_client addsteam "Nickname" "STEAM_0:0:10065043"
ma_client setaflag "Nickname" "+admin +client"
ma_client addagroup "Nickname" "Full Access"
ma_client setiflag "Nickname" "+#"
Способ 2: Через меню
Тут все элементарно. Назначив себя админом, заходите на сервер, вызываете админское меню (команда admin) и назначаете админов следуя инструкциям в меню.
Способ 3: Если у вас были более ранние версии плагина (1.1.х):
Обновляем плагин и запускаем сервер. Новая версия плагина обнаружив файлы adminlist.txt, admingroups.txt, immunitylist.txt и immunitygroups.txt автоматически сгенерит clients.txt (в котором теперь хранятся данные об админах) и добавит к расширению старых файлов .old. Все
Плюсы: ничего делать не надо, плагин делает все сам
Минусы: Работает только один раз. Вернее не один, можно конечно вносить изменения в adminlist.txt, удалять clients.txt, перезапускать сервер и позволять плагину генерить clients.txt заново при каждом добавлении админа... Но согласитесь, это геморр.
Cпособ 4: создать clients.txt на примере:
"clients.txt"
{
"version" "1"
// This key group lists all your client players
"players"
{
// This must be a unique client name
"Admin1"
{
// Client real name
"name" "nick"
// Steam ID for client
"steam" "STEAM_0:1:1"
"groups"
{
"Admin" "Serveradmin"
"Immunity" "Serveradmin"
}
}
}
// These are global groups of flags that can be assigned to clients
"groups"
{
"Immunity"
{
"Serveradmin" "a b c d e f g h i j k l m n o p q r s t u v x y afk ping autojoin grav Immunity"
"Clanmember" "a b c k n p ping grav autojoin Immunity"
"Teamadmin" "b k n ping Immunity"
"No Kick Ban" "b k Immunity"
"NoFun" "d f g i j l t Immunity"
}
"Admin"
{
"Serveradmin" "A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e"
"Serveradmin" "f g i k l m o p q q2 q3 r s t v w x y z admin client grav pban spray"
"Clanmember" "B D F H I K M N O Q R S T U V W X Y Z a b c d f g i j k l m o p s t v w y admin pban"
"Teamadmin" "I O V a b k l o p v w admin"
"Level 2 Access" "A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a c d e"
"Level 2 Access" "f g i j k l m o p q r s t v w z admin spray grav pban client"
"No Rcon Or Sound" "A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d"
"No Rcon Or Sound" "e f g i j k l m o q s t v w x y z admin spray grav pban"
"No Rcon Or Sound" "client"
}
}
}
Counter-Strike: Global Offensive включает в себя наборы новых карт, героев, оружие и их улучшенные версии из классической Counter-Strike. Кроме всего того, в… Подробнее |
Counter-Strike - игра, установившая стандарты реализма для жанра сетевых шутеров и подарившая нам незабываемые ощущения. Сборник включает 2 игры: оригинальную… Подробнее |
Counter-Strike - абсолютный мировой лидер жанра сетевых боевиков, разошедшийся полуторамиллионным тиражом и удостоенный награды "Игра года" многочисленными… Подробнее |
Counter-Strike - игра, установившая стандарты реализма для жанра сетевых шутеров и подарившая нам незабываемые ощущения. Сборник включает оригинальную версию… Подробнее |