ValheimOne
Server plugin: live browser map, dungeon viewer, item codex, admin console, Discord alerts and opt-in gameplay modules. Map and console work with vanilla clients.ValheimOne
A BepInEx plugin for Valheim dedicated servers. It adds a live world map in the browser, a dungeon interior viewer, an item codex, a browser admin console, Discord alerts, an A2S query responder and 26 opt-in gameplay modules.
The map, console and alerts run on the server and work with unmodded players, including console players. Open source under the MIT licence: source, issues and documentation on GitHub.
Who installs it
| Where | Needed |
|---|---|
| Dedicated server | Always. Everything runs here. |
| A player's PC | Only for gameplay modules marked Synced. The server sends its settings to that player on join. |
| Console players | Nothing. They can join and use the shared map link. Synced modules do not apply to them. |
Keep the server and every PC on the same minor version, 0.13.x with 0.13.x.
Features
Live world map
The whole world in a browser, drawn from the server seed and updated in real time. Players, ships, carts, portals, tombstones, wards and beds move as they happen. Fog of war follows recorded player trails and exploration shared through cartography tables. A heatmap, a world timelapse and a playtime, deaths and distance leaderboard are included.

Three views
Admin sees everything. Shared shows live players and the layers the owner allows, with no admin actions. Public is read-only with its own fog and layer settings. With FogMode = trails or explored, FogHideUnexplored = true gives an opaque cover and withholds unexplored region names and markers. Fog controls the displayed map, not access to the underlying terrain tiles.

Dungeon interiors
Click a dungeon entrance for a top-down room schematic read from the game's own generated layout, with live players drawn inside it.

Item codex
Searchable items and recipes: weight, stack size, tiers, damage, armour, full recipes with station requirements, what drops an item and what it is used to make.

Browser admin console
A live server log and a command box with history and autocomplete. It runs whitelisted commands through the game's own console: kick, ban, save, or a scheduled shutdown that warns players first. Off by default.

Gameplay modules
Twenty-six opt-in modules covering carry weight, stamina, food, drops, gathering, build rules, portals, taming, raids, production speeds and more. Every module is off until you enable it, and most values reload without a restart. Each module's scope, including which ones are Synced, is listed in gameplay-modules.md.
Discord alerts and server query
Joins, leaves, deaths with their biome, raids, world saves and new days can be posted to a Discord webhook. A standalone A2S responder lets server browsers and monitoring tools see the server, including crossplay servers that do not answer A2S on their own. JSON status lives at /api/status and /api/players; see query.md.
Higher per-player send limit
Valheim lets the server have at most 10 KB of world updates on the way to each player, so a group playing close together gets updates in bursts and rubber-bands. ValheimOne raises that to 32 KB on Steam and crossplay alike, and lets Steam send up to 1 MB/s per player instead of a fixed 150 KB/s. It runs on the server only and is on by default; Enabled = false in [Network] turns it off. It turns itself off when Better Networking or another mod that changes the same limit is installed.
Install
On a player's PC with a mod manager
- Install ValheimOne into your profile in r2modman or Thunderstore Mod Manager. BepInExPack_Valheim is installed with it.
- Start the game from the manager with Start modded and join the server.
BepInEx/LogOutput.login the profile showsSent VO_Hello to serverandServer config appliedafter you join.
Your local config file is not changed by the server's settings.
On a dedicated server
The server needs BepInExPack_Valheim.
- Stop the server. Copy
plugins/ValheimOne.dllfrom this package toBepInEx/plugins/ValheimOne.dllin the server folder. - Start the server once so it writes
BepInEx/config/valheimone.cfg, then stop it. This package ships no config file, so an update never overwrites yours. - In the
[LiveMap]section setEnabled = true, choose a long uniqueAccessToken, and keepPublicView = falsewhile you set up access. The live map is off by default. - Start the server and wait for the world to load. The default map port is TCP
8790. On a trusted network openhttp://your-server-ip:8790/?token=YOUR_ADMIN_TOKEN. Use an HTTPS reverse proxy for authenticated access over the Internet. Behind a proxy, setRelayKeyto a long random value and have the proxy send it in anX-Relay-Keyheader; the map then refuses every request without it, except from the server machine itself. - Optional:
ConsoleEnabled = truefor browser commands,EntityLayer = truefor ships, carts and portals, and a separateShareTokenorPublicView = truefor sharing. Keep the admin token private.
EnforceMod = true in [Server] kicks players without ValheimOne, including console players. Leave it false on a mixed or crossplay server.
Compatibility
Tested on the Valheim 1.0.21 dedicated server with BepInExPack_Valheim 5.4.2351. After a Valheim patch, check the changelog before you update.
Remove it
Delete ValheimOne.dll and BepInEx/config/valheimone.cfg, or uninstall it from the mod manager profile.
Bugs and source
Report bugs on GitHub Issues. The DLL is a deterministic build: tools/package-thunderstore.sh at the release tag rebuilds this package byte for byte.
