Serverside Simulations

v1.1.9·Updated 2025-09-27

Run world and monster simulations on a dedicated server.

Screenshots 1 screenshots

About this mod Author’s original text

Valheim Serverside Simulations

Run world and monster simulations on a dedicated server.

Updated for patch: 0.220.5

Features

  • Server simulates world and AI physics.
  • Client FPS improvements
  • Ships are simulated by the driver to improve the steering experience with high latency.

Installation

  • Install BepInEx (optionally installing "Better Networking" on both clients and the server is recommended)
  • Copy plugin DLL into the BepInEx/plugins/ directory on your dedicated server.
  • You're done! No client-side changes are needed.

_It's recommended to also install the mod "BetterNetworking", it works very well with Serverside Simulations._

Configuration

  • MaxObjectsPerFrame.MaxObjects can be increased to improve the loading times of areas on the server, at the expense of CPU usage.

Caveats

  • Only runs on dedicated servers.
  • The mod dramatically increases server resource usage and running it on a weak CPU may lead to a poor gameplay experience.
  • The mod should be disabled when using the "optterrain" command.
  • This mod does not prevent cheating or any kind of client manipulation.
  • While this mod is quite light on complexity, as with most mods it's possible future Valheim patches will break the mod in unexpected ways. We recommend you back up your characters and worlds and/or consider disabling this mod anytime a new game patch is released.

Why?

Ordinarily, to keep server resource usage low, the Valheim server will hand off simulation of an area to the first client that enters said area. However, if the player in charge of the area has a poor connection all other players in that area will suffer. This mod is an attempt at improving that specific situation at the cost of increased latency for the client which would ordinarily own the area.

How?

This dedicated server mod causes terrain, monsters and other objects that are normally created and owned by clients to instead be created on—and thus owned and simulated by—the server.

For mod developers - compatibility with Serverside Simulations

For mod developers interested in maintaining compatibility with Serverside Simulations:

  • If your mod makes changes relating to simulation / behaviour of the world, it will need to be able run on the dedicated server and should take these points into account:
  • Player.m_localPlayer is always null on a dedicated server; your code should check for this.
  • On a dedicated server, ZNet.instance.GetReferencePosition() returns a position outside of the world and is not related to any player position.
  • Any graphical or hud-related code should probably be behind a ZNet.instance.IsDedicated() check, if that code is expected to run on the server.

Manually compiling

To manually compile, create a file at src/Environment.props with the following content, and change the path to point at your Valheim install.

E:\SteamLibrary\steamapps\common\Valheim dedicated server

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
Serverside_Simulations-1.1.9.zip
File size
76.5 KiB