RE:NODE

Руководства12 мин чтения

Конфиг Unturned: Config.json и Commands.dat

Что настраивает каждый раздел конфига сервера Unturned - Browser, Server, Items, Zombies, Vehicles, Players, Gameplay - и как он сочетается с Commands.dat.

0 прочтений

Сервер Unturned настраивается двумя файлами в Servers/<ServerID>/Server/. Commands.dat говорит, чем сервер является: его имя, карта, порт, слоты, владелец, пароль, режим сложности и токен входа - по одной команде на строку, читается при загрузке. Игровой конфиг - Config.json на старых экземплярах или Config.txt с комментариями на серверах, созданных на новых сборках, - говорит, как идёт игра, и разбит на разделы: Browser и Server для представления и подключения, а затем полный блок для каждой сложности (Easy, Normal, Hard) с Items, Vehicles, Zombies, Animals, Barricades, Structures, Players, Objects, Events и Gameplay. Сервер читает только тот блок сложности, который совпадает с Mode в Commands.dat, - именно поэтому большинство правок, которые «ничего не делают», действительно ничего не делают.

Это руководство проходит по конфигу раздел за разделом - что контролирует каждая группа ключей, какие стоит менять и что лучше не трогать - и показывает, где он пересекается с Commands.dat. Полный список строк Commands.dat есть в статье Commands.dat и плагины RocketMod в Unturned, а установка, порты и токен - в статье установка сервера Unturned.

Два файла, и какой из них главнее#

ВопросФайл
Имя сервера, карта, порт, слотыCommands.dat
Используемый блок сложностиCommands.dat (Mode)
PvE или PvP, перспектива, читыCommands.dat
Лут, зомби, машины, урон, разрушениеКонфиг, в блоке для текущего Mode
Иконка в списке серверов, описание, монетизацияКонфиг, Browser
Переключатели античита, лимиты пинга и таймаутовКонфиг, Server
Токен входаЛюбой из двух: GSLT в Commands.dat или Login_Token в Browser

Храните токен входа в одном месте, а не в обоих, чтобы при смене менять его только один раз. Как создать токен для ID приложения Unturned 304930, описано в статье токены игровых серверов Steam.

Для обоих файлов действует одно правило правки: сначала остановите сервер. Unturned записывает конфигурацию и состояние сохранения при выключении, и файл, отредактированный при работающем сервере, рискует быть перезаписанным копией, которую сервер держит в памяти.

Config.json и Config.txt содержат одни и те же настройки с одинаковыми именами. Новый текстовый формат добавляет комментарии и читается легче; формат JSON - это то, что показывают большинство старых руководств. Редактируйте тот, что есть у вашего экземпляра. Если создать рядом второй, формат не переключится - сервер читает файл, который ожидает, и игнорирует лишний.

Как сгенерировать свежий файл и узнать значения по умолчанию#

Значения по умолчанию меняются между версиями игры, когда разработчик перебалансирует её, поэтому самый надёжный эталон - файл, сгенерированный вашей собственной сборкой:

  1. Остановите сервер.
  2. Переименуйте существующий конфиг, чтобы сохранить его как резервную копию.
  3. Запустите сервер один раз и остановите. Появится свежий конфиг с актуальными значениями по умолчанию.
  4. Сравните его со старым и перенесите свои изменения.

После крупного обновления игры эти пять минут того стоят. Появляются новые ключи, а в старом конфиге их просто нет - для всего отсутствующего сервер использует встроенные значения по умолчанию, это безопасно, но новых настроек вы так и не увидите.

Browser: как сервер себя показывает#

Servers/MyServer/Server/Config.json
"Browser": {    "Icon": "https://example.com/icon.png",    "Thumbnail": "https://example.com/thumb.png",    "Desc_Hint": "Vanilla+ survival, weekly wipes",    "Desc_Full": "Rules and Discord link in the welcome message.",    "Desc_Server_List": "Vanilla+ survival, active admins",    "Login_Token": "",    "Monetization": "None"}
КлючЧто делает
IconURL небольшого изображения рядом с сервером в списке
ThumbnailURL изображения побольше в подробностях о сервере
Desc_HintКороткая строка при наведении или выборе
Desc_FullДлинное описание на экране информации о сервере
Desc_Server_ListСтрока, которая показывается в самом списке
Login_TokenТокен входа игрового сервера, если его нет в Commands.dat
MonetizationОбъявляет, продаёт ли сервер что-нибудь

Изображения игроки загружают по URL, которые вы указали, поэтому размещайте их в надёжном месте с прямой ссылкой на картинку. В списке серверов они показываются маленькими, и понятная иконка помогает серверу выделиться сильнее любого описания.

Monetization существует потому, что браузер серверов позволяет игрокам фильтровать по нему. Указывайте честно: сервер, который продаёт игровые преимущества и утверждает обратное, - из тех, на которые жалуются, а что вообще разумно продавать, разобрано в статье монетизация игрового сервера в рамках правил. Допустимые значения перечислены в комментарии в Config.txt или в документации разработчика для конфигов JSON.

В новых сборках сюда со временем добавлялись поля, например ссылки на странице информации о сервере. Если в вашем файле их нет, сгенерируйте его заново, как описано выше.

Server: подключение и античит#

КлючЧто делает
VAC_SecureValve Anti-Cheat включён. Для публичного сервера оставляйте включённым
BattlEye_SecureBattlEye включён. Для публичного сервера оставляйте включённым
Max_Ping_MillisecondsПинг, выше которого игроков кикает
Timeout_Queue_SecondsСколько может длиться подключение в очереди
Timeout_Game_SecondsСколько молчащее соединение держится в игре
Max_Packets_Per_SecondОграничение того, что может отправлять один клиент
Enable_Scheduled_ShutdownВыключение в заданное время с предупреждениями
Enable_Update_ShutdownВыключение с предупреждениями при выходе обновления игры

Точный набор ключей в этом разделе рос от версии к версии; список для вашей сборки - это сгенерированный вами файл.

Важнее всего переключатели античита. Отключить BattlEye иногда советуют как способ решить проблему с подключением; симптом это действительно убирает, но заодно убирает и главную защиту от чит-клиентов на публичном сервере. Ищите настоящую причину.

Лимит пинга делает ту же работу, что и Timeout в Commands.dat, а имя в Commands.dat вводит в заблуждение - это максимальный пинг, а не таймаут. Низкий лимит не даёт игрокам с плохим соединением лагать всем вокруг; высокий позволяет оставаться на связи далёким друзьям. Для сервера в Германии с европейскими игроками разумный потолок - несколько сотен миллисекунд.

Параметры выключения полезны вместе с хостером, который перезапускает сервер. Сначала выясните, запускается ли сервер у вашего хостера автоматически после корректного выхода или ждёт, пока его запустят; если ждёт, перезапуск по расписанию из панели - более предсказуемый вариант. В RE:NODE вкладка Schedules выполняет его как упорядоченные задачи - предупреждение, задержка, save, перезапуск, - и при запуске оба файла конфигурации заодно перечитываются.

Блоки сложности и Mode#

Всё, что ниже, встречается в файле трижды: под Easy, под Normal и под Hard. Используется только блок, совпадающий с Mode в Commands.dat.

Commands.dat
Mode Normal
Config.json
"Normal": {    "Items": { "Spawn_Chance": 0.35, "Respawn_Time": 50.0 },    "Zombies": { "Spawn_Chance": 0.2, "Respawn_Night_Time": 30.0 },    "Vehicles": { "Respawn_Time": 300.0 }}

Значения по умолчанию в блоках различаются - в Hard меньше предметов и зомби крепче, чем в Easy, - так что проще взять ближайший к желаемому блок и подправить его, чем собирать с нуля. В примерах ниже используются имена из Normal; ключи во всех блоках одинаковые.

Items: лут#

КлючЧто делает
Spawn_ChanceШанс, что в точке лута есть предмет. 0.35 в Normal
Respawn_TimeСекунд до того, как разграбленная точка может пополниться. 50 в Normal
Despawn_Dropped_TimeСекунд до исчезновения предметов, брошенных игроками
Despawn_Natural_TimeСекунд до исчезновения естественно появившихся нетронутых предметов
Quality_Full_ChanceШанс, что предмет появится в идеальном состоянии
Quality_MultiplierСостояние появляющихся предметов
Gun_Bullets_Full_Chance, Gun_Bullets_MultiplierПатроны, заряженные в найденное оружие
Magazine_Bullets_Full_Chance, Magazine_Bullets_MultiplierПатроны в найденных магазинах
Has_DurabilityИзнашиваются ли предметы

Возникает соблазн поднять Spawn_Chance. При 1.0 каждая точка лута полна, и весь цикл игры - путешествия, риск в городах, находки - рушится за вечер. Если хотите сервер побыстрее, сократите Respawn_Time, чтобы места пополнялись раньше, или поднимите множители патронов, чтобы найденным оружием можно было пользоваться. Оба способа ускоряют игру, не делая исследование бессмысленным.

Despawn_Dropped_Time важен для производительности и для споров. Большие значения оставляют в городах кучи брошенных предметов; маленькие означают, что игрок, умерший далеко от дома, вернувшись, ничего не найдёт.

Зомби и животные#

КлючЧто делает
Spawn_ChanceШанс, что точка спавна зомби будет использована. 0.2 в Normal
Respawn_Day_Time, Respawn_Night_TimeСекунд до возвращения убитого зомби, днём и ночью
Respawn_Beacon_TimeТо же во время маяка орды
Damage_Multiplier, Armor_MultiplierНасколько сильно они бьют и сколько поглощают
Crawler_Chance, Sprinter_Chance, Flanker_ChanceДоли особых типов зомби
Burner_Chance, Acid_ChanceЕщё особые типы
Loot_ChanceШанс, что зомби оставит лут
Min_Drops, Max_DropsСколько предметов выпадает из зомби
Can_Target_Barricades, Can_Target_Structures, Can_Target_VehiclesЧто атакуют зомби
Slow_Movement, Can_StunПоведение при передвижении и оглушении

По умолчанию ночной респавн гораздо быстрее дневного - тридцать секунд против шести минут, - и именно это делает ночи в Unturned опасными. Большая часть ощущения от PvE на сервере идёт от этой пары и от Spawn_Chance. Шансы особых типов - маленькие числа, и небольшие изменения в них дают большой эффект.

Can_Target_Barricades и Can_Target_Structures решают, повреждают ли зомби базы. Если их выключить, строительство становится безопасным от зомби - некоторым PvE-серверам это нужно, большинству серверов на выживание нет.

В Animals есть уменьшенная версия той же идеи: Respawn_Time, множители урона и брони и лимиты количества по размеру карты.

Машины#

КлючЧто делает
Respawn_TimeСекунд до респавна уничтоженной машины. 300 в Normal
Decay_Time, Decay_Damage_Per_SecondКак портятся неиспользуемые машины
Has_Battery_Chance, Min_Battery_Charge, Max_Battery_ChargeАккумуляторы в найденных машинах
Has_Tire_ChanceШанс наличия шин
Unlocked_After_Seconds_In_SafezoneЗапертые машины, оставленные в безопасной зоне, становятся доступны другим
Armor_Multiplier и множители уронаПрочность против оружия и ближнего боя
от Max_Instances_Tiny до Max_Instances_InsaneЛимит машин по размеру карты

О лимитах количества стоит знать: какой из них применяется, зависит от класса размера карты, и на загруженных серверах низкий лимит - причина того, что никто не может найти машину. Повышение стоит некоторой производительности, ведь каждая машина симулируется и сохраняется.

Баррикады и постройки#

КлючЧто делает
Decay_TimeСколько секунд база может простоять без владельцев рядом, прежде чем начнёт разрушаться
Armor_Lowtier_Multiplier, Armor_Hightier_MultiplierПрочность слабых и сильных уровней построек
Gun_Lowcal_Damage_Multiplier, Gun_Highcal_Damage_MultiplierУрон от оружия малого и крупного калибра
Melee_Damage_Multiplier, Melee_Repair_MultiplierУрон в ближнем бою и скорость ремонта

Barricades охватывает размещаемые предметы - двери, стены, поставленные как баррикады, хранилища и ловушки; Structures - полы, стены и крыши. Ключи у обоих одинаковые.

Decay_Time - настройка, которая не даёт карте заполниться брошенными базами. По умолчанию это неделя в секундах (604800). На загруженном публичном сервере более короткое разрушение освобождает место; на сервере друзей, где люди играют раз в две недели, увеличьте его, иначе базы будут исчезать между сессиями. Сообщите игрокам это число, потому что нет ничего более несправедливого на вид, чем база, разрушившаяся без того, чтобы кто-то знал, что это возможно.

Множители урона - это баланс рейдов. Повышение Armor_Hightier_Multiplier делает металлические базы гораздо сложнее для рейда; снижение урона от оружия по постройкам делает рейды зависимыми от взрывчатки. Меняйте по одному и неделю смотрите, как проходят рейды.

Игроки и геймплей#

КлючЧто делает
Experience_MultiplierПолучаемый опыт
Lose_Skills_PvP, Lose_Skills_PvEДоля навыков, теряемых при смерти
Lose_Items_PvP, Lose_Items_PvEДоля инвентаря, выпадающая при смерти
Lose_Clothes_PvP, Lose_Clothes_PvEВыпадает ли одежда
Can_Break_Legs, Can_Start_BleedingМеханики травм
Spawn_With_Max_SkillsНовые персонажи начинают с полностью прокачанными навыками
Allow_Instakill_HeadshotsВыстрелы в голову всегда убивают
Allow_Per_Character_SavesОтдельные сохранения для каждого персонажа игрока

В Gameplay лежат переключатели интерфейса и правил: Crosshair, Hitmarkers, Ballistics, Chart, Satellite, Compass, Group_Map, Group_HUD, Allow_Static_Groups, Allow_Dynamic_Groups, Max_Group_Members, Friendly_Fire, Can_Suicide, Allow_Shoulder_Camera, а также таймеры вроде Timer_Exit, Timer_Respawn и Timer_Home.

Настройки смерти определяют характер сервера не меньше лута. Потеря всех предметов без потери навыков - классическая настройка выживания; сохранение предметов при смерти в PvE, но не в PvP, - частый компромисс, который делает зомби менее раздражающими, не лишая PvP зубов.

Max_Group_Members ограничивает число игроков в одной группе. На PvP-сервере лимит не даёт одной большой группе доминировать на карте, хотя игроки всё равно могут сотрудничать вне системы групп.

Объекты и события#

Objects управляет тем, как мир восстанавливается после использования: Fuel_Reset_Multiplier и Water_Reset_Multiplier для колонок и колодцев, Resource_Reset_Multiplier для деревьев и камней, Resource_Drops_Multiplier для того, сколько даёт дерево или камень, и Rubble_Reset_Multiplier для разрушаемых объектов. Повышение Resource_Drops_Multiplier - мягкий способ ускорить строительство, не трогая лут.

Events управляет погодой и аирдропами: частота и длительность дождя и снега, Use_Airdrops, Airdrop_Frequency_Min и Airdrop_Frequency_Max, а также таймеры режима арены. Ключи погоды в новых сборках переработаны, так что доверяйте сгенерированному файлу. Аирдропы - хороший рычаг для PvP-сервера, потому что они дают повод драться в предсказуемых местах.

Пример: сервер на выживание побыстрее#

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

Группа хочет, чтобы прогресс ощущался быстрее, но без превращения карты в супермаркет. Поэтому Items.Spawn_Chance остаётся близким к значению по умолчанию, а Items.Respawn_Time уменьшается, чтобы в городе, разграбленном в понедельник, к среде что-то было. Множители патронов в оружии и магазинах немного поднимаются, чтобы найденной винтовкой можно было реально пользоваться, - это убирает одну из самых раздражающих частей начала игры, никому не вручая арсенал.

Зомби остаются опасными ночью - короткий Respawn_Night_Time - часть того, что делает Unturned собой, - но Damage_Multiplier слегка снижается, потому что небольшая группа не может позволить себе терять игрока за каждым неудачным углом. Can_Target_Barricades остаётся включённым, так что базы по-прежнему нужно защищать.

При смерти Lose_Items_PvE снижается до частичной потери, а навыки при смерти в PvE сохраняются, так что попасться орде - это неудача, а не начало с нуля, а смерть в PvP сохраняет полный штраф, чтобы в боях оставалось что терять. Experience_Multiplier скромно поднимается под меньшее время игры.

Базы получают более длинный Decay_Time и в Barricades, и в Structures, потому что эта группа иногда пропускает неделю, а ничто так не убивает энтузиазм, как возвращение на пустой участок. Resource_Drops_Multiplier в Objects поднимается, чтобы строительство было меньшим гриндом.

Ничто из этого не экстремально, и в этом весь смысл: несколько умеренных изменений в нужных местах заметно ускоряют сервер, сохраняя напряжение игры. Меняйте их при остановленном сервере, перезапускайте, играйте неделю и подправляйте. Держите предыдущий файл рядом с новым, чтобы было с чем сравнить, когда кто-то спросит, что изменилось, - и делайте резервную копию перед каждым раундом правок: у любого хостера это дешевле, чем восстанавливать конфиг по памяти.

Решение проблем#

Мои изменения лута ничего не дают. Вы правили блок, который не совпадает с Mode в Commands.dat. Отредактируйте совпадающий блок или поменяйте Mode.

Мои правки исчезли. Сервер работал, когда вы сохраняли, и при выключении записал свою копию поверх вашей.

После правки сервер не запускается. Некорректный JSON - пропущенная или лишняя запятая. Консоль укажет на проблему.

Нет новых настроек, упомянутых в патчноутах. Ваш конфиг старше их. Сгенерируйте свежий файл и перенесите свои изменения.

Сервера не видно в списке. Ни в одном файле нет токена входа или он недействителен. Вход по IP при этом работает, что доказывает, что сам сервер в порядке.

Игроков кикает за высокий пинг. Max_Ping_Milliseconds или Timeout в Commands.dat. Поднимите значение, если это обычные далёкие игроки.

FAQ#

Чем Commands.dat отличается от Config.json?

Commands.dat задаёт, чем является сервер: имя, карта, порт, слоты, режим сложности и доступ. Конфиг задаёт, как идёт игра: лут, зомби, машины, строительство, правила смерти и интерфейса. Они никогда не противоречат друг другу, если не считать нескольких пересекающихся пунктов вроде токена входа.

Почему мой сервер использует Config.txt вместо Config.json?

Серверы, созданные на новых сборках, генерируют Config.txt с комментариями. Старые серверы сохраняют свой Config.json. Ключи одинаковые; редактируйте тот файл, который есть у вашего экземпляра.

Какой блок сложности редактировать?

Тот, что указан в Mode в Commands.dat. Сервер с Mode Normal читает только блок Normal.

Как сделать лут щедрее, не испортив игру?

Сократите Items.Respawn_Time и поднимите множители патронов, а не двигайте Spawn_Chance к 1.0. Места будут пополняться быстрее, а оружием можно будет пользоваться, при этом в города всё равно придётся ходить.

Сколько живут базы, когда игроки перестают играть?

Пока не пройдёт Decay_Time в разделах Barricades и Structures без владельцев поблизости - по умолчанию неделя. Для групп, которые играют редко, увеличьте его.

Нужно ли перезапускать сервер после изменения конфига?

Да. Оба файла читаются при загрузке. Остановите сервер, отредактируйте, запустите снова.


Комментарии

Полностью анонимно: без аккаунта, без почты, без cookie. Мы храним имя, которое вы ввели, текст и время - больше ничего. Количество ссылок ограничено, разметка не отображается.

0/2000