Source-checkedAdmin & protection

ZoneSavior

by sighsorry · for Valheim

Archive inactive-player structures and tamed animals per zone, save/load/restore zone bundles, track player activity, configure archive exclusions, and enforce per-zone WearNTear limits.

2.6KDownloads
6d agoLast updated
BepInExLoaders
ThunderstoreSource

About ZoneSavior

From Thunderstore

Archive inactive-player structures and tamed animals per zone, save/load/restore zone bundles, track player activity, configure archive exclusions, and enforce per-zone WearNTear limits.

ZoneSavior

Archive inactive-player structures and tamed animals per zone, save/load/restore zone bundles, track player activity, configure archive exclusions, and enforce per-zone WearNTear limits.



ZoneSavior is a Valheim server maintenance mod for zone-based cleanup, archive, restore, and build-count control.

It can:

  • archive inactive player structures into zone bundle files
  • restore saved bundles to the original place or a new zone
  • optionally reset archived source zones
  • enforce per-zone WearNTear limits from zones.yml
  • block selected building prefabs in matching zones before normal player placement
  • track player activity for inactive-owner cleanup
  • provide an optional client zone UI

The zone UI hotkey (F8 by default) displays the current zone boundary with eight 64m corner extensions. The lines follow the terrain, with height samples every 4m, to help estimate neighboring zones.

Files

ZoneSavior uses one BepInEx config file and one data folder:

BepInEx/config/
  sighsorry.ZoneSavior.cfg
  ZoneSavior/
    activity.yml
    zones.yml
    Diagnostics/
    ZoneBundles/
      tag_name/
        manifest.yml
        bundle001_<generation>.zonebundle.yml.gz

activity.yml stores player activity, scan state, and recent scan records. ZoneSavior reloads it conservatively at runtime: broken YAML, dirty runtime state, and active scans are ignored.

zones.yml stores zone limits and archive protection rules. Every rule must declare a non-negative limit. Steam IDs are the best long-term protection key; player names are convenient but can change.

Building rules

Rules match zone coordinates inclusively, from top to bottom. The first match supplies both the count policy and the optional blocked_pieces list; lists from overlapping rules are not merged. A limit applies to each individual zone, not the entire matching rectangle.

defaults:
  count_creatorless: false
rules:
  - name: center_keep
    x: [-1, 1]
    z: [-1, 1]
    limit: 50
    count_creatorless: true
    blocked_pieces:
      - portal_wood
      - piece_workbench
  - name: outer_ring
    x: [-2, 2]
    z: [-2, 2]
    limit: 100

blocked_pieces uses exact, case-sensitive prefab names, not translated display names or wildcards. Omitted, null or empty lists allow all prefab types; blank entries are rejected and an invalid reload retains the previous configuration. Repeated names are deduplicated. The example blocks only new normal player placement of wooden portals and workbenches in the center zones. Existing objects, network loading and administrative bundle restore are unaffected. Administrators using normal placement follow the same rule.

Piece bans operate independently of Zone WearNTear Limit, which still controls only the existing WearNTear quantity restriction. They also cover building pieces without WearNTear; count_creatorless changes only what contributes to the quantity count. A count limit of 50 allows 50 counted objects; it rejects the next one.

For dedicated servers, install this updated ZoneSavior build on both server and clients. The server supplies the YAML through the existing settings synchronization; the placing client rejects a banned prefab after refreshing the target position and before creating an object or spending materials, stamina or durability. This is not a server-only anti-bypass system. Other mods that directly instantiate objects or bypass Player.TryPlacePiece require separate integration. The existing count limit still uses loaded local structures and post-placement removal; it does not reserve capacity on the server for simultaneous builders.

Localization

Building-limit/blocked-piece messages and the F8 zone/support-grace HUD use the game's selected language. English and Korean YAML are embedded in the DLL, so no external file is required. Untranslated keys/languages fall back to English. Administrative commands, diagnostics, logs and configuration descriptions retain their existing text.

Following Homestead's translation file convention, optional ZoneSavior.<Language>.yml or .yaml files anywhere under BepInEx/plugins override that language's bundled entries. Use the game's language name, for example ZoneSavior.Korean.yml. Restart after editing external files; changing the in-game language updates the registered translations and F8 HUD. Preserve the numbered formatting placeholders such as {0} and {1} when translating.

Release packages include ZoneSavior.English.yml and ZoneSavior.Korean.yml next to the DLL in both Thunderstore and Nexus ZIPs. These files are editable translation templates as well as runtime overrides when installed under plugins; keep only one external file per language to avoid duplicate overrides.

ZoneBundles/<tag>/manifest.yml records the archive shape. Each bundleNNN_<generation>.zonebundle.yml.gz stores one source zone as a compact, gzip-compressed YAML bundle. ZoneSavior reads and writes these files directly; no manual extraction is required. New bundle files are committed by replacing the manifest only after every zone is saved successfully.

Manifest versions 2 and 3 and compressed bundle payload version 3 are supported. Older formats, including uncompressed legacy zone bundles, are not loaded or converted. If the original world data is still available, create a new archive from the live world with the current ZoneSavior version before restoring it.

Diagnostics/ contains YAML reports written by zs_debugzone.

Config

Config sections:

Read the full description on Thunderstore →

Highlights

From source data

Loaders

Runs on BepInEx.

Footprint

Rated a light load on a server.

Last update

Its author last shipped an update 6d ago.

ZoneSavior on Nxeon

From our catalogue
One-click install
Supported on Nxeon Valheim servers, for BepInEx servers. We download it from Thunderstore, place it, and restart the server.
Server side
Optional on the server
Server type needed
BepInEx
Server load
light
Smallest plan we suggest
Valheim — 4 GB (4 GB RAM). This follows our own load rating above, not a benchmark.
Latest build
1.3.2, released 2026-10-29

Game versions by loader

LoaderGame versionsNewest
BepInEx

From 22 recorded builds of ZoneSavior.

Recent builds

BuildReleasedGame versionsLoaders
1.3.22026-10-29n/aBepInEx
1.3.12026-10-17n/aBepInEx
1.3.02026-10-08n/aBepInEx
1.2.112026-09-09n/aBepInEx
1.2.102026-09-08n/aBepInEx
1.2.92026-09-04n/aBepInEx

Dependencies

Declared by the newest build that lists any. Required ones are installed with it on one-click installs.

Run ZoneSavior on a Valheim server

Pick a server or deploy a new one above; it is installed in one click.

What kind of mod it is

From the catalog
Listed on Thunderstore as “Admin”

Admin & protection

Permissions, moderation, anti-cheat and land protection for the people running the server.

Works on a server

From source side support

Thunderstore lists server-side support for ZoneSavior as optional: it can run on a server, but isn’t required there.

Compatibility

Game
Valheim
Loaders
BepInEx
Runs on
Serveroptional on the server
Requires
One-click install needs a BepInEx server.

Verified at the source

  • ✓ThunderstoreOfficial listing, checked 2026-10-29Open ↗
  • ✓Authorsighsorry, as published on Thunderstore
  • ✓LicenseNot published by the sourceFree

ZoneSavior, answered

Generated from the mod’s own source data.

Do my players need to install ZoneSavior?

Thunderstore lists server-side support for ZoneSavior as optional: it can run on a server, but isn’t required there.

Which loaders does it support?

BepInEx.

Is it free?

Yes. ZoneSavior is free to download from Thunderstore.

How do I add it to my Nxeon server?

Use “Add to a server” on this page, or open NxLabs from your dashboard. We install it, restart your server and switch it on.

NxLabs

Run ZoneSavior on a Valheim server.

Deploy in about a minute from $9.99 a month, then add ZoneSavior in one click.