Администрирование
Данная статья описывает администрирование выделенного сервера Holdfast: Nations At War: добавление администраторов, настройку RCON, выполнение команд, управление игроками, ротацию карт, параметры для организованных матчей и базовую диагностику.
Добавление администраторов
Holdfast использует систему администраторов на основе Steam64 ID. Для выдачи прав администратора необходимо добавить Steam64 ID игрока в список администраторов.
Перед изменением списка администраторов остановите сервер.
Добавление администраторов через admins.txt
Файл администраторов находится в корневом каталоге сервера:
admins.txtЕсли файл отсутствует, создайте его вручную.
Добавьте по одному Steam64 ID на строку:
76561198012345678
76561198087654321
76561198011223344После сохранения файла запустите сервер.
Внимание: Steam64 ID — это 17-значный идентификатор Steam-аккаунта. Он обычно начинается с 7656119.
Добавление администраторов через конфигурацию
Администраторов также можно указать в основном конфигурационном файле сервера:
holdfastnaw-dedicated/configs/serverconfig_default.txtЕсли используется другой файл конфигурации, его имя задаётся переменной запуска SERVER_CONFIG_PATH.
Пример добавления администраторов:
server_admin_steam_id_add 76561198012345678
server_admin_steam_id_add 76561198087654321После изменения конфигурации перезапустите сервер.
Настройка RCON
RCON позволяет выполнять команды сервера удалённо, без входа на сервер в качестве игрока.
Настройки RCON указываются в основном конфигурационном файле:
holdfastnaw-dedicated/configs/serverconfig_default.txtПример:
server_rcon_enabled true
server_rcon_password "your_secure_rcon_password"
server_rcon_port 20105| Параметр | Описание |
|---|---|
server_rcon_enabled |
Включает или отключает RCON. |
server_rcon_password |
Пароль для подключения к RCON. |
server_rcon_port |
Порт RCON. |
Внимание: не используйте простой пароль RCON и не передавайте его посторонним пользователям. Пользователь с доступом к RCON получает возможность выполнять команды на сервере.
После изменения параметров RCON перезапустите сервер.
Порт RCON
Порт RCON должен быть выделен серверу во вкладке «Network» панели управления.
Если в конфигурации указан порт, который не выделен серверу, подключение по RCON работать не будет.
Пример:
server_rcon_port 20105Внутриигровые команды администратора
Администраторы могут выполнять команды через внутриигровую консоль или админ-интерфейс, если права администратора настроены корректно.
ID игроков используется в командах управления игроками. Его можно определить через список игроков или административный интерфейс сервера.
Команды управления игроками
| Команда | Использование | Описание |
|---|---|---|
kick |
kick playerID "reason" |
Исключить игрока с сервера. |
ban |
ban playerID minutes "reason" |
Забанить игрока на указанный срок. Значение 0 означает постоянный бан. |
unban |
unban steamID |
Снять бан по SteamID. |
slay |
slay playerID |
Мгновенно убить игрока. |
swapteam |
swapteam playerID |
Переместить игрока в противоположную команду. |
mute |
mute playerID |
Отключить игроку голосовой и текстовый чат. |
unmute |
unmute playerID |
Снять ограничение чата с игрока. |
Команды управления картой и раундом
| Команда | Использование | Описание |
|---|---|---|
changemap |
changemap mapName gameModeID |
Сменить карту и игровой режим. |
nextmap |
nextmap |
Перейти к следующей карте в ротации. |
restartround |
restartround |
Перезапустить текущий раунд. |
endround |
endround teamID |
Завершить текущий раунд с указанной командой-победителем. |
settimeleft |
settimeleft seconds |
Установить оставшееся время текущего раунда. |
Команды классов и возрождения
| Команда | Использование | Описание |
|---|---|---|
setclasslimit |
setclasslimit className percent |
Установить процентное ограничение для класса. |
forceclass |
forceclass playerID className |
Принудительно назначить игроку определённый класс. |
respawn |
respawn playerID |
Принудительно возродить игрока. |
Конфигурация для организованных матчей
Для событий, линейных боёв и организованных матчей можно использовать отдельные настройки баланса, классов и возрождения.
Пример конфигурации:
server_friendly_fire true
server_auto_balance_teams false
server_enforce_team_balance false
server_allow_spectators true
server_class_limit_artillery 0
server_class_limit_cavalry 0
server_round_time_seconds 1800
server_respawn_enabled false
server_respawn_time_seconds 0| Параметр | Описание |
|---|---|
server_friendly_fire |
Включает или отключает урон по союзникам. |
server_auto_balance_teams |
Автоматический баланс команд. |
server_enforce_team_balance |
Принудительное ограничение перехода в большую команду. |
server_allow_spectators |
Разрешает наблюдателей. |
server_class_limit_artillery |
Ограничение артиллерии. |
server_class_limit_cavalry |
Ограничение кавалерии. |
server_round_time_seconds |
Продолжительность раунда в секундах. |
server_respawn_enabled |
Включает или отключает возрождение. |
server_respawn_time_seconds |
Время до возрождения. |
После изменения параметров матча перезапустите сервер.
Управление ротацией карт через конфигурацию
Постоянная ротация карт настраивается в основном конфигурационном файле сервера.
Формат записи:
map_rotation_add "MapName" GameModeIDПример:
map_rotation_add "Grasslands" 0
map_rotation_add "Highlands" 0
map_rotation_add "Fort_Imperial" 1
map_rotation_add "Shipyard" 3После изменения ротации в конфигурации перезапустите сервер.
Команды управления ротацией карт
Ротацию карт можно изменить во время работы сервера через команды администратора.
maplist
addmap "Grasslands" 0
removemap "Grasslands" 0
clearrotation| Команда | Описание |
|---|---|
maplist |
Показать текущую ротацию карт. |
addmap "MapName" GameModeID |
Добавить карту в текущую ротацию. |
removemap "MapName" GameModeID |
Удалить карту из текущей ротации. |
clearrotation |
Очистить текущую ротацию карт. |
Внимание: изменения ротации, выполненные командами во время работы сервера, могут не сохраняться после перезапуска. Для постоянной ротации редактируйте конфигурационный файл.
Сервер не отображается в списке
Проверьте:
- сервер полностью запущен;
- после запуска прошло несколько минут;
- порт запросов Steam соответствует порту во вкладке «Network»;
- в конфигурации корректно указан
server_steam_query_port; - в консоли нет ошибок запуска;
- сервер доступен через прямое подключение.
Сервер падает или не запускается
Проверьте:
- файл конфигурации находится в каталоге
holdfastnaw-dedicated/configs/; - переменная
SERVER_CONFIG_PATHуказывает на существующий файл; - в конфигурации нет ошибок синтаксиса;
- имена карт в ротации указаны правильно;
- игровой режим соответствует выбранной карте;
- порты сервера соответствуют значениям во вкладке «Network».
Логи сервера можно проверить в каталоге:
server_log/Проблемы с рассинхронизацией игроков
Рассинхронизация чаще проявляется на серверах с большим количеством игроков или при высокой задержке отдельных пользователей.
Проверьте:
- серверу хватает выделенных ресурсов;
- количество игроков соответствует возможностям тарифа;
- на сервере нет игроков с очень высоким пингом;
- в консоли нет сетевых ошибок;
- карта и режим подходят для текущего количества игроков.
При необходимости можно ограничить максимальный пинг игроков:
server_max_ping 300Игроки не могут подключиться
Проверьте:
- сервер полностью запущен;
- игрок использует правильный IP-адрес и игровой порт из вкладки «Network»;
- игрок не использует порт запросов Steam вместо игрового порта;
- сервер не заполнен;
- если установлен пароль, игрок вводит правильный пароль сервера.
RCON не работает
Проверьте:
- в конфигурации указано
server_rcon_enabled true; - указан корректный
server_rcon_password; - порт
server_rcon_portвыделен серверу во вкладке «Network»; - сервер был перезапущен после изменения параметров RCON;
- RCON-клиент использует правильный IP, порт и пароль.
Администратор не получает права
Проверьте:
- Steam64 ID указан правильно;
- ID добавлен в
admins.txtили в конфигурационный файл; - в файле нет лишних символов в строке со Steam64 ID;
- сервер был перезапущен после изменения списка администраторов;
- игрок подключается с тем Steam-аккаунтом, чей Steam64 ID добавлен в список.
Рекомендации
- перед изменением администраторов, RCON и ротации карт останавливайте сервер;
- для администраторов используйте Steam64 ID;
- не публикуйте пароль RCON в открытом доступе;
- для постоянной ротации редактируйте конфигурационный файл, а не временные команды;
- после изменения конфигурации перезапускайте сервер;
- перед крупными изменениями создавайте резервную копию файлов сервера.
Файлы и каталоги, которые рекомендуется сохранить перед изменениями:
holdfastnaw-dedicated/configs/
admins.txt
bans.txt
server_log/