Most Valheim server-mod failures have a small number of causes: BepInEx never started, the server was launched through the vanilla executable, a host-side loader toggle is off, a content mod is missing from one side, or client and server versions no longer match after an update. Start by checking for a fresh BepInEx/LogOutput.log; that single test tells you whether to troubleshoot the loader or the mods themselves. Then verify the launch path, classify each mod as client-only or server-required, align versions, and isolate plugins until the failing component is identified.
Playing with friends? Godlike.Host runs hosted Valheim servers from 10 data-center locations, with free DDoS protection.
Find the failure stage before changing files
Do not reinstall every mod at once. First identify where the process stops. The symptom usually points to one of four stages: loader startup, plugin loading, the connection handshake, or behavior after joining the world.
| # | Preview | Product | Price | |
|---|---|---|---|---|
| 1 |
|
Tribes of Midgard: Deluxe Edition - PlayStation 5 | $15.93 | Buy on Amazon |
| 2 |
|
Tribes of Midgard: Deluxe Edition - PlayStation 4 | $11.49 | Buy on Amazon |
As an Amazon Associate I earn from qualifying purchases.
Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Repair Windows errors before they cause bigger problemsFix Now →| What you observe | Most likely stage | First check |
|---|---|---|
| No BepInEx console, no configuration folder, and no new log | Loader startup | Launch path, BepInEx files, entry point, game build and operating-system bitness |
| A new log appears, but no plugin-loading lines do | Plugin discovery or installation | Folder layout, DLL locations, dependencies and console errors |
| The server starts but players are kicked with an incompatible-version message | Connection handshake | Required mods and exact versions on the server and every affected client |
| You can join, but items, recipes, creatures or progression are missing | In-game content mismatch | Whether the content mod is installed on both sides and loaded successfully |
| The server crashes or hangs after adding a mod | Plugin conflict or broken release | Empty BepInEx/plugins, then restore files in groups |
Keep the server and client logs from the same failed attempt. Comparing timestamps and plugin names is much more useful than guessing from a mod manager’s profile name.
1. Prove that BepInEx actually loaded
A DLL copied to the server does nothing if the loader never starts. The objective test is the BepInEx log, not the presence of a folder.
#1 Best Overall
- Explore a bright Norse realm: discover dungeons, slay legendary beasts, and build anywhere as you explore formidable, procedurally-generated lands on your quest to take on Ragnarok.
- Face colossal game-changers: protect the speed of Yggdrasil from a nightly invasion of helthings, and work together with your tribe to withstand the ever-looming threat of the jotnar.
- Forge your Viking Legend: choose your class and take the battle into the wilds as you seek resources to craft epic armor and mighty weaponry. Then, unleash powerful abilities and prepare clever village defenses to give your enemies some nasty surprises.
- Rally the tribe: when the giants arrive, it takes a village to bring them down! Adventure through midgard solo, or form a tribe of up to 10 players in online pve co-op.
- Keep up the fight: throughout the year, limited time seasonal events bring bigger challenges and even mightier treasures to the endgame of midgard, including new ways to progress and unlockable rewards for use across every game.
- Stop the dedicated server completely. Close the server window or service and confirm that
valheim_server.exeis no longer running. - In the server’s Valheim directory, delete
BepInEx/LogOutput.log. Do not merely open or rename it; deleting it makes the next result unambiguous. - Start the server using the intended modded launch method and wait for a normal startup attempt.
- Check whether a new
BepInEx/LogOutput.logwas created. A newly written file proves that BepInEx ran. If no file appears, no server mods were loaded. - Open the file and search for a line in this form:
[Info : BepInEx] Loading [ModName 1.0.0]. Replace the example name and version with the entries in your installation.
The Valheim-Modding Wiki describes the same rule: when no log is generated, no mods have loaded on the server. That result moves the investigation to launch configuration and core files; adding more plugin DLLs cannot fix it.
What a healthy log should contain
- A BepInEx startup section near the beginning.
- Plugin-loading entries for the DLLs you expect.
- Any dependency or version warnings before the server reaches its normal ready state.
A log can exist even when a particular mod fails. In that case, copy the first error mentioning the plugin and note whether its dependency was loaded earlier. The named plugin is a lead, not automatic proof that it is the only cause.
Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Scan for outdated or missing drivers - takes under a minute3Repair Windows errors before they cause bigger problems2. Correct the launch path and hosting toggle
The most common dedicated-server mistake is launching the ordinary Valheim executable or a host command that bypasses BepInEx. Managed hosts often expose a separate BepInEx or Valheim Plus switch; self-hosted servers require the complete Valheim BepInEx pack at the server root and the supplied dedicated-server launch script.
Managed hosting
- Stop the server from the host’s control panel.
- Open the mod, loader or startup settings and enable the provider’s BepInEx or Valheim Plus option if one is present.
- Confirm that the host’s file manager shows the BepInEx core directories beside the Valheim server files, not inside a second nested Valheim folder.
- Start the server, wait for the first boot to finish, and apply the fresh-log test from the previous section.
Host labels differ. If the toggle is enabled but no log is created, ask the provider which executable and startup script the toggle controls; uploading DLLs alone does not attach the loader.
Self-hosted Windows server
- Install the full Valheim BepInEx pack intended for the dedicated server into the directory that contains the server executable.
- Use the pack’s supplied dedicated-server launch script instead of double-clicking the vanilla executable.
- Keep the script’s working directory pointed at the Valheim server root so BepInEx can find its core files and configuration.
- Stop every old server process before testing. A second process can make you believe the modded instance started when you are actually connecting to the vanilla one.
Launching through a mod manager
Managers such as R2ModMan or Thunderstore Mod Manager attach BepInEx when they launch the game or server. Launching Valheim directly from Steam bypasses that attachment and runs a vanilla process. For a headless dedicated-server profile, the documented workaround is to append %* to the server launch line in the manager’s batch file, preserving the arguments supplied by the manager. After editing, stop and restart the server and verify a new log rather than assuming the batch file was used.
3. Decide whether each mod belongs on the client, server, or both
Installation scope is determined by what a mod changes, not by its file extension. A profile that works in single-player may contain client-only conveniences that were never intended for a dedicated server, or a server may be missing the content definitions that clients need.
| Mod role | Typical examples | Where it normally goes | What happens if placed incorrectly |
|---|---|---|---|
| Client-only presentation | Interface, camera and visual changes | Each player who wants the feature; not the server | Usually no server effect; installing it server-side can add needless errors |
| Server-required content | New items, recipes, creatures or progression | Server and every participating client | Kicks, missing content or an incompatible-version message |
| Shared utility or dependency | A library required by another plugin | Where the dependent mod’s instructions specify, often both sides | The dependent plugin fails to load or reports a missing dependency |
Check the mod’s tags and installation notes. The Valheim-Modding Wiki specifically reminds administrators that client-only mods do not need to be installed on a server; Thunderstore tags can help identify them. Treat tags as guidance and read the mod’s own server requirement, because a visual mod may still depend on a shared library.
Why single-player success is not proof
In single-player, the game and the host are the same process, so every local plugin is present by definition. A dedicated server has its own profile, plugin directory and version set. Copy the server-required content mods and their dependencies to the server, then install matching copies on each client. Leave purely visual or interface mods on clients unless the author explicitly requires server installation.
4. Match versions and dependencies exactly
For server-required content, “the same mod” is not enough. Compare the actual DLL versions, dependency versions and profile contents on both sides. A client can have a newer release while the server still loads an older one, producing an incompatible-version kick even when the filenames look identical.
A reliable comparison method
- Export or record the server’s enabled profile, including every dependency and its version.
- Record the affected client’s profile separately; do not compare only the top-level mod name.
- Compare the BepInEx log from each side and confirm that required plugins load successfully.
- Replace mismatched files with one chosen version. Update the server and all clients together, or roll all of them back together.
- Perform a complete stop/start after replacement. Restarting only a client leaves the server’s old assemblies in memory.
AdvancedAdminPanel documentation gives a concrete example of this requirement: both companion DLLs must be the same version, and the server log should show the companion loading after a complete stop and start. The principle applies to any mod that ships a server component and a client component.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Reading an “incompatible version” kick
The message normally means that the server’s required mod set and the connecting client’s set do not match. Check for a missing dependency, an extra content plugin, a different release number, or a file left behind after an update. Remove obsolete DLLs rather than copying newer files over them; stale assemblies can remain active when a mod changed its file name.
5. Treat game updates as a compatibility event
Iron Gate/Valheim updates can break the BepInEx pack, a dependency, or an individual plugin. A server that worked yesterday may therefore fail without any configuration change.
Rank #2
- Explore a bright Norse realm: discover dungeons, slay legendary beasts, and build anywhere as you explore formidable, procedurally-generated lands on your quest to take on Ragnarok.
- Face colossal game-changers: protect the speed of Yggdrasil from a nightly invasion of helthings, and work together with your tribe to withstand the ever-looming threat of the jotnar.
- Forge your Viking Legend: choose your class and take the battle into the wilds as you seek resources to craft epic armor and mighty weaponry. Then, unleash powerful abilities and prepare clever village defenses to give your enemies some nasty surprises.
- Rally the tribe: when the giants arrive, it takes a village to bring them down! Adventure through midgard solo, or form a tribe of up to 10 players in online pve co-op.
- Keep up the fight: throughout the year, limited time seasonal events bring bigger challenges and even mightier treasures to the endgame of midgard, including new ways to progress and unlockable rewards for use across every game.
- Check the mod’s current Thunderstore release and its stated game-version support before updating.
- Update the BepInEx pack and affected mods in a coordinated maintenance window.
- Have every player update the same profile before connecting.
- For mods that write to world or character saves, make a separate backup before changing versions. Do not test an unverified release on the only copy of a live save.
- If a newly released game build is unsupported, keep the server and clients on a compatible branch where the platform allows it, or wait for the loader and mod authors to publish updates.
Do not infer compatibility from upload date alone. Read the release notes for dependencies, migration steps and known save implications.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.6. Isolate crashes and plugin conflicts safely
When the server crashes, freezes, or stops during startup after a mod change, isolate the plugin set instead of repeatedly restarting the full profile.
- Stop the server and make a backup of the entire BepInEx configuration and plugin directories.
- Move everything out of
BepInEx/pluginsinto a temporary folder outside the game directory. Do not delete the files while diagnosing. - Start the server with an empty plugin folder. Confirm that BepInEx itself reaches a clean startup and creates a fresh log.
- Restore a small group of plugins, preferably one dependency family at a time, and restart.
- When the failure returns, remove that group and add its members individually until the offending plugin or interaction is identified.
- Read the BepInEx console and log after each failed attempt. Capture the first meaningful exception, the plugin name and any missing dependency.
An error naming one plugin is the best lead, but it is not conclusive proof that the plugin alone is at fault. Two plugins can patch the same game method, or a dependency can be the component that actually failed. Test the suspect plugin with its dependencies present and unrelated plugins absent.
Separate configuration errors from code errors
If the plugin loads but the server fails only when a feature is used, restore the plugin with a newly generated configuration file. A malformed value or obsolete setting can break a previously working release. Keep the old configuration as a reference, then migrate settings deliberately rather than copying every line back at once.
7. Repair a missing console, configuration folder, or log
BepInEx documentation identifies two frequent startup causes: a missing core file or a wrong entry point. Use this branch when the fresh-log test produces nothing or when the loader window closes immediately.
Check the core installation
- Verify that the BepInEx core files are at the game or dedicated-server root expected by the pack, not one directory deeper.
- Confirm that you installed the build for the game’s operating system and bitness. A Windows 64-bit server needs the corresponding BepInEx build; copying files from a different target can prevent the preloader from starting.
- Inspect the preloader files and compare them with the pack’s installation instructions. Missing or renamed files indicate an incomplete extraction.
- Temporarily remove custom launch parameters and test the supplied script, then reintroduce parameters one at a time.
Enable the BepInEx console
Open the BepInEx configuration file and set [Logging.Console] Enabled = true. Save it, start the server through the modded script, and watch for preloader errors before the process exits. Console output often reveals a wrong entry point, permission problem or missing dependency that is not obvious from the server’s normal window.
Repair Steam’s managed files
On Steam installations, a damaged Managed folder can stop the loader or cause immediate crashes. Stop the game and server, delete the damaged Managed folder, then use Steam’s “Verify integrity of game files” command for Valheim. Steam will restore the folder. Reinstall the matching BepInEx pack afterward if verification replaced loader files, and repeat the fresh-log test before adding plugins.
8. Account for platform limits
The documented workflow targets the Steam edition. Microsoft Store and Game Pass installations do not have a supported path for this BepInEx server-mod setup, and Xbox clients cannot load the same mods. An Xbox player can join a PC server as a vanilla client only when the server and mod configuration permit an unmodded connection; that player will not receive client-side mod features.
If a mixed-platform group is required, decide first whether the server’s content mods allow vanilla clients. If they require matching client files, Xbox and unsupported store clients cannot participate in that modded session. No amount of DLL copying changes the platform’s loader limitation.
Recommended Free Tools
A clean rebuild procedure when the profile is beyond repair
Use this procedure when logs contain several conflicting errors, files have been copied through multiple managers, or nobody can identify the last known-good state.
- Stop the server and back up the world, character data and the current BepInEx directory.
- Write down the exact game build, server launch command and the mod versions you intend to keep.
- Remove the old BepInEx core and plugin files from the active server directory, leaving the saved backup outside it.
- Install the correct full BepInEx pack for the dedicated server and place it beside the server executable.
- Start once with no plugins. Confirm a new
LogOutput.log, console output and a clean server boot. - Add only the dependencies required by one chosen content mod, then test again.
- Add the remaining server-required mods in small groups, checking the log after each restart.
- Build the client profile from the same version list. Add client-only visual and interface mods last.
- Connect with one test client before inviting the full group. Keep the known-good profile archived so future updates can be rolled back.
Use this decision checklist before every restart
- Is the server process fully stopped, with no duplicate instance still running?
- Was the server launched through the BepInEx-aware script or enabled host toggle rather than the vanilla executable?
- Did deleting and recreating
BepInEx/LogOutput.logprove that the loader started? - Are core files at the correct root, with the right operating-system and bitness build?
- Does every server-required mod and dependency exist on the server and every participating client?
- Are the actual versions identical where the mod requires matching components?
- Did a game update or security process interruption occur before the failure?
- Have you tested with an empty plugin folder before blaming a specific DLL?
- Are all players on a supported platform and the same game branch?
Following the checks in this order prevents the most expensive mistake: trying to debug a plugin when the server is still running the unmodded executable.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




