Back to Blog

How to Add Mods to a Valheim Dedicated Server (BepInEx and Thunderstore) Without Touching a File

By Will, founder of HostSimple··8 min read·
ValheimModsDedicated Servers

TL;DR

Every Valheim mod runs through BepInEx, a loader that sits next to the game. On a dedicated server the loader goes on the server, each mod goes in its plugins folder, and the server restarts. The only question that matters is whether a mod is server-only (works for everyone, including unmodded and console players) or everyone-installs (each player needs the identical mod and version, or they cannot join).

On a HostSimple Valheim server the whole thing is a card on your server page called Mods: one switch for BepInEx, one-click Install on a list of popular mods, a search box for anything else on Thunderstore, and Remove next to each installed mod. It takes a backup before the first change and restarts the server for you. If you host somewhere else, the manual steps are below.

What BepInEx is and why every Valheim mod needs it

Valheim has no official mod support. BepInEx is a community loader that hooks into the Unity engine when the game starts and loads any plugin DLLs it finds in BepInEx/plugins. The Thunderstore package BepInExPack_Valheim is the version built for this game; it includes the loader, a doorstop shim that injects it, and a start script for Linux servers.

There are therefore two places BepInEx can live: on a player's PC, where it changes what that player's game does, and on the dedicated server, where it changes what the world does. Some mods only need one of those; some need both. Getting that right is 90% of running a modded server without support tickets.

Server-only vs everyone-installs: the only distinction that matters

A server-only mod changes behaviour the server controls: networking, admin commands, spawn rules, saving. Players connect with a plain copy of Valheim and never know it is there. An everyone-installs mod adds things the client has to draw or simulate: new items, build pieces, inventory slots, horses. Those mods check that every player has the same version and refuse anyone who does not.

Thunderstore tags most packages with Server-side or Client-side, and many popular mods are tagged both. The HostSimple Mods card shows that tag as a badge on every tile and search result, so you can see before installing whether your friends will need to do anything. Here is how the popular picks on the card break down:

ModWho installs itWhat it does
Network Performance SystemServer onlyFixes rubber-banding and lag with three or more players in one base. The mod we reach for first when a group reports lag.
Server devcommandsServer onlyLets admins use devcommands plus extra utilities such as teleport, god mode and spawn.
World Edit CommandsEveryoneTerraform, spawn and edit the world from the console. Needs Server devcommands.
JötunnEveryoneThe library most Valheim mods build on. Installed automatically when a mod needs it.
Plant EverythingEveryonePlant berry bushes, thistle, mushrooms and trees with the cultivator.
Epic LootEveryoneMagic items, loot drops and enchanting. The big RPG-flavour mod.
Extra SlotsEveryoneMore inventory and equipment slots.
Adventure BackpacksEveryoneCraftable backpacks that grow with your progression.
Odin ArchitectEveryoneHundreds of extra build pieces and decorations.
Odin HorseEveryoneTameable, rideable horses with saddles and carts.
Multi User ChestEveryoneSeveral players can use one chest at the same time.
More Vanilla Build PrefabsEveryoneAdds almost every vanilla object to the hammer.

A third category, client-only, covers things like minimap tweaks and UI mods. They do nothing on a server and the Mods card refuses to install them, because a mod that only changes a player's screen belongs on that player's PC.

Adding a mod in one click on HostSimple

Open your server in the dashboard and scroll to the Mods card in the Set up your server section. Then:

1. Pick a mod. Click Install on any tile under Popular picks, or type a name into the search box to find any Thunderstore package. You do not need to turn BepInEx on first; installing a mod turns it on for you.

2. Let it run. The server stops, a safety backup is taken the first time you change mods, BepInEx and the mod's dependencies are downloaded and written into BepInEx/plugins, and the server starts again. Expect about a minute. The card tells you what it installed, including any library the mod pulled in, and names the backup.

3. Tell your friends, if needed. If the badge said Everyone installs, each player installs the same mod and version on their PC. The easiest way is one r2modman or Thunderstore Mod Manager profile that you share as a code. Server-only mods need nothing from anyone.

Removing a mod is the trash icon next to it in the Installed list. Libraries other mods still need stay put. Turning the BepInEx switch off removes the loader and every mod in one go, after a second click to confirm.

Limits worth knowing: ten mod changes per hour per server, individual packages up to 64 MB, and the usual Thunderstore rule that a mod has to be published there. If something goes wrong, the Backups card on the same page restores the copy taken before the change.

Installing mods by hand on any Valheim dedicated server

If your host gives you SFTP or a file manager instead of a Mods card, the manual route is the same thing the card does for you.

1. Stop the server. Valheim and BepInEx read their folders at start; changing files on a running server is how half-installed mods happen.

2. Install the loader. Download BepInExPack_Valheim from Thunderstore, open the zip, and upload the contents of its BepInExPack_Valheim folder to the server's root, next to valheim_server.x86_64. You should end up with BepInEx/, doorstop_libs/, doorstop_config.ini and start_server_bepinex.sh at the root.

3. Launch through the BepInEx script. On Linux the server must start via start_server_bepinex.sh (or export the same LD_PRELOAD and DOORSTOP_* variables it sets) so the loader is injected. Most panels let you change the startup command; if yours does not, ask the host. HostSimple servers detect the loader automatically and switch to it on the next boot.

4. Add mods. Each Thunderstore zip has a plugins folder or a bare .dll. Put the DLL (and any config or translations folders it ships) in BepInEx/plugins/, ideally in one sub-folder per mod so you can remove it cleanly later. Install the mod's dependencies the same way; Jötunn is the usual one.

5. Start and check. After boot, open BepInEx/LogOutput.log. A healthy server prints N plugins to load, one Loading [ModName version] line per mod, and Chainloader startup complete (N loaded, 0 skipped, 0 failed). Anything under failed is a mod built for a different Valheim version.

Reading a version mismatch

The two errors players see are Valheim's own Incompatible version, which means the game build differs between server and player (restart the server so it updates, and have the player update through Steam), and a mod's own kick message, usually naming the mod and the versions on each side. The second one means someone has a different version of an everyone-installs mod, or is missing it, or has an extra required mod the server does not.

The fix is always the same: make the lists identical. One shared mod-manager profile per group, updated by one person, avoids most of it. After a Valheim patch, expect mods to lag behind for a few days; check each mod's Thunderstore page for an update before putting it back.

When this won't work

Console players and everyone-installs mods. PS5, Xbox and Switch 2 cannot install BepInEx. A crossplay server can run server-only mods with console friends present, but a single everyone-installs mod locks them out. See the crossplay guide.

Right after a Valheim update. A major patch breaks most mods until their authors ship a new build. Run vanilla first, confirm everyone can join, then add mods back one at a time.

Mods that are not on Thunderstore. Nexus-only mods can be installed by hand but not through the card.

Mods that changed the world. If a mod added items or build pieces and you remove it, those objects vanish from the world. Take a backup first, which the Mods card does for you.

Related guides

How to set up a Valheim dedicated server covers the basics. Moving your world to a server covers bringing a single-player world with you. Crossplay dedicated servers covers console friends. Plans are on the Valheim server hosting page; Standard is $12.99 a month and includes the Mods card.

Start a Valheim Server, from $12.99/mo

Frequently asked questions

Do my friends need to install the same mods as the server?
Only for mods that change what the game client does. Server-only mods such as Network Performance System and Server devcommands work with unmodded players. Mods that add items, build pieces or inventory slots, such as Epic Loot or Odin Architect, must be installed by every player at the same version or they cannot join.
Why do players get kicked with a version or mod mismatch?
Valheim compares the server's mod list and versions with each joining player's when the mod is marked as required on both sides. A player with a different version, a missing mod, or an extra required mod is refused. Everyone updates to the same versions, usually by sharing one r2modman or Thunderstore Mod Manager profile, and the error goes away.
Can I use mods on a Valheim crossplay server with console players?
Server-only mods, yes. Consoles cannot install mods, so any mod that every player must install locks PS5, Xbox and Switch 2 players out. Keep a crossplay server to server-only mods or run it vanilla.

Ready to get started?

Your server is online in 60 seconds. No contracts, 48-hour money-back guarantee, cancel anytime.