ValheimAdminForge
Server-authoritative admin GUI: dynamic catalogs (items, effects, creatures, events) for vanilla + modded content, plus player, world and teleport tools.Valheim Admin Forge
One hotkey. Every item, creature, event and status effect in the game β searchable, inspectable, spawnable. Single-player, listen-server with friends, or dedicated, where every action is authorised by the server so a modified client can't abuse it.
Press Insert. That's the whole learning curve.
Why you'd want it
π An in-game wiki you can spawn from
Stop alt-tabbing to a wiki that's three patches out of date. Admin Forge reads the catalogs out of your game, so what you see is what you're actually running:
- Items β weight, stack size, max quality, value, prefab id.
- Creatures β faction, base health, boss flag, tameable or not.
- Every random event β biome, duration, trigger radius, exactly what it spawns, and which global keys gate it (missing ones flagged).
- Status effects β with real duration and power, so Poison / Burning / Frost behave like they do in a fight instead of ticking for nothing.
Want to know what a 2-star Fenring actually hits like, or whether a late-game armour set is worth the grind? Spawn it, look at it, despawn it β no loot, no death, no event credit. The world is exactly as you left it.
π² Run events on demand β including on dedicated servers
Vanilla's event command is server-only, so an admin connected to a dedicated server
can't start one at all. Admin Forge routes it through the server properly: start any
event on yourself, on another player, or at coordinates; stop the active one; or roll a
random. Good for raid nights, testing base defences, or giving your server a story beat.
π A moderation kit that works where the console doesn't
Most vanilla admin commands are refused for clients on a dedicated server. These aren't:
teleport a stuck player out of a rock, bring someone to you, heal them, hand out gear,
clear a griefed area, or sweep away a raid nobody wants to finish. Per-player name tags
(MODER, EVENT, your choice of colour) show on head-plates and in chat, so your team
is recognisable at a glance.
Need to send someone somewhere? Hit Map, click the spot on your own map, done β no copying coordinates out of a wiki. And when the whole admin team jumps to the same player, everyone lands in a ring around them instead of inside each other.
π§ͺ Practise fights without burning a real save
God, ghost, fly, no-cost building, instant skill levels, weather and time control, and a natural-spawn toggle for when you want silence. Set up the exact fight you want, then put everything back.
π§© Mods just work
Nothing is hard-coded β catalogs are rebuilt from live game data every session, so items, creatures, status effects and events added by other mods appear next to the vanilla ones with no per-mod support and no update needed from us.
Running a twenty-mod pack and can't remember which one added that sword? Type a mod's name into the Mod filter and the list collapses to exactly what it brought β items, creatures and effects alike.
What's in it
| Tab | What you get |
|---|---|
| Items | Search, category tabs, vanilla / modded / per-mod filter, sort, detail card, quantity stepper. |
| Effects | Every status effect, with optional duration / power and a Clear button for the ones that ignore their own timer. Same vanilla / modded / per-mod filter. |
| Creatures | Spawn with count, star level, tamed, health override and spread β filter by mod too. Plus Despawn: remove creatures / dropped items / fish / birds around a player without killing them. Players and tombstones are never touched. |
| Events | Full event list with detail cards. Start at self / player / coordinates, Stop, or Random. Header shows the active event. |
| Players | Teleport to a player, bring a player, send anyone to coordinates β or click the spot on the map and let Map fill them in. God, ghost, fly, nocost, heal, die, puke, repair-all, clean inventory, explore / reset map, raise / reset skill, and radius sweeps (kill all / enemies / tame, tame, aggravate). |
| World | Time of day, weather, wind and a natural-spawn toggle, broadcast to every client. Skip time or jump to next morning. Global-key editor with a reference list of what each key unlocks. |
A shared target picker runs through the whole mod β act on yourself or any online player from any tab.
Install
Requires BepInExPack Valheim or here.
Use a mod manager (Gale / r2modman), or drop ValheimAdminForge.dll into BepInEx/plugins/.
Dedicated servers: install it on the server too β that's what makes events,
cross-player actions and name tags work. Admins come from adminlist.txt; the mod matches
tolerantly, so a bare SteamID64 works even where Valheim's own check misses it.
Usage
Insert opens the window (rebindable), Esc or Insert closes it. Non-admins can't
open it unless General/AllowNonAdminWindow is set β and even then the server still
refuses every action.
Configuration
| Section / Key | Default | Notes |
|---|---|---|
General/ToggleKey |
Insert |
Open/close the window |
General/MaxQuantity |
100 |
Upper bound for the quantity field (client-side) |
General/AllowNonAdminWindow |
false |
Let non-admins open the window (actions still refused server-side) |
Window/Width, Window/Height |
640 Γ 720 |
Live-editable; min 560 Γ 560 |
Window/Opacity |
0.8 |
Window background opacity (1 = fully solid) |
Window/TextColor, Window/DimTextColor |
#000000 |
Text colours as hex, for whatever skin you like |
Server/MaxQuantity |
1000 |
Hard cap the server enforces per give request |
Server/StrictItemCheck |
false |
Reject items and effects the server's ObjectDB doesn't know. Off by default so client-only modded content works |
Server/MaxActionRadius |
100 |
Cap (m) on the Players-tab radius sweeps |
Server/MaxCreatureSpawn |
20 |
Cap on creatures per spawn request |
Server/AllowBossSpawn |
false |
Off by default β a stray Moder over someone's base ruins a server |
Server/MaxDespawnRadius |
100 |
Cap (m) on the despawn / cleanup sweep |
Server/PlayerTags |
true |
Name tags β see Player name tags for the file format |
Server/* only matters on the server/host machine β that's the point: the server owner
sets the limits, not the client.
Player name tags
Tags are defined on the server in BepInEx/config/ValheimAdminForge.tags.json β a
template is written there the first time the server runs with Server/PlayerTags on.
One entry per player, keyed by SteamID64:
{
"entries": [
{ "id": "76561198000000000", "tag": "ADMIN", "color": "#FF8800" },
{ "id": "76561198000000001", "tag": "EVENT", "color": "#33CCFF" }
]
}
| Field | Required | Notes |
|---|---|---|
id |
yes | The player's SteamID64 (17 digits). It's in the server log when they connect, or on their Steam profile page. |
tag |
yes | Text shown in brackets, e.g. [ADMIN]. |
color |
no | Hex #RRGGBB. Defaults to white if omitted. |
Edits apply within ~2 s β no restart. The tag renders on the head-plate / hover name,
in chat, on shout text, and in the Players tab, and survives death and respawn. A
client can't tag itself; the file only exists server-side. Set Server/PlayerTags = false to turn the whole feature off (nothing is read or written).
Security model
- The GUI is never the gate. Every action is authorised server-side against the real connection identity, which a client can't forge. A modified client that skips the window entirely still gets refused.
- The server owner sets the caps. Spawn counts, radii and quantities are bounded by
Server/*on the server machine. Unidentified or spammy requests are dropped silently. - Trust runs one way. A client trusts its server, so a malicious server running this mod could push items or a teleport onto you β inherent to any server-authoritative design. Only connect to servers you trust.
Server/StrictItemCheck = falselets a verified admin name a prefab the server doesn't know (needed for client-only content mods). Deliberate trade-off: no server-side whitelist of names, but the requester is already an authenticated admin.
Notes
- Client-only modded items still spawn β the admin's client resolves the prefab.
- Far teleports can leave a frozen copy of a player on other clients (a vanilla netcode quirk); the mod clears it a few seconds later.
- Weather / time / wind are process-local in vanilla, so the mod broadcasts them to keep everyone in the same world.


