Ванильный мир Valheim - это диск радиусом 10 000 метров с краем в 500 метров за ним, и каждое зерно (seed) - это другой взгляд на одну и ту же фиксированную схему. Два мода меняют это. Expand World Size (JereKuusela) меняет числа: радиус, растяжение, высоту, глубину воды, количество лесов, число размещаемых локаций. Better Continents заменяет части генератора слоями шума и картами-изображениями, так что высоты, биомы и стартовую позицию можно нарисовать самому. Оба мода должны стоять в одной версии на сервере и на ПК каждого игрока, потому что Valheim генерирует рельеф на клиенте. Оба предназначены для новых миров. Направьте их на мир, в который вы играете месяцами, и земля поедет под вашими постройками.
В этом руководстве объясняем, почему так, что меняет каждый мод, какие настройки важны, как сгенерировать мир с ними и загрузить на выделенный сервер, и чего стоит большой мир.
Как Valheim строит мир и почему это важно здесь#
Мир Valheim состоит из трёх вещей, и хранятся они по-разному.
- Базовый рельеф - высоты, биомы, где суша, а где море - нигде не сохраняется. Он вычисляется из зерна генератором мира каждый раз при загрузке зоны. Ваш файл
.dbне содержит формы земли. - Правки рельефа - всё, что игроки вскопали, подняли или выровняли, - хранятся в мире как изменения относительно вычисленной земли.
- Объекты - деревья, камни, собираемые растения, существа, подземелья, алтари боссов и каждый построенный игроками элемент - хранятся в мире после генерации их зоны. Локации (алтари, деревни, склепы, торговец) размещаются для всей карты при создании мира, и это размещение тоже сохраняется.
Поэтому мод, меняющий генератор, меняет пункт 1 для всех, кто его запускает, а пункты 2 и 3 остаются ровно там, где были сохранены. Этот единственный факт объясняет все правила ниже: почему клиентам нужен мод, почему ломаются существующие миры и почему создание мира занимает больше времени на большой карте.
Он объясняет и модель зон. Мир разделён на зоны по 64 метра, и каждую симулирует первый игрок, который в неё вошёл. Его игра генерирует для неё рельеф. Если его генератор отличается от генератора остальных, он ходит по другому миру.
Expand World Size: важные настройки#
Expand World Size должен стоять на всех клиентах и на сервере. Его настройки сохраняются в файле мира при сохранении мира и применяются при загрузке мира, так что у разных миров свои настройки; новые миры берут то, что в конфиге в этот момент. Хранятся только значения, отличные от стандартных.
| Настройка | Ванильное значение | Что меняет |
|---|---|---|
World radius | 10000 | Радиус игрового мира в метрах |
World edge size | 500 | Полоса края за радиусом; менять редко стоит |
Stretch world | 1 | Масштабирует всю схему: острова и океаны становятся больше |
Stretch biomes | 1 | Масштабирует размер биомов поверх растяжения мира |
Locations | 1 | Множитель числа размещаемых локаций (алтари, подземелья) |
Altitude multiplier | 1 | Умножает расстояние от уровня воды: глубже море, выше суша |
Altitude delta | 0 | Поднимает или опускает всё; положительные значения создают мелководье |
Water depth multiplier | 1 | Умножает итоговую глубину воды |
Forest multiplier | 1 | Количество леса |
Minimap size | 1 | Разрешение карты; при изменении сбрасывает исследованное |
README приводит формулу высоты water level + (altitude - water level) * multiplier + delta с уровнем воды 30 метров. Высота также определяет расположение биомов - поднимите её, и гор станет больше, - а снег по высоте зашит в код и за ней не следует.
Настройки размера взаимодействуют так, что люди на этом спотыкаются:
- Площадь растёт как квадрат радиуса. Удвоение радиуса до 20 000 метров даёт вчетверо большую площадь. Совет README - масштабировать
Locationsвместе с площадью: вчетверо больше при удвоенном радиусе, в шестнадцать раз больше при учетверённом. Иначе в дополнительных землях почти не будет подземелий и алтарей. - Растяжение - более мягкий вариант.
Stretch world2 вместе сStretch biomes0.5 сохраняет знакомую схему, но больше, а пятна биомов возвращаются к обычному размеру. - Большие карты рисуются дольше. Карта генерируется фоновой задачей, о которой говорит небольшой текст
Loading. Примеры из README: около 15 секунд при размере по умолчанию, 1 минута при размере 2, 4 минуты при размере 4, 16 минут при размере 8 и час при размере 16.ew_mapперегенерирует её вручную. - Есть предел формата сохранения. Valheim сохраняет мир кусками, покрывающими радиус 16 384 метра; всё дальше попадает в один кусок и вызывает сильные лаги. Expand World Size автоматически увеличивает сетку сохранения (до радиуса 65 536 метров) и конвертирует сохранение при загрузке. README однозначен: не загружайте и не сохраняйте мир больше 16 384 метров без мода, иначе объекты могут дублироваться.
Есть также Offset X и Offset Y, которые сдвигают ваш мир внутри большей фиксированной схемы Valheim, Seed, который полностью заменяет зерно (сохраняется навсегда), и ew_seeds, выводящий текущие смещения и зёрна. Есть и настройки рельефа Ashlands и Deep North; если вы используете и Expand World Data, меняйте их только в одном из двух модов.
Better Continents: рисование мира#
Better Continents работает на другом уровне. Вместо масштабирования ванильного генератора он даёт собственный: слоистую систему шума с отдельными искажением и масками на каждый слой, пресеты и интерфейс в игре для проектирования мира с живой картой. Сверх этого можно подавать ему файлы-изображения - карту высот, карту деталей, карту биомов, карту размещения локаций вроде стартового алтаря, боссов и торговца и карту лесов. Глобальные опции включают размер континента, уровень моря, масштаб лесов и явную стартовую позицию. Он может экспортировать полную карту в PNG в любом разрешении и по-прежнему нормально загружает ванильные миры.
Мир Better Continents - это три файла, а не два: обычные Name.fwl и Name.db плюс файл, оканчивающийся на .BetterContinents, рядом с ними, в котором хранятся настройки и данные изображений. Этот дополнительный файл должен ездить вместе с миром. В его документации сказано, что клиенту и серверу при запуске мира Better Continents нужна одна и та же версия Better Continents, а игроки по-прежнему могут заходить на ванильные серверы с установленным модом.
Проверьте пакет, прежде чем вести группу на него. Оригинальный Better Continents от billw2012 помечен на Thunderstore как устаревший с последнего обновления в 2022 году, а более поздний форк JereKuusela теперь тоже устарел. На момент написания поддерживаемый форк публикует Wubarrk, с недавними обновлениями. Прочтите его список изменений для текущей версии Valheim и помните, что долгоживущий мир зависит от того, что этот форк остаётся поддерживаемым. Миры Better Continents, построенные из карт-изображений, также могут быть очень большими на диске - авторы карт на Nexus иногда предупреждают, что их мирам тяжело работать на сервере, - так что посмотрите размер файла, прежде чем загружать чужую карту.
Почему существующим мирам плохо#
Вернёмся к трём слоям. Когда вы меняете размер мира или настройки генератора в уже существующем мире:
- Земля меняется под сохранёнными объектами. Деревья, камни и постройки игроков были сохранены на фиксированных высотах. Если новый генератор ставит землю на десять метров ниже, длинный дом парит; если выше - он закопан. README Expand World Size предупреждает, что некоторые настройки меняют рельеф настолько, что разрушают постройки.
- Правки рельефа относительны. Выровненная база была сохранена как изменение старой земли. Применённое к новой земле, оно может оставить яму или плато там, где была база.
- Биомы смещаются, а растительность нет. Зона, сгенерированная как Тёмный лес, сохраняет свои сосны и спавнеры Грейдвёрфов, даже если новая схема называет её Лугами.
- Локации уже размещены. Локации определяются при создании мира. Увеличьте радиус, и в новом внешнем кольце их не будет, пока вы не выполните ванильную команду
genloc, которая размещает то, что раньше разместить было нельзя. - Появляются швы. Зоны, в которых никто не бывал, сгенерируются по новым правилам рядом с зонами, сгенерированными по старым.
Единственное безопасное изменение для обжитого мира - то, что не затрагивает исследованные земли, и таких настроек мало. Ближе всех радиус: его увеличение оставляет рельеф внутренней карты в покое и добавляет землю только за старым краем. И тогда запустите genloc, сначала сделайте копию и проверьте лог.
Если ваша настоящая цель - "наш мир исчерпан, нужна новая земля", посмотрите сначала статью о старых мирах и новых биомах Valheim и мод Upgrade World, который перегенерирует зоны и локации внутри ванильного генератора, или начните новый мир и сохраните персонажей, как описано в статье о сбросе мира без потери персонажей.
Создание нового мира и загрузка на сервер#
Самый чистый путь - создать мир на ПК, проверить и загрузить.
- Установите мод в той версии, на которой будет работать сервер, в профиле менеджера модов. Убедитесь, что группа будет использовать тот же профиль - как им поделиться, показывает статья о профилях r2modman для группы.
- Задайте конфиг (Expand World Size) или спроектируйте мир в интерфейсе игры (Better Continents) до создания мира. О зерне - проверки хорошей стартовой области в руководстве по зёрнам Valheim.
- Создайте мир в одиночной игре, дождитесь окончания размещения локаций и посмотрите на карту. С Expand World Size
ew_seedsподтвердит, что вы создали. - Закройте игру, чтобы мир сохранился, затем найдите файлы в
worlds_local. - На сервере установите BepInEx и ту же версию мода, остановите сервер, загрузите файлы и задайте имя мира, совпадающее с ними. Точные шаги - в статье о загрузке локального мира.
worlds_local/ Midgard.fwl Midgard.db ...BetterContinents Better Continents worlds only: upload it tooГенерация прямо на сервере тоже работает: установите мод, задайте конфиг и запустите с именем -world, которого ещё нет. Первый запуск на большом мире занимает гораздо больше обычного, потому что локации размещаются по всей карте. Следите за консолью, пока мир не загрузится, прежде чем кто-то зайдёт, и не перезапускайте на полпути.
Чего стоит больший мир#
Большая карта стоит не того, чего боятся, а того, о чём забывают.
- Память следует за исследованием, а не за радиусом. Сервер держит то, что сгенерировано и построено. Мир радиусом 20 000 метров, исследованный так же, как ванильный, использует сходный объём памяти. Мир, который ваша группа активно исследует месяцами, растит свой
.dbс каждой посещённой зоной. - Создание мира медленнее. Больше локаций для размещения - дольше первый запуск, и README предупреждает, что большой множитель
Locationsможет значительно его увеличить. - Сохранения длиннее. Больший
.dbдольше записывается, и это подвисание игроки чувствуют на каждом интервале сохранения. - Путешествия длиннее. Это игровая цена. Рейды за рудой и походы к боссам растягиваются вместе с расстояниями, и правила порталов становятся более важным решением, чем обычно.
- Клиенты платят за генерацию карты. Большие размеры миникарты рисуются у каждого клиента минуты.
На RE:NODE память и диск - это ступени тарифа, от 2 ГБ и 15 ГБ на Starter до 8 ГБ и 50 ГБ на Premium. Модифицированный мир на большой карте - разумный случай для середины этого диапазона, а если он перерастёт тариф, переход на ступень выше меняет лимит на том же сервере, не перенося мир. Об источниках нагрузки на сервер в целом читайте в статье о производительности и лагах сервера Valheim.
Как сохранить модифицированный мир играбельным#
Мир, созданный модом генератора, зависит от этого мода всю свою жизнь. Несколько привычек поддерживают его жизнь:
- Закрепите версию. Не позволяйте серверу или игроку обновлять мод самому. Изменившееся значение по умолчанию в новой версии меняет рельеф у этого игрока.
- Храните конфиг вместе с копиями. Expand World Size хранит настройки в мире, но всё равно держите копию файла конфигурации. Для Better Continents файл
.BetterContinentsвходит в каждую резервную копию - копия без него непригодна. - Обновляйтесь после мода. В день патча Valheim подождите, пока мод поддержит новую версию, и сначала проверьте на копии мира. Порядок действий разобран в статье о модифицированном сервере после патча игры.
- Читайте лог BepInEx при первом запуске. Ошибки версии и конфига видны там задолго до того, как кто-то заметит странный рельеф. Что означают строки, объясняет статья об устранении неполадок по логу BepInEx.
- Кроссплей исключён. Игроки Xbox не могут ставить моды, а игрок без генератора видит рельеф, отличный от всех остальных. Считайте такие миры только для ПК - что нужно для кроссплея, см. в статье о кроссплее и игроках Xbox.
На RE:NODE резервные копии хранятся вне машины, которую они защищают, и их можно скачать, так что легко держать у себя на ПК и проверенную копию мира, и его файл .BetterContinents, и конфиг мода.
FAQ#
Можно ли увеличить мой текущий мир, не начиная заново?
Частично. Увеличение только радиуса в Expand World Size добавляет новую землю за старым краем и в принципе оставляет исследованную карту в покое; затем выполните genloc, чтобы разместить локации в новой области. Сначала сделайте копию и потом осмотрите свои базы. Остальные настройки - растяжение, высота, биомы - перекраивают исследованные земли и безопасны только в новом мире.
Видят ли игроки без мода тот же мир?
Нет. Их игра генерирует ванильный рельеф из зерна, поэтому они видят сохранённые постройки и деревья, стоящие на земле, которая им не соответствует. Всем, включая сервер, нужен мод той же версии и с теми же настройками.
Нужно ли для мира 20 000 метров вчетверо больше RAM?
Нет. Память растёт с тем, что сгенерировано и построено, а не с размером карты на бумаге. Большая карта позволяет этому расти дальше со временем и замедляет первое создание мира.
Можно ли использовать Expand World Size и Better Continents вместе?
Оба меняют генерацию мира, и некоторые настройки пересекаются. Используйте один мод генератора на мир, если только актуальная документация обоих модов не говорит, что сочетание поддерживается, и проверьте его локально, прежде чем вести на него группу.
Что будет, если мод перестанут обновлять?
Мир продолжит работать на последней версии игры, которую мод поддерживает, и больше нигде. В этом реальный риск модов генератора, поэтому статус поддержки здесь важнее, чем для мода повышения удобства.


