Предметы, брошенные в открытой местности Valheim, со временем исчезают сами, но предметы, брошенные на территории базы, не исчезают никогда, и именно там на общем сервере накапливается хлам: камень у печи для обжига, древесина после рубки, смола и перья, которые никому не понадобились, - всё это лежит на полу месяцами. Каждый лежащий предмет - объект мира, который сервер хранит, владелец зоны симулирует, а каждый заходящий клиент загружает. Надгробия остаются, пока их не опустошат, а погибшие питомцы выбрасывают добычу, как и всё остальное. Ванильный инструмент уборки - админская devcommand removedrops, которая удаляет все лежащие предметы в загруженной области: мощная, необратимая, и перед ней стоит предупредить группу в чате и сделать бэкап.
Более общая картина того, что тормозит сервер, описана в статье Лаги сервера Valheim: владение зонами и рассинхронизация. Эта статья - о том, что накапливается.
Как Valheim обращается с предметами на земле#
Когда предмет покидает инвентарь - его выбросил игрок, он выпал из убитого существа, из разрушенного сундука, из срубленного дерева, - он становится отдельным объектом в мире с положением, типом предмета и размером стопки. Он сохраняется в файле мира так же, как строительный элемент.
Часть таких предметов игра убирает сама. Выброшенный предмет вне базы игрока уничтожается примерно через час, но только пока загружена его зона - таймер является частью симуляции, а там, где никого нет, ничего не симулируется. Предметы на территории базы игрока исключены и остаются бесконечно. "Базой" здесь называется область вокруг построенных игроком элементов базы, таких как верстаки и костры, - та самая, по которой враги узнают базу и не появляются прямо рядом с ней.
| Где лежит предмет | Исчезает? | Почему это важно |
|---|---|---|
| Дикая местность, зона загружена | Да, примерно через час | Старые поля боёв очищаются сами |
| Дикая местность, рядом никого | Не пока зона выгружена | Таймер идёт только при симуляции |
| На территории базы | Нет | Здесь накапливается хлам |
| В надгробии | Нет | Надгробия - контейнеры |
| В сундуке, телеге или на подставке | Нет | Контейнеры и подставки - не выброшенные предметы |
Точные значения таймера и радиуса области базы внутренние и менялись нечасто, но считайте "около часа" приближением, а не обещанием. Если это важно, бросьте кусочек смолы в поле и вернитесь проверить.
Это единственное правило объясняет типичную картину на сервере. Дикая местность выглядит аккуратной. А в главной базе в двадцати метрах от плавилен лежат триста стопок камня, дерева и осколков костей, и лежат они с тех пор, как расчистили болото.
Надгробия и забеги за трупом#
Когда игрок погибает, его инвентарь переходит в надгробие на месте гибели. Надгробия - контейнеры, а не выброшенные предметы, поэтому правило исчезновения на них не действует. Надгробие остаётся в мире, пока его не опустошат, и тогда оно исчезает.
Что это значит на сервере:
- Надгробия сохраняются после выхода и перезапусков. Игрок, который погиб и вышел из игры, оставляет надгробие до тех пор, пока не вернётся за ним.
- Надгробие может обыскать кто угодно. Обереги его не защищают. Другие игроки могут его опустошить, и на большинстве серверов правила велят этого не делать без просьбы.
- Невостребованные надгробия - тоже хлам. Игрок, ушедший с сервера после гибели на болоте, оставил в мире полный контейнер. Это один объект и небольшая нагрузка, но на давно работающем общественном сервере их могут быть десятки.
- Несколько смертей - несколько надгробий. Если погибнуть ещё раз по дороге к надгробию, останется второе с тем, что вы несли.
Сам штраф за смерть - потеря навыков и то, как его меняет модификатор, - описан в статье Штраф за смерть и надгробия в Valheim. Когда надгробие действительно потеряно, застряло под картой или в скале, статья инструменты админа для потерянных надгробий объясняет, как найти его с помощью pos и goto и когда лучше выдать предметы заново.
Погибшие питомцы, погибшие монстры и их добыча#
Погибшие существа выбрасывают добычу как обычные выброшенные предметы: мясо, шкуры, трофеи, чешую. Это относится и к прирученным животным.
- Погибший питомец не оставляет надгробия. Когда погибает прирученный волк, кабан или локс, он выбрасывает свою обычную добычу на землю и всё надетое, например седло локса. Добыча - выброшенные предметы, поэтому вне базы она исчезает, а на базе остаётся.
- Питомцы, погибшие на базе, оставляют постоянный хлам. Набег, убивший обитателей кабаньего загона, оставляет кучу сырого мяса и обрезков кожи, которые будут лежать, пока кто-нибудь их не подберёт.
- Загоны для разведения выбрасывают добычу постоянно. Загон, из которого берут мясо, каждый раз выбрасывает добычу внутри базы. Это нормально, если кто-то её собирает, и хлам, если нет.
- Добыча с монстров после набега. Враги из набега, убитые у стен, выбрасывают добычу на территории базы, поэтому набег на большую базу оставляет десятки лежащих предметов, которые никогда не исчезнут.
Питомцы - также одни из самых дорогих живых объектов на сервере, потому что каждого из них симулирует владелец зоны. Разумные размеры загонов разобраны в статье Питомцы, разведение и нагрузка на сервер Valheim. Коротко о хламе: кто ведёт загон, тот собирает его добычу.
Уборка с removedrops и другими командами#
Ванильные админские инструменты против хлама - devcommands. На выделенном сервере админ должен быть в adminlist.txt, включить консоль через -console в параметрах запуска Steam и ввести devcommands в консоли F5. О том, как их включить и чего стоит каждая, рассказано в статье Valheim devcommands: разбор.
| Команда | Что удаляет | Что не трогает |
|---|---|---|
removedrops | Все лежащие предметы в загруженной области вокруг вас | Надгробия, сундуки, подставки, телеги |
killenemies | Враждебные существа поблизости | Питомцев и игроков |
killtame | Прирученные существа поблизости | Врагов и игроков |
killall | Все существа поблизости, включая питомцев | Игроков |
removedrops действует на загруженную вокруг вас область, а не на радиус, который вы выбираете. Если встать посреди главной базы и запустить её, очистятся база и её окрестности - включая то, что игрок сознательно оставил на полу. Пол ведь используют как склад.
Безопасный порядок уборки общей базы:
- Объявите об этом. Например: "В воскресенье вечером убираем лежащие предметы на главной базе, всё нужное уберите в сундук" - в Discord сервера за несколько дней.
- Сделайте бэкап. На панельном хостинге сделайте ручной бэкап прямо перед этим. На RE:NODE это один клик на вкладке Backups, а восстановление - одна кнопка, если чья-то любимая куча трофеев окажется лежащей на полу.
- Встаньте в нужное место. Подойдите к центру захламлённой области. Если нужно добраться без прохода через чей-то дом, используйте
flyиз devcommands. - Запустите один раз.
removedrops, затем проверьте ответ консоли и осмотритесь. - Сохраните.
saveзаписывает мир немедленно, так что результат уборки переживёт сбой.
devcommandsremovedropssaveЧто со временем раздувает файл мира#
Мир Valheim - это один файл .db плюс небольшой .fwl. Свежий мир занимает несколько мегабайт; давно живущий - обычно десятки, а то и сильно больше сотни мегабайт. В файле хранится каждый объект, который помнит мир, и основной рост дают несколько категорий.
| Источник | Как растёт | Можно ли почистить? |
|---|---|---|
| Исследование | Каждая сгенерированная зона хранит свои деревья, скалы, растения и локации | Только регенерацией зон модом |
| Строительные элементы | Каждая стена, пол, факел и украшение | Разборкой |
| Правки рельефа | Запись рельефа на каждую изменённую зону | В ванильной игре нельзя |
| Выброшенные предметы | Один объект на каждую лежащую стопку | removedrops или подобрать |
| Контейнеры и содержимое | Сундуки, телеги, подставки и то, что в них лежит | Опустошением и удалением |
| Существа | Питомцы, племенной скот, монстры в загруженных зонах | Небольшие загоны, killtame в крайних случаях |
| Таблички, порталы, корабли | По одному объекту | Разборкой |
Исследование - самый большой фактор, и это не хлам, а сам мир. Когда игрок впервые подходит к зоне, игра генерирует её: растительность, скалы, собираемые предметы, подземелья и другие локации. Всё это становится сохранёнными объектами. Группа, обплывшая всю карту за месяц, раздувает файл гораздо сильнее, чем любое количество выброшенного камня. Поэтому же потребление памяти растёт вместе с исследованной частью карты, как объясняет статья сколько RAM нужно серверу Valheim.
Дальше идёт строительство. Большая база может состоять из многих тысяч элементов. Каждый хранится и загружается. Терраформирование добавляет собственные записи по зонам - см. Терраформирование на серверах Valheim.
Выброшенные предметы обычно составляют небольшую долю файла, но большую долю нагрузки там, где они лежат. Триста стопок в одной зоне базы - это триста объектов, которые симулирует владелец зоны и загружает каждый посетитель, и всё это в самом оживлённом месте карты. Их удаление больше помогает производительности базы, чем размеру файла.
Сам по себе файл заметно не уменьшается. Подбор предметов убирает объекты-предметы, а исследованные зоны, записи рельефа и элементы остаются, пока их не удалят.
Как поддерживать порядок в давно живущем мире#
Основная работа - это привычки, а не команды.
- Сундук для сброса у каждой рабочей зоны. Подписанный сундук рядом с печью, плавильнями и верстаком, чтобы у камня, дерева и костей было место, кроме пола.
- Подбирайте после рубки. Деревья, срубленные внутри базы, дают брёвна и древесину, которые никогда не исчезают. Если рубить вне территории базы, остатки уберутся сами.
- Отбивайте набеги на краю. Добыча с врагов из набега, убитых за стенами, может исчезнуть; внутри базы - нет.
- Выводите заброшенные форпосты из обращения. Форпост, которым никто не пользуется, по-прежнему хранит все элементы, сундуки и выброшенные предметы. Разберите его или хотя бы опустошите и переименуйте его портал, чтобы он не мог заново соединиться - см. проектирование хаба порталов Valheim.
- Ежемесячное окно для уборки. Объявите, сделайте бэкап, запустите
removedropsв главной базе и на самых оживлённых форпостах. Группы, которые так делают, редко видят замедление баз из-за хлама. - Следите за размером файла. Раз в месяц отмечайте размер
.dbв файловом менеджере панели. Устойчивый рост - норма; резкий скачок после одних выходных заслуживает вопроса. - Еженедельные перезапуски. Плановый чистый перезапуск удерживает память на одном уровне и гарантирует регулярное сохранение мира. Как предупредить игроков и сохраниться заранее, описано в статье Плановые перезапуски и автоматизация Valheim.
Моды могут автоматизировать часть этой работы. Upgrade World от JereKuusela включает команды для подсчёта и удаления объектов на больших территориях, чем достают ванильные команды, и для регенерации непосещённых зон; это точный инструмент без отмены, поэтому прочитайте Upgrade World для Valheim и сделайте бэкап, прежде чем его использовать. На Thunderstore есть и серверные моды очистки, которые удаляют старые предметы по таймеру. Они работают, но возвращают проблему "пол как склад" в автоматическом виде - убедитесь, что все знают это правило.
Когда уборка - не ответ#
Хлам - проще всего обвинить в тормозах мира, но не всегда справедливо.
- Лаги, которые следуют за одним игроком, - это владение зоной, а не хлам. Лечение - перенос владения, а не удаление предметов.
- Долгая загрузка после телепортации - это клиент загружает место назначения. Более аккуратная база немного помогает; прибытие на портал сразу за базой помогает больше.
- Медленные сохранения в огромном мире - это размер исследованной карты плюс базы. Уменьшение
-saveintervalделает потерю прогресса при каждом сохранении меньше, а не само сохранение быстрее. - Мир, исследованный до самых краёв, уже достиг своего размера. Если производительность неприемлема, честный ответ - новый мир; как начать его, не потеряв ни у кого снаряжение, описано в статье новый мир без потери персонажей.
А если уборка пошла не так, мир - это один файл. Восстановите бэкап, сделанный перед ней; какие файлы хранить и почему автоматические бэкапы рядом с миром не считаются настоящей копией, объясняет статья Бэкапы Valheim и повреждение мира.
FAQ#
Исчезают ли выброшенные предметы в Valheim?
Вне базы игрока - да, примерно через час при загруженной зоне. На территории базы возле верстаков и костров они не исчезают никогда, поэтому базы и заполняются лежащими предметами.
Удаляет ли removedrops надгробия?
Нет. Надгробия, сундуки, подставки и телеги - контейнеры, а не лежащие предметы. removedrops очищает только предметы, лежащие на земле в загруженной области вокруг админа.
Можно ли отменить removedrops?
Только восстановлением бэкапа, сделанного до запуска. Отмены в игре нет, поэтому предупредите игроков и сначала сделайте бэкап.
Что происходит с седлом прирученного животного, когда оно погибает?
Оно падает на землю вместе с остальной добычей существа. Вне базы оно исчезнет, если его никто не подберёт, поэтому заберите его быстро.
Почему наш файл мира такой большой?
В основном из-за исследования и строительства. Каждая сгенерированная зона хранит свои деревья, скалы и локации, и каждый строительный элемент сохраняется. Выброшенные предметы обычно составляют малую часть размера, но большую часть локальных лагов там, где они лежат.
Стоит ли использовать мод автоматической очистки?
На публичном сервере с множеством случайных игроков он может помочь. На небольшом групповом сервере проще объявленный раз в месяц removedrops, и никто не теряет кучу, которую хотел сохранить.


