Администрирование
Это руководство описывает добавление администраторов и управление правами на выделенном сервере Project Zomboid. Рассматриваются админ-аккаунт, уровни доступа, команда setaccesslevel, базовые команды администрирования и частые ошибки.
Как работает администрирование в Project Zomboid
В Project Zomboid есть два разных понятия:
- админ-аккаунт сервера — создаётся через параметры запуска сервера;
- уровень доступа игрока — назначается командой
setaccesslevel.
Не выдавайте игрокам пароль от главного админ-аккаунта. Для модераторов, гейм-мастеров и других администраторов используйте отдельные уровни доступа.
Админ-аккаунт сервера
На нашем сервере Project Zomboid админ-аккаунт передаётся через команду запуска:
-adminusername "{{ADMIN_USER}}" -adminpassword "{{ADMIN_PASSWORD}}"Это значит, что основные значения нужно менять через параметры сервера в панели, а не вручную в случайном файле.
Минимально должны быть заданы:
ADMIN_USER— имя главного администратора;ADMIN_PASSWORD— пароль главного администратора.
Пароль администратора не должен быть пустым. Если пароль пустой, сервер может завершаться сразу после запуска или не создавать админ-аккаунт корректно.
Если используется AdminPassword в .ini
В некоторых конфигурациях Project Zomboid пароль администратора также встречается в файле:
.cache/Server/{server_name}.iniСтрока может выглядеть так:
AdminPassword=YourSecurePassword123На нашей сборке приоритет имеет значение из Startup, потому что сервер запускается с аргументами -adminusername и -adminpassword. Если вы меняете пароль вручную в .ini, но Startup передаёт другое значение, при запуске будет использоваться значение из Startup.
Выдача прав игроку
Для выдачи прав используйте команду:
setaccesslevel Username adminПример:
setaccesslevel PlayerName adminДля модератора:
setaccesslevel PlayerName moderatorДля снятия прав:
setaccesslevel PlayerName noneКоманду можно выполнить через консоль сервера, RCON или от имени администратора в игре. На сайте уже есть общий RCON-раздел, поэтому для удалённого выполнения команд используйте его.
Важное правило по никам
В команде нужно указывать имя игрока так, как сервер видит его в игре.
Если в имени есть пробелы, используйте кавычки:
setaccesslevel "Player Name" adminЕсли команда не срабатывает, сначала проверьте точное имя игрока через список игроков.
Уровни доступа
admin— полный административный доступ;moderator— модерация игроков: кик, бан и часть служебных команд;overseer— ограниченный контроль и наблюдение;gm— Game Master, подходит для RP-серверов и игровых событий;observer— минимальный доступ для наблюдения;none— обычный игрок без специальных прав.
Рекомендуемая схема прав
Для обычного сервера достаточно такой схемы:
- владелец сервера —
admin; - старший администратор —
admin; - модератор —
moderator; - ивент-мастер или RP-ведущий —
gm; - наблюдатель —
observer.
Не выдавайте admin всем сотрудникам сервера. Для киков, банов и базовой модерации достаточно moderator.
Как зайти под главным админом
Используйте имя и пароль, которые указаны в Startup как ADMIN_USER и ADMIN_PASSWORD.
После входа под главным админом можно открыть админ-панель в игре и управлять игроками, телепортами, предметами, событиями и настройками.
Для постоянной команды администрации лучше не использовать один общий админ-аккаунт. Создайте каждому сотруднику отдельный игровой аккаунт и выдайте нужный уровень через setaccesslevel.
Команды управления игроками
/playersПоказывает список подключённых игроков.
/kickuser "Username"Кикает игрока с сервера.
/banuser "Username"Банит игрока по имени.
/unbanuser "Username"Снимает бан с игрока.
/servermsg "Текст сообщения"Отправляет сообщение всем игрокам на сервере.
Команды доступа
/setaccesslevel "Username" adminВыдаёт игроку полный административный доступ.
/setaccesslevel "Username" moderatorВыдаёт права модератора.
/setaccesslevel "Username" gmВыдаёт права Game Master.
/setaccesslevel "Username" observerВыдаёт права наблюдателя.
/setaccesslevel "Username" noneСнимает специальные права.
При выполнении через серверную консоль или RCON команда может использоваться без префикса /:
setaccesslevel "Username" adminТелепортация
/teleport "Username"Телепортирует администратора к игроку.
/teleport "Username1" "Username2"Телепортирует одного игрока к другому, если команда поддерживается текущей сборкой.
/teleportto x,y,zТелепортирует к координатам.
Команды телепортации зависят от уровня доступа и контекста выполнения. Если команда не работает из консоли, выполните её в игре от имени администратора.
Режимы администратора
/godmod "Username"Включает или отключает неуязвимость.
/invisible "Username"Включает или отключает невидимость для зомби.
/noclip "Username"Включает или отключает прохождение сквозь объекты.
Не оставляйте эти режимы включёнными без необходимости. Они меняют игровой баланс и могут мешать проверке жалоб от игроков.
Опыт, предметы и события
/addxp "Username" Perk=AmountДобавляет опыт в указанный навык.
Пример:
/addxp "PlayerName" Carpentry=1000/additem "Username" "Base.Axe"Выдаёт предмет игроку.
/addvehicle "Base.CarNormal"Создаёт транспорт, если команда поддерживается сборкой и находится в корректном контексте.
Погодные и мировые события
/startrainЗапускает дождь.
/stoprainОстанавливает дождь.
/chopperЗапускает событие вертолёта.
/gunshotЗапускает звуковое событие выстрела.
Управление сервером
/saveПринудительно сохраняет мир.
/quitСохраняет мир и корректно завершает работу сервера.
Для штатной остановки сервера используйте управление в панели. Команда /quit полезна при администрировании из игры, но не заменяет нормальный контроль состояния сервера через панель.
Баны и база данных
Данные сервера хранятся в директории:
.cache/db/Файл базы данных связан с именем сервера. Не редактируйте базу вручную без резервной копии.
Для банов используйте команды:
/banuser "Username"
/unbanuser "Username"Ручное редактирование базы данных используйте только при повреждении данных или когда стандартные команды не решают проблему.
RCON и команды
На сайте уже есть общий RCON-раздел. Для Project Zomboid через него можно выполнять серверные команды без входа в игру.
Разделение такое:
ADMIN_USERиADMIN_PASSWORD— главный админ-аккаунт сервера;setaccesslevel— выдача прав конкретным игрокам;- RCON — удалённое выполнение команд через сайт или RCON-клиент;
- админ-панель в игре — визуальное управление игроками, телепортами и событиями.
RCON-пароль не является паролем администратора для входа в игру. Не смешивайте RCONPassword и ADMIN_PASSWORD.
Если команды не работают
- проверьте, что игрок онлайн или уже создан в базе сервера;
- проверьте точное написание имени игрока;
- используйте кавычки, если в имени есть пробелы;
- проверьте уровень доступа игрока;
- для консоли и RCON попробуйте команду без
/; - для внутриигрового чата используйте команду с
/; - проверьте логи в
.cache/Logs/.
Ошибка You don't have access
Эта ошибка означает, что у аккаунта недостаточный уровень доступа для команды.
Решение — выдать нужный уровень через консоль, RCON или главный админ-аккаунт:
setaccesslevel "Username" adminЕсли полный доступ не нужен, используйте более низкий уровень:
setaccesslevel "Username" moderator
setaccesslevel "Username" gm
setaccesslevel "Username" observerКоманда setaccesslevel не находит игрока
- игрок ни разу не заходил на сервер;
- имя написано не так, как в базе сервера;
- в имени есть пробел, но команда введена без кавычек;
- используется Steam-ник вместо имени аккаунта Project Zomboid;
- сервер запускается с другим
Server Nameи использует другую базу.
Проверьте список игроков командой:
/playersили через RCON/консоль, если игрок находится онлайн.
/addxp не работает
Проверьте формат:
/addxp "Username" Perk=AmountПример:
/addxp "PlayerName" Carpentry=1000Название навыка должно быть написано корректно. Игрок должен существовать на сервере. Для части команд игрок должен находиться онлайн.
Рекомендации по безопасности
- не публикуйте
ADMIN_PASSWORD; - не используйте один общий админ-аккаунт для всей команды;
- выдавайте
adminтолько тем, кому нужен полный доступ; - для модерации используйте
moderator; - для RP-событий используйте
gm; - снимайте права через
setaccesslevel Username noneпосле ухода сотрудника; - перед ручным редактированием
.cache/db/делайте резервную копию.
Краткая шпаргалка
Выдать администратора:
setaccesslevel "Username" admin
Выдать модератора:
setaccesslevel "Username" moderator
Выдать GM:
setaccesslevel "Username" gm
Выдать наблюдателя:
setaccesslevel "Username" observer
Снять права:
setaccesslevel "Username" none
Список игроков:
players
Сохранить мир:
save
Сообщение всем:
servermsg "Текст сообщения"