RE:NODE

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

Параметры SandboxVars.lua в Project Zomboid

Все основные параметры SandboxVars.lua в Project Zomboid для сервера: популяция, время, коммуникации, лут, мир, персонаж, машины, Zombie Lore и Zombie Config.

0 прочтений

<servername>_SandboxVars.lua хранит правила мира Project Zomboid: сколько зомби, как быстро они двигаются, насколько редок лут, когда отключат воду и свет, сколько длится день и как быстро учатся персонажи. Это Lua-таблица в Zomboid/Server/, которую сервер читает при запуске. Большинство параметров - это номера позиций на шкале, а не реальные величины, и шкала описана в комментарии над каждой строкой в файле, который генерирует сервер, - поэтому сгенерированный файл и есть лучшая документация, которая у вас есть. Самый безопасный способ собрать такой файл - выбрать настройки на экране песочницы в самой игре, один раз запустить хост из клиента и скопировать получившийся файл на сервер.

Это руководство проходит по файлу раздел за разделом: что делает каждый параметр, что означают его значения в Build 41, о каких параметрах серверу для мультиплеера действительно стоит подумать и какие действуют только на новый мир. Об ini сервера - портах, PvP, сейфхаусах, модах - читайте в статье настройки сервера Project Zomboid.

Как устроен файл#

servertest_SandboxVars.lua
SandboxVars = {    VERSION = 5,    -- Changing this also sets the "Population Multiplier" in Advanced Zombie Options.    -- Default=Normal 1 = Insane 2 = Very High 3 = High 4 = Normal 5 = Low 6 = None    Zombies = 4,    Distribution = 1,    DayLength = 3,    StartMonth = 7,    StartDay = 9,    StartTime = 2,    WaterShut = 2,    ElecShut = 2,    ZombieLore = {        Speed = 2,    },    ZombieConfig = {        PopulationMultiplier = 1.0,    },}

Три правила делают его правку безболезненной.

У каждого значения есть комментарий над ним. Сгенерированный файл объясняет каждую шкалу, включая то, какое число стоит по умолчанию. Не удаляйте комментарии. Когда руководство (включая это) и комментарий расходятся, комментарий соответствует вашей сборке и он прав.

Структура важна. Это Lua-таблица: параметры разделены запятыми, для ZombieLore и ZombieConfig есть вложенные таблицы, а фигурные скобки должны быть парными. Пропущенная запятая или скобка не даёт серверу прочитать файл. Консоль показывает строку, на которой сломался разбор.

Файлы читаются при запуске. Правьте при остановленном сервере, потом запускайте. Изменения, сделанные через настройки песочницы в админ-панели в игре, применяются к работающему миру и сохраняются в нём, а значит, мир и файл могут расходиться - и прав будет мир. Если пользуетесь панелью, внесите то же изменение в файл, чтобы следующий, кто будет его читать, не обманулся. Панель описана в статье админ-команды Project Zomboid.

Популяция, время и старт#

ПараметрЗначенияЧто делает
Zombiesот 1 Insane до 6 None, 4 NormalОбщее количество. Также задаёт PopulationMultiplier
Distribution1 в городах, 2 равномерноКонцентрируются ли зомби в городах
DayLengthШаги; 3 - один часРеальное время на игровой день
StartYear1 и вышеГод апокалипсиса, косметика
StartMonth1-12, по умолчанию 7Месяц начала. Влияет на сезон и погоду
StartDay1-31, по умолчанию 9День начала
StartTime1 7 утра, 2 9 утра и следующие шагиЧас начала

Zombies идёт от большего к меньшему, и каждый однажды на этом попадается: 1 - это Insane, а не «один». Это пресет, который задаёт PopulationMultiplier; если вы задали ещё и множитель напрямую, сервер использует явное значение, так что осознанно выбирайте что-то одно.

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

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

Коммуникации: вода и электричество#

ПараметрЗначенияЧто делает
WaterShut1 сразу, 2 0-30 дней, выше - более длинные диапазоныКогда отключат воду
ElecShutТа же шкалаКогда отключат электричество
WaterShutModifierДниКонкретный выбранный день отключения воды
ElecShutModifierДниКонкретный выбранный день отключения электричества

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

Лут и его респавн#

ПараметрЗначенияЧто делает
FoodLoot, CannedFoodLootШкала редкостиСвежая и консервированная еда
LiteratureLootШкала редкостиКниги навыков и журналы
SurvivalGearsLoot, MedicalLootШкала редкостиТуристическое снаряжение, медицина
WeaponLoot, RangedWeaponLoot, AmmoLootШкала редкостиБлижний бой, огнестрел, патроны
MechanicsLoot, OtherLootШкала редкостиЗапчасти для машин, всё остальное
LootRespawn1 нет, 2 каждый день, 3 каждую неделю, 4 каждый месяц, 5 каждые два месяцаПополняются ли контейнеры
SeenHoursPreventLootRespawnЧасы, 0 выкл.Недавно осмотренные контейнеры не пополняются
MaxItemsForLootRespawnЧислоКонтейнер, где предметов больше этого, не пополняется
ConstructionPreventsLootRespawntrue / falseОбласти рядом с постройками игроков не пополняются

Шкала редкости в большинстве релизов Build 41 идёт от Extremely Rare до Abundant в пять шагов, а в поздних релизах добавились шаги на редком конце. Какая у вас, покажет комментарий.

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

Респавн лута меняет долгую игру сильнее любой настройки редкости. При LootRespawn равном 1 карта конечна: что группа забрала, того больше нет, и через несколько месяцев серверу нужен сброс - о нём статья сброс сервера Project Zomboid. С еженедельным или ежемесячным респавном плюс ConstructionPreventsLootRespawn города медленно наполняются, а базы остаются нетронутыми, и это подходит публичному серверу, где игроки приходят и уходят.

Мир: погода, природа и события#

ПараметрЗначенияЧто делает
Temperatureот 1 очень холодно до 5 очень жаркоКлимат
Rainот 1 очень сухо до 5 очень дождливоОсадки
ErosionSpeedот 1 очень быстро до 5 очень медленноКак быстро природа забирает город
ErosionDaysДниНачальная эрозия, как будто время уже прошло
Farmingот 1 очень быстро до 5 очень медленноСкорость роста посевов
NatureAbundanceот 1 очень бедно до 5 очень обильноСобирательство и рыбалка
PlantResilience, PlantAbundanceШкалыБолезни посевов и урожайность
Alarmот 1 никогда до 6 очень частоСигнализации в домах
LockedHousesот 1 никогда до 6 очень частоЗапертые двери в домах
FoodRotSpeed, FridgeFactorШкалыПорча еды и насколько холодильник её замедляет
GeneratorSpawningШкалаКак часто попадаются генераторы
GeneratorFuelConsumptionМножительРасход топлива в час
Helicopter1 никогда, 2 один раз, 3 иногда, 4 частоСобытие с вертолётом, которое собирает орды
MetaEvent1 никогда, 2 иногда, 3 частоДалёкие выстрелы и похожие события
NightDarknessот 1 кромешная тьма до 4 светлоНасколько темны ночи
FireSpreadtrue / falseРаспространяется ли огонь

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

Alarm и LockedHouses формируют начало игры сильнее, чем кажется. Частые сигнализации наказывают небрежный лутинг ордой; частые запертые дома подталкивают игроков к инструментам и окнам.

FireSpread на публичном сервере - вопрос гриферства. Если он включён, один коктейль Молотова может сжечь целую улицу баз игроков. Решайте, держа в уме правила о сейфхаусах.

Персонажи и прогрессия#

ПараметрЗначенияЧто делает
XpMultiplierЧисло, по умолчанию 1.0Умножает опыт навыков
XpMultiplierAffectsPassivetrue / falseУскоряет ли он также Fitness и Strength
StatsDecreaseот 1 очень быстро до 5 очень медленноСкорость голода, жажды и усталости
Nutritiontrue / falseСимуляция веса и питания
StarterKittrue / falseПоявление с базовыми предметами
CharacterFreePointsЧисло, по умолчанию 0Дополнительные очки черт при создании
ConstructionBonusPointsШкалаПрочность построек игроков
InjurySeverity1 низкая, 2 обычная, 3 высокаяНасколько тяжелы травмы
BoneFracturetrue / falseМогут ли ломаться кости
ClothingDegradationШкалаКак быстро изнашивается одежда

XpMultiplier - самый часто меняемый параметр в этом разделе и самый часто перекрученный. Удвоение делает сервер, где играют несколько вечеров в неделю, честным; умножение на десять превращает начало игры в формальность, и через две недели игрокам уже не к чему стремиться. Помните, что DayLength уже влияет на прогрессию, потому что чтение и многие действия занимают игровое время.

CharacterFreePoints - более мягкая альтернатива повышению опыта. Несколько дополнительных очков позволяют взять одну-две положительные черты без сильных отрицательных, что помогает новичкам, не меняя долгую игру.

Машины#

ПараметрЗначенияЧто делает
EnableVehiclestrue / falseЕсть ли машины вообще
CarSpawnRateот 1 нет до 5 многоСколько машин существует
ChanceHasGas1 низкий, 2 обычный, 3 высокийТопливо в найденных машинах
InitialGasШкалаНасколько полны их баки
FuelStationGasШкалаТопливо в колонках
LockedCarот 1 никогда до 6 очень частоЗапертые машины
CarGeneralConditionШкалаСостояние появившихся машин
TrafficJamtrue / falseОбломки, перекрывающие главные дороги
CarAlarmот 1 никогда до 6 очень частоСигнализации в машинах
PlayerDamageFromCrashtrue / falseРанят ли аварии водителя
SirenShutoffHoursЧасыКогда замолкают сирены экстренных служб

Машины стоят серверу производительности, потому что езда быстро подгружает чанки. Важны и CarSpawnRate, и ограничение скорости машин в ini; сторона производительности разобрана в статье лаги сервера Project Zomboid.

Zombie Lore#

ZombieLore - вложенная таблица, и она определяет, что такое зомби.

ПараметрЗначенияПо умолчанию
Speed1 спринтеры, 2 быстрые шаркуны, 3 шаркуны, 4 случайно2
Strength1 сверхчеловеческая, 2 обычная, 3 слабая, 4 случайно2
Toughness1 крепкие, 2 обычные, 3 хрупкие, 4 случайно2
Transmission1 кровь и слюна, 2 только слюна, 3 заражены все, 4 нет1
Mortalityот 1 мгновенно до 7 никогда5, 2-3 дня
Reanimateот 1 мгновенно до 6 1-2 недели3, 0-1 минута
Cognition1 ориентируются и открывают двери, 2 ориентируются, 3 базовая ориентация, 4 случайно3
Memory1 долгая, 2 обычная, 3 короткая, 4 нет, 5 случайно2
Sight, Hearing1 орлиный / точный, 2 обычный, 3 слабый, 4 случайно2
ThumpNoChasingtrue / falseПраздные зомби ломятся в двери и стены
ThumpOnConstructiontrue / falseЗомби повреждают постройки игроков
ActiveOnly1 всегда, 2 ночью, 3 днёмКогда зомби активнее

Главный параметр - Speed. Спринтеры на сервере для мультиплеера - режим для экзотики; к тому же под задержкой они выглядят хуже, потому что быстрое движение преувеличивает любой рассинхрон. Random смешивает скорости и считается популярным компромиссом.

Transmission и Mortality вместе решают, является ли укус смертным приговором. В ванили это кровь и слюна со смертью через два-три дня, что делает каждую драку в ближнем бою настоящим риском. Transmission = 4 полностью убирает заражение, и некоторые группы предпочитают это для сервера, сосредоточенного на строительстве.

Cognition = 1 даёт зомби умение открывать двери. Это меняет то, как игроки укрепляют базы, и об этом стоит объявить.

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

Zombie Config: популяция во времени#

ПараметрПо умолчаниюЧто делает
PopulationMultiplier1.0Общая плотность
PopulationStartMultiplier1.0Плотность в первый день
PopulationPeakMultiplier1.5Плотность на пике
PopulationPeakDay28День, когда достигается пик
RespawnHours72.0Часов до того, как клетка может снова заселиться. 0 отключает
RespawnUnseenHours16.0Сколько часов клетку перед этим никто не должен видеть
RespawnMultiplier0.1Доля исходной популяции, которая возвращается
RedistributeHours12.0Как часто зомби мигрируют между клетками
FollowSoundDistance100Как далеко зомби идут на звук
RallyGroupSize20Размер мигрирующих групп

Популяция начинается со стартового множителя и к дню пика поднимается до пикового. Сервер, который на первой неделе кажется нормальным, к четвёртой становится сложнее и тяжелее - так и задумано.

RespawnHours = 0 - самое частое изменение на серверах для мультиплеера. Без него области, которые игроки зачистили, медленно заполняются снова, и на сервере с несколькими игроками, каждый из которых зачищал свои улицы, это ощущается как бег на месте. Если выключить респавн, карта становится ресурсом, который группа постепенно вырабатывает. Цена - мир за месяцы становится тише, и для этого и существуют респавн лута или сброс по графику.

Таймеры удаления#

ПараметрПо умолчаниюЧто делает
HoursForCorpseRemoval216.0Игровых часов до исчезновения трупов
HoursForWorldItemRemoval24.0Игровых часов до исчезновения перечисленных предметов с пола
WorldItemRemovalListКороткий списокК каким предметам применяется таймер
ItemRemovalListBlacklistTogglefalsetrue - всё, кроме списка
DaysForRottenFoodRemoval-1Дней до исчезновения гнилой еды. -1 - никогда

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

Три готовых примера#

Настройки понятнее как набор, чем по одной. Вот три распространённых стиля серверов и решения, которые их определяют.

Сервер для друзей. Четыре-шесть человек, пара вечеров в неделю. Оставьте ванильный Zombie Lore, чтобы игра по-прежнему ощущалась как Zomboid, но поставьте RespawnHours = 0, чтобы зачищенные улицы оставались зачищенными. Поднимите XpMultiplier примерно до 2, чтобы группа видела прогресс между сессиями, и выберите двухчасовой DayLength, чтобы вечер покрывал примерно игровой день, а не три. Поставьте воду и электричество на диапазон 0-30 дней, чтобы первая настоящая веха пришлась на вторую-третью неделю игры. Оставьте респавн лута выключенным и запланируйте сброс, когда карта иссякнет. Добавьте PauseEmpty=true в ini, чтобы мир вас ждал.

Публичный сервер на выживание. Двадцать и больше игроков, которые приходят и уходят. Здесь мир должен продолжать давать ресурсы новичкам, поэтому респавн лута с недельным или месячным циклом и ConstructionPreventsLootRespawn = true важнее любой настройки редкости, а низкий RespawnMultiplier оставляет города опасными, не заполняя их целиком. Держите XpMultiplier около 1, чтобы давним игрокам было к чему стремиться. Выключите FireSpread, если ваши правила не готовы к поджогам, и хорошо подумайте, прежде чем включать событие с вертолётом, которое ударит по одним игрокам и обойдёт других. Сократите HoursForCorpseRemoval ради производительности.

Хардкорный сервер. Для групп, которые хотят, чтобы игра была жестокой. Speed = 4 для случайной смеси со спринтерами, Cognition = 1, чтобы двери не были защитой, более раннее отключение коммуникаций, Rain и Temperature, сдвинутые к крайностям, и осенний StartMonth, чтобы зима пришла раньше, чем группа будет готова. Оставьте XpMultiplier на 1, а CharacterFreePoints на 0. Об этом стоит сказать людям до того, как они зайдут, потому что хардкорный сервер, о котором не объявили как о хардкорном, производит в основном жалобы.

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

Как собрать файл и применить его#

Надёжная последовательность действий:

  1. В игровом клиенте выберите Host, затем настройки песочницы, и задайте всё, что хотите. Сохраните это как пресет, если будете использовать повторно.
  2. Один раз запустите игру как хост и выйдите. Клиент запишет servertest_SandboxVars.lua - с именем сервера, которое вы использовали при хостинге, - в Zomboid/Server/ на вашем компьютере.
  3. Остановите выделенный сервер.
  4. Загрузите файл в папку Zomboid/Server/ на сервере, при необходимости переименовав его под -servername сервера. Передача файлов описана в статье SFTP и файловый менеджер.
  5. Запустите сервер и проверьте несколько значений в админ-панели в игре.

Параметры, привязанные к созданию мира, - дата начала, время отключения коммуникаций - полностью вступают в силу только на новом мире. Всё остальное применяется к существующему миру со следующего запуска.

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

Сервер игнорирует мой файл песочницы. Он назван под другое имя сервера или лежит в папке установки, а не в Zomboid/Server/.

После правки сервер не запускается. Синтаксическая ошибка Lua, обычно пропущенная запятая. Консоль назовёт строку.

Настройка откатилась после перезапуска. Её поменяли в админ-панели, и она сохранилась в мире, или мир сохранил значение с момента создания. Задайте её в обоих местах.

Зомби гораздо больше, чем ожидалось. Zombies идёт в обратную сторону: 1 - это Insane. Проверьте и PopulationMultiplier.

Изменение отключения воды и электричества ничего не дало. Они отсчитываются от начала мира. На существующем мире действует исходное время.

FAQ#

Где лежит файл SandboxVars на сервере?

В Zomboid/Server/<servername>_SandboxVars.lua, рядом с одноимённым ini. Имя сервера берётся из -servername, по умолчанию это servertest.

Можно ли поменять настройки песочницы без перезапуска?

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

Какие настройки хороши для группы друзей?

Частая отправная точка - ванильные зомби со Speed = 2, RespawnHours = 0, XpMultiplier от 1.5 до 3, DayLength в один-два часа и выключенный респавн лута. Затем подправьте после первой недели.

Почему мои значения не совпадают с руководством, из которого я копировал?

Сборки различаются. Несколько шкал получили дополнительные шаги в ходе Build 41, а в Build 42 изменились многие параметры. Пользуйтесь комментарием над каждой строкой в своём сгенерированном файле.

Влияет ли XpMultiplier на Fitness и Strength?

Только если XpMultiplierAffectsPassive равен true. По умолчанию пассивные навыки качаются в своём обычном, медленном темпе.

Влияют ли настройки песочницы на производительность сервера?

Некоторые да: популяция и респавн зомби, частота появления машин и таймеры удаления трупов и предметов. Какие из них важны, разбирает статья лаги сервера Project Zomboid.


Комментарии

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

0/2000