RE:NODE

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

Модификаторы мира Valheim, пресеты и перенос миров

Все модификаторы мира и пресеты Valheim, как менять их на живом сервере, почему нет аргумента для seed и как перенести мир, ничего не потеряв.

0 прочтений

Сложность Valheim - это не один ползунок. Это пять модификаторов, четыре переключателя и семь пресетов, и на выделенном сервере всё это задаётся аргументами запуска, потому что у сервера нет конфигурационного файла. Они применяются при старте, привязываются к миру и могут быть изменены позже без потери построек и прогресса - это самое обратимое решение, которое вы принимаете насчёт сервера, и то, о чём группы спорят дольше всего. В этой статье разобрано каждое значение, объяснено, какие из них меняют сам характер игры, а не просто степень сложности, а затем рассмотрена вторая половина задачи: как получить определённый seed на выделенном сервере, как перенести мир с чьего-то ПК и как вернуть его, когда сохранение испортилось. Сам сервер - порты, пароли, списки администраторов - описан в руководстве по выделенному серверу Valheim.

Как модификаторы попадают на сервер#

Три аргумента, применяемые в определённом порядке:

bash
$ ./valheim_server.x86_64 -nographics -batchmode \    -name "Crew" -world "Midgard" -password "herring-barrel-42" \    -preset casual \    -modifier combat hard -modifier portals casual \    -setkey nobuildcost -setkey nomap

-preset применяется первым и задаёт сразу все пять модификаторов. Затем каждый -modifier переопределяет один из них, так что строка выше означает «casual, но бой hard, а порталы пропускают всё». -setkey включает переключатель, которого не касается ни один пресет, кроме пары. И -modifier, и -setkey можно указывать сколько угодно раз.

Каждый -modifier принимает два отдельных токена - название и значение, а не одну строку в кавычках. -modifier combat hard верно; -modifier "combat hard" молча игнорируется, как и -modifier combat veryHard с неверным регистром. Эта тишина - сквозная тема: Valheim не отвергает неверный модификатор, а просто не применяет его, и первое, что вы об этом слышите, - игрок, удивляющийся, почему грейдвархи бьют по-прежнему так больно.

На хостинге с панелью эту командную строку вы писать не будете. Те же аргументы - это поля на вкладке Startup, обычно одно для пресета и одно свободное текстовое поле для дополнительных аргументов, и правило двух токенов действует и внутри этого поля. В одиночной игре те же настройки находятся за экраном модификаторов мира в меню паузы; клиенты, подключённые к выделенному серверу, этого экрана не получают, потому что правила принадлежат серверу.

Пресеты и для чего каждый из них#

ПресетЧто это
normalПо умолчанию. Каждый модификатор на стандартном значении
casualСнисходительный по всем направлениям: более мягкий бой, минимальный штраф за смерть
easyСтупень легче normal, но не до casual
hardБолее сильные враги и более тяжёлый штраф за смерть
hardcoreСуровый край каждой шкалы
immersiveНи карты, ни порталов. Игра о путешествиях и ориентировании
hammerСтроительство без затрат материалов

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

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

Каждый модификатор и его значения#

МодификаторЗначенияЧто меняет
combatveryeasy easy normal hard veryhardУрон, который враги наносят и получают
deathpenaltycasual veryeasy easy normal hard hardcoreЧто вы теряете при смерти
resourcesmuchless less normal more muchmore mostДобыча со всего, что можно собрать
raidsnone muchless less normal more muchmoreКак часто случаются нападения на базу
portalscasual normal hard veryhardЧто можно провозить через порталы

`combat` масштабирует урон в обе стороны. Он не меняет поведение врагов, скорость появления и прогрессию по биомам, так что veryeasy всё равно означает, что поход по равнинам в неудачное время вас убьёт, - просто чуть дольше. Полезно знать перед выбором: Valheim и без того масштабирует здоровье и число врагов в зависимости от того, сколько игроков находится в области. Группа из восьми на combat normal играет в более трудную игру, чем двое на combat hard, поэтому большие группы часто в итоге снижают значение, а не повышают.

`deathpenalty` - тот, что меняет манеру игры. На casual вы сохраняете предметы и прогресс навыков, так что смерть стоит вам лишь обратной дороги. На hardcore надгробия нет вообще, а то, что вы несли, пропадает. Промежуточные значения балансируют между потерей прогресса навыков и возможностью вернуть снаряжение. Экран модификаторов мира в игре одним предложением описывает точный эффект каждого варианта, и этот текст - авторитет: между обновлениями его переформулировали, и страница вики скорее устарела, чем игра.

`resources` умножает то, что вы получаете от добычи руды, рубки, собираемых объектов и трофеев существ. Это самый безопасный регулятор для группы с ограниченным временем по вечерам: more примерно вдвое сокращает гринд, не трогая ни одной из угроз игры. Переход на most ломает темп, потому что барьеры прогрессии Valheim построены на том, сколько времени требуется на накопление металла, а без него остаётся очень короткая игра.

`raids` управляет частотой событий нападения на базу. none отключает их полностью, что верно для сервера, ориентированного на строительство, и неверно почти для всех остальных - нападения и есть главная причина, по которой существует оборона. less - настройка для группы, которая постоянно теряет верстаки, пока никого нет онлайн.

`portals` - самый значимый модификатор игры. Valheim построен на том, что металлы не проходят через порталы, и именно поэтому важны лодки, маршруты с телегами и форпосты. casual пропускает всё и убирает весь этот слой. Одним группам это нравится, а другим после этого игра кажется пустой. Решайте до первой поездки в болото, а не после, потому что отмена превращает решённую логистическую задачу обратно в нерешённую. На другом конце veryhard убирает порталы совсем, и это главная особенность пресета immersive.

Переключатели setkey#

-setkey принимает одно название и включает этот переключатель. Четыре из них входят в систему модификаторов:

КлючЭффект
nobuildcostПостройки не требуют материалов
playereventsСобытия запускаются по прогрессу каждого игрока, а не мира
passivemobsСущества не нападают, пока их не атакуют
nomapНи карты, ни миникарты ни у кого

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

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

passivemobs существует для строительных серверов и серверов для скриншотов. Это не столько настройка сложности, сколько другая игра.

Смена правил в уже существующем мире#

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

Две практические предосторожности.

Во-первых, задавайте значения явно, а не удаляйте аргумент. Состояние модификаторов хранится вместе с миром, и возвращает ли удаление -modifier combat hard бой к normal или оставляет последнее значение, - это не то, что стоит выяснять предположениями. Напишите -modifier combat normal, и вы будете знать, что имеете.

Во-вторых, изменение правила действует только вперёд. Понижение deathpenalty не вернёт никому навыки, потерянные на прошлой неделе. Установка raids в none не отменит уже начавшееся событие. А resources more не наполнит сундуки задним числом.

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

Seed: единственное, что нельзя задать при запуске#

Аргумента для seed нет. Выделенному серверу нельзя велеть сгенерировать мир из seed; он либо загружает найденные файлы мира, либо генерирует случайный. Если вам нужен конкретный seed - известный или разведанный кем-то, - путь такой:

  1. Создайте мир в одиночной игре, введя seed на экране создания мира.
  2. Выйдите в главное меню, чтобы файлы записались.
  3. Загрузите два файла на сервер.
  4. Запустите сервер с -world, равным этому имени.

Seed хранится в файле .fwl, это несколько сотен байт метаданных. Поэтому загрузка одного только .db даёт мир, который выглядит неправильно: ландшафт заново создаётся из того seed, который есть у сервера, и сохранённые объекты перестают с ним совпадать. Эти два файла - пара, и всегда переносятся вместе.

Чтобы узнать seed существующего мира, откройте список миров в игре и выберите его; seed показывается на панели выбора. Изменить seed существующего мира нельзя, потому что ландшафт генерируется из него по требованию, а не хранится.

Перенос мира на сервер и обратно#

Мир Valheim - это два файла. Персонажи - третий, и они лежат на машине каждого игрока.

code
worlds_local/    Midgard.fwl                              seed and metadata    Midgard.db                               everything else    Midgard.fwl.old                          the previous save    Midgard.db.old    Midgard_backup_auto-20260921-031500.db   automatic backupcharacters_local/    Odin.fch                                 a character, on the player's PC

Где их найти на клиентской машине:

ПлатформаПуть
Windows%USERPROFILE%\AppData\LocalLow\IronGate\Valheim\worlds_local\
Linux~/.config/unity3d/IronGate/Valheim/worlds_local/
Сервер с -savedir<savedir>/worlds_local/

Если папка Windows пуста, мир находится в Steam Cloud. Откройте игру, воспользуйтесь Manage Saves и перенесите его из облака в локальное хранилище, прежде чем снова искать файл.

Сама загрузка:

  1. Остановите сервер. Загрузка поверх работающего мира ничего не даёт, потому что следующее сохранение запишет память поверх вашего файла.
  2. Загрузите оба файла в worlds_local по SFTP или через файловый менеджер - данные для подключения есть в статье SFTP и файловый менеджер.
  3. Совпадение имени должно быть точным, включая заглавные буквы. -world "Midgard" загружает Midgard.db, а midgard.db на Linux-сервере - другой файл.
  4. Запустите и смотрите лог, чтобы мир был загружен, а не создан. Если там написано, что мир сгенерирован, имя не совпало, и ваши исходные файлы остались нетронутыми рядом с новыми.

Восстановление работает так же, только в обратную сторону. Пара .old - это предыдущее сохранение; файлы с отметками времени - автоматические резервные копии, управляемые параметрами -backups, -backupshort и -backuplong. Чтобы откатиться, остановите сервер, уберите в сторону действующую пару, переименуйте подходящую пару .db и .fwl на место и запустите. Обе половины всегда берите из одного и того же момента времени.

Эти встроенные резервные копии лежат в той же папке на том же диске, что и мир, а значит, защищают от повреждённого сохранения и ни от чего больше. Настоящие копии должны находиться там, куда сервер не достаёт, создаваться по расписанию и время от времени восстанавливаться, чтобы доказать, что работают, - доводы приведены в статьях резервные копии, которые действительно восстанавливаются и проверка восстановления до того, как оно понадобится. На RE:NODE слоты резервных копий есть в каждом тарифе Valheim, они хранятся вне защищаемой машины, восстановление - это кнопка, а вкладка Schedules принимает ночную копию по cron-выражению. Переход между тарифами меняет лимиты уже существующего сервера, так что мир остаётся на месте, и это другая задача, чем переезд без потери игроков.

Устранение неполадок#

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

Мир перегенерировался с новой картой. Имя в -world не совпадает с файлами, либо был загружен только .db. Ваши оригиналы всё ещё в worlds_local. Исправьте имя, удалите мир, который только что создал сервер, и перезапустите.

Seed не тот, который я выбрал. Файл .fwl не переехал либо он от другого мира, чем .db. Загрузите пару заново из одной и той же исходной папки.

Игроки по-прежнему получают нападения после `-modifier raids none`. Событие, уже идущее, доигрывается до конца, а none не останавливает скриптовые столкновения, которые относятся к миру, а не к системе нападений. Дайте ему перезапуск и день, прежде чем делать вывод, что не сработало.

Сложность кажется неправильной для размера группы. Работает масштабирование врагов по числу игроков поблизости, а не ваш модификатор. Восемь игроков в одном месте - это самое трудное, чем бывает Valheim, при любой настройке боя.

Мир откатился ко вчерашнему дню. Произошло восстановление, либо сервер стартовал из файла .old, после того как действующая пара оказалась повреждена. Проверьте отметки времени файлов в worlds_local, прежде чем делать что-либо ещё, и скопируйте всю папку в безопасное место, прежде чем экспериментировать.

FAQ#

Можно ли изменить сложность, не начиная новый мир?

Да. Модификаторы применяются при запуске и влияют на правила с этого момента. Остановите сервер, измените аргументы, запустите: постройки, сундуки, персонажи и исследованная карта остаются нетронутыми.

Работают ли модификаторы мира на сервере с модами?

Да, и применяет их сама игра, а не BepInEx, поэтому обновление мода их не затрагивает. Если мод также меняет значения боя или ресурсов, два эффекта складываются способами, которые никто не описывал, так что меняйте по одному. Установка модов на сервер описана в статье моды Valheim с BepInEx.

Видят ли игроки, какие модификаторы активны?

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

Чем пресет immersive отличается от -setkey nomap?

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

Можно ли запустить два мира на одном сервере?

Не из одного процесса. Один сервер Valheim загружает один мир. Второй мир - это второй сервер на второй паре UDP-портов, с разным -instanceid, чтобы они не путали регистрацию сессий друг друга.

Достаточно ли автоматических резервных копий?

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


Комментарии

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

0/2000