ValheimPasswordManager

v1.0.1·Updated 2026-04-01

A client-side BepInEx mod that adds saved password selection and management to Valheim's vanilla server password dialog while keeping the original UI style.

About this mod Author’s original text

Valheim Password Manager

English

A BepInEx 5 + Harmony client-side mod for Valheim that enhances the vanilla password dialog shown when joining password-protected servers.

Source code repository

Features

  • Keeps the original Valheim password dialog and submit flow intact
  • Injects a dropdown button on the right side of the existing input field
  • Shows a local password list in a drawer below the input field
  • Clicking a saved password fills the original input field automatically
  • Each saved password can be deleted individually
  • Prompts the player with “Save this password?” when submitting a new password for the first time
  • Stores passwords in a local JSON file and recreates the file safely if it becomes corrupted
  • Requires no server-side installation

Localization

  • The confirmation prompt follows the game's currently selected language.
  • The current implementation covers the built-in language names visible in assembly_guiutils.dll.
  • To avoid missing-glyph issues, the delete button no longer relies on an emoji and is instead drawn with plain UI shapes.
  • Character compatibility risk should be low for languages already supported by the base game, because the prompt still uses Valheim's own fonts and localization pipeline.
  • Password rows reuse the same font settings as the original input field. If a character cannot be displayed correctly in the vanilla input box, it may also be limited in the saved-password list. That would be a base-game font coverage issue rather than a mod-specific one.

Build

Option 1: build with the script

Run this from the repository root:.\build.ps1

Option 2: build manually with dotnet

$env:APPDATA = (Resolve-Path '.appdata').Path

$env:DOTNET_CLI_HOME = (Resolve-Path '.').Path

$env:DOTNET_SKIP_FIRST_TIME_EXPERIENCE = '1'

$env:NUGET_PACKAGES = Join-Path (Resolve-Path '.').Path '.nuget\packages'

dotnet build.\src\ValheimPasswordManager\ValheimPasswordManager.csproj -c Debug --configfile.\.appdata\NuGet\NuGet.Config

Output DLL:

  • src\ValheimPasswordManager\bin\Debug\ValheimPasswordManager.dll

Installation

Copy the compiled DLL into the Valheim client:

  • \BepInEx\plugins\ValheimPasswordManager\ValheimPasswordManager.dll

A dedicated subfolder is recommended:

  • \BepInEx\plugins\ValheimPasswordManager\

JSON storage path

After running the mod, the saved password list is stored at:

  • \BepInEx\config\JipZeonGit.Valheim.PasswordManager.json

If the file is corrupted, it is backed up automatically as:

  • JipZeonGit.Valheim.PasswordManager.json.corrupt-timestamp.bak

Configuration file

After the mod runs once, it generates a BepInEx config file:

  • \BepInEx\config\JipZeonGit.Valheim.PasswordManager.ScrollSpeed.cfg

Current UI option:

  • UI.PasswordListScrollSpeed

Notes:

  • default value: 160
  • allowed range: 20 to 400
  • larger values make the password list scroll faster with the mouse wheel

Development references

This repository does not commit the game/framework DLL payloads by default, but local compilation still depends on these reference folders:

  • references\\BepInEx\\core
  • references\\Valheim\\Managed

If you clone this repository on a new machine, prepare those DLLs in the local references folder first, following references/README.md, and then build the project.

GitHub repository guidance

Treat the GitHub repository as a source repository, not as a mirror of a local game installation.

Recommended to commit:

  • src/
  • docs/
  • README.md

-.gitignore

  • build.ps1
  • NuGet.Config

Not recommended to commit:

  • local game/framework reference copies under references/
  • local upstream source mirrors under third_party/
  • build outputs and caches such as bin, obj,.appdata,.dotnet, and.nuget/
  • local JSON files, backup files, and log files created during testing

Why:

  • references/Valheim/Managed contains assemblies copied from a local game installation and is not ideal to keep in a public source repository.
  • third_party/ is reference

Install & use Install: BepInEx plugin

  1. The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
  2. Recommended: use a community mod manager (such as r2modman) — pick this game, import the mod, and the manager sets up BepInEx and its dependencies for you.
  3. Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
  4. Launch the game — the BepInEx console logs every plugin it loads; seeing this mod in the log means it is installed.

Mods with listed dependencies need those installed too, or they will not load. Options are usually changed in-game or in the plugin's config file. In multiplayer, the host and every client need the same mods installed.

Dependencies

Install these first, or the mod will not work:

denikson-BepInExPack_Valheim

File & checksum

Filename
ValheimPasswordManager-1.0.1.zip
File size
75.8 KiB