-
Notifications
You must be signed in to change notification settings - Fork 0
Admin Commands
ValheimServerGuide adds four console commands for testing and moderation. Open the F5 console to use them.
Requirement: You must have
devcommandsenabled and be an admin. In single-player or as the host, you always qualify. On a dedicated server, you must be listed inadminlist.txt.
Lists all guidance IDs — which are configured, which have fired, and their scope and features.
vsg_list
Output example:
[VSG] Configured guidance IDs (3 total):
first_bronze_sword [fired] [player]
world_eikthyr_fell [global]
swamp_tip [discord] [cooldown]
Each ID is tagged with:
| Tag | Meaning |
|---|---|
[fired] |
This entry has already fired for the current character (once: true entries) |
[fired N/max] |
This entry uses max_fires; shows current count vs cap (these never appear in the Fired list above) |
[global] |
This is a global-scope entry |
[discord] |
This entry has an announce.discord configured |
[Complete ✓ (vN)] |
Chain entry — all steps done, at version N |
Clears the fired state for one or all entries.
vsg_reset all
Clears all player-scope state for the current character:
- Every
once-fired ID (VSG.fired) - Every
max_firescounter (VSG.fc.*) — required so capped entries likeplayer_deathtips can fire again - All chain progress, NPC item-submit counts, and item-acquired goal state
- All in-memory cooldowns
- The raven display queue and dungeon-deferred raven queue
- Stale vanilla raven temp-texts for all VSG entries (so raven re-show isn't blocked by a leftover
Raven.m_tempTextsentry) - Vanilla
Player.m_shownTutorialsflags for all VSG raven entries
Global-scope state is untouched.
vsg_reset first_bronze_sword
Clears the fired state and cooldown for a single entry. The command auto-detects scope:
-
Player-scope ID — cleared from the local character's
m_customData. Only affects the admin running the command. -
Global-scope ID — must be run on the server/host. Removes the
VSG.<id>global key fromZoneSystem. The entry can fire again for the entire world.
For a single-id reset, the following are also cleared for that entry:
- The
max_firescounter (VSG.fc.<id>) - Any pending raven queue entry or dungeon-deferred entry
- Any stale
RavenTextin the vanillaRaven.m_tempTextslist (so the raven can re-show without being blocked by a leftover from before the reset) - The vanilla
Player.m_shownTutorialsseen-flag (for raven entries)
Tab-complete on vsg_reset suggests all and all known guidance IDs from the current config.
Show the full guidance state of any currently-online player.
vsg_list_player <playerName>
The console prints requesting… immediately; the results arrive asynchronously after a short RPC round-trip to the target player's client.
Output example:
=== ValheimServerGuide (SomePlayer) ===
Fired (2):
- first_bronze_sword
- swamp_tip
Fire counts (1):
- companions_tip = 2
Chain state:
- tutorial_chain: complete
- gather_chain: step 2
Submit state:
- trader_job: 5 submitted
Goal state:
- collect_ore: started
Notes:
- Only works for players who are currently online.
- If you are the listen-server host and want to check your own state, use
vsg_list— you are not in the peer list and won't appear as a target. - Tab-completes with currently-connected player names.
Reset the guidance state of another online player.
vsg_reset_player <playerName> all
vsg_reset_player <playerName> <id>
Mirrors vsg_reset exactly, but targets another player's character. The reset executes on the target client; you receive a confirmation message in your console once it is done.
-
all— clears every player-scope bucket for that character (fired IDs, fire counters, chain progress, item-submit, goal state, raven seen-flags, raven queue). Global-scope entries are not affected. -
<id>— clears a single entry's state (same logic asvsg_reset <id>).
Notes:
- Only works for players who are currently online.
- The command is admin-only and the server re-verifies your admin status independently.
- Tab-completes with online player names,
all, and all configured entry IDs.
Testing a new entry: After adding an entry to guidance.yaml, save the file (it hot-reloads), then run vsg_reset <id> to clear any old fired state so you can trigger it again.
Resetting a player's quest: If a player needs to restart a chain, run vsg_reset <chain_id> to clear your own chain state, or vsg_reset_player <name> <chain_id> to clear it for another online player.
Checking a player's progress: If a player reports a guide not firing, run vsg_list_player <name> to see exactly which entries have fired, what chain step they're on, and how much submit/goal progress they've made.
World event reset (testing): On the server/host, run vsg_reset world_eikthyr_fell to allow the global boss event to fire again.
Fresh start for testing: Run vsg_reset all to clear all your own fired states and replay guidance from the beginning. Use vsg_reset_player <name> all to do the same for another online player.