You are viewing a potentially older version of this package. View all versions.
BigAI-CharactersVault-2.5.0 icon

CharactersVault

Server-authoritative Valheim character storage with one-character-per-player bindings.

Date uploaded 2 weeks ago
Version 2.5.0
Download link BigAI-CharactersVault-2.5.0.zip
Downloads 29
Dependency string BigAI-CharactersVault-2.5.0

This mod requires the following mods to function

denikson-BepInExPack_Valheim-5.4.2333 icon
denikson-BepInExPack_Valheim

BepInEx pack for Valheim. Preconfigured with the correct entry point for mods and preferred defaults for the community.

Preferred version: 5.4.2333

README

CharactersVault

CharactersVault keeps player progression strictly on your Valheim server. It prevents players from bringing in cheated or offline items by saving, syncing, and locking characters directly to the server.

IMPORTANT: Always make a brand new character before joining!
Joining a CharactersVault server with an existing character will wipe their inventory, skills, recipes, and progression on first join (visual appearance like hair and clothes is kept).


Why CharactersVault?

  • Works out of the box: Works instantly on dedicated servers with zero configuration required. Just install and run.
  • Update Resilient: Built using clean, high-level Harmony hooks with zero IL transpilers. When Valheim releases a game update, CharactersVault won't crash your server on patch day.
  • No External Dependencies: Ships as a single, lightweight DLL with a built-in JSON parser. No external DLLs or conflicting library bundles.

For Players

  1. Install the mod: Install via Thunderstore or r2modman (recommended), or manually place CharactersVault.dll in your BepInEx/plugins/CharactersVault/ folder with BepInEx installed.
  2. Create a fresh character: Pick any name and appearance, then join the server.
  3. Play normally: Your inventory and skills automatically sync to the server as you play and save when you disconnect.

Note: Each player account is bound to one character on the server. If you try to join with a different character, the connection will be rejected.


For Server Hosts

CharactersVault is designed for dedicated servers. Both the server and connecting clients must have the mod installed with matching versions.

Installation

  1. Install the mod: Install via Thunderstore / r2modman, or manually place CharactersVault.dll in your dedicated server's BepInEx/plugins/CharactersVault/ folder with BepInEx installed.
  2. Start your server. It works out of the box with zero setup needed.

Admin Commands

Admins listed in adminlist.txt can manage player bindings and snapshots in-game using /cv chat commands:

Command Description
/cv list List all registered players and their bound characters.
/cv status [playerId] View character binding and last saved snapshot info for a player.
/cv remove [playerId] Unbind a player so they can register a new character on their next join.
/cv wipe [playerId] Delete all saved character data and binding for a player (starts fresh).
/cv help Show in-game command help.

Note: Use the platform ID shown in /cv list (e.g. Steam_76561198XXXXXXXXX or Xbox_...). /vault can also be used as an alias.

Configuration (Optional)

Config file location: BepInEx/config/CharacterVault.cfg

CharactersVault is plug-and-play by default, but you can tweak settings if needed:

Setting Default Description
EnforceCharacterBinding true Lock each account/platform ID to their first registered character.
AutoSaveIntervalMinutes 5.0 How often client profiles automatically sync to the server in the background.
ProfileSyncTimeoutSeconds 15.0 Max seconds to wait for server data before disconnecting high-latency clients.
ShowCharacterSelectWarning true Show warning banner on the character select screen.
VerboseLogging false Enable extra debug logs in the BepInEx console.

Server Storage

All character snapshots and bindings are saved under BepInEx/config/CharacterVault/. Remember to back up this folder during regular server backups or before major Valheim game updates.

AI Disclosure

I made this mod using AI. Most of the code in this mod was AI generated. If you have an issue with this, I completely understand and urge you to not use this mod. There is a great alternative on Thunderstore called "ServerCharacters" that is much more robust and feature-rich. This mod ("CharactersVault") is meant as a lightweight mod for small servers that don't need all the bells and whistles of a more complex mod.

CHANGELOG

v2.6.0

  • Unified Player Reset Action: Streamlined unbinding and progression wipes into a single Reset Player action (/cv reset [playerId]) that safely wipes server-side progression, deletes old snapshots, and removes the character lock.
  • Smoother Syncing & Performance: Fast actions (like sorting items in chests or rapid skilling) are now bundled intelligently, greatly reducing network lag and server load without risking any lost progress.
  • Admin Commands Prefix: Updated admin commands to /cv (with /vault alias).

Bug Fixes

  • Chat Formatting Fix: Fixed an issue where raw color tags were displayed in chat when running admin commands.
  • Character Reset & Unbind Fix: Fixed an issue where unbinding a character would allow old inventory, skills, and appearance to carry over when the player rejoined with a new character.

v2.4.0

  • Character Selection Warning: Added a reminder banner on the Character Selection screen to prevent accidental loss of existing character progression (can be toggled in config).
  • Clear Disconnect Messages: If a connection fails or is rejected (such as a mod version mismatch), the exact reason is now displayed directly on the disconnect screen.

v2.3.4

  • Resolved Thunderstore packaging and automated scanner compatibility issues.
  • Excluded bundled Newtonsoft.Json.dll dependency from package output.
  • General packaging and internal cleanup.

v2.3.1

  • Platform ID Support: Added support for platform IDs (Steam_... and Xbox_...) for player bindings and snapshot files.
  • Sync Reliability: Added transfer size limits, chunk validation, and timeout handling for safer profile syncs.
  • Data Safety: Atomic file saves for bindings and snapshots to prevent corruption if the server crashes.
  • Cleanup: Removed obsolete config options, unused mismatch reports, and legacy code.