ValheimOptimizer
Faster Valheim loading/networking: up to 96.9% shorter forced join wait, 68.8% shorter teleport minimum, and 62-67% smaller validated ZDO payloads.MagiCorp Valheim Optimizer
Client and server performance optimisations for Valheim focused on faster joins, faster teleports, lower ZDO transfer volume and less unnecessary rendering work.
Loading-path improvements
These percentages describe the specific loading stages changed by the plugin, not a guaranteed reduction in total connect-to-spawn time. Total load time still depends on world size, storage, CPU, network latency and other mods.
- Initial join wait: up to 96.9% shorter. On a negotiated server, once the server confirms the initial area is ready, the enforced initial respawn delay is reduced from Valheim's 8.0 s to 0.25 s. Death respawns are unchanged.
- Distant teleport minimum: 68.8% shorter. The forced minimum is reduced from 8.0 s to 2.5 s. The player is still held until the destination is actually ready.
- Object creation throughput: up to 3x. While loading, the ZNet object creation cap increases from 100 to as many as 300 objects per pass. That can reduce an object-creation-bound phase by up to 66.7%. It automatically backs off to 200, 140 or 100 objects on slow frames.
- ZDO transfer size: 61.9% to 67.2% lower in validation. On the Purple Turtle test-world clone, compressed optimizer traffic measured 1,461,672 -> 557,604 bytes client-side and 1,747,722 -> 572,898 bytes server-side. These are plugin ZDO payload bytes, not exact Steam on-wire totals.
The test world used for those network measurements contained about 584,794 ZDOs. A separate server-startup LoadChunks comparison showed a small apparent improvement, but it was not counted because later runs had a warmer page cache.
Server-side requirements for best performance
For the full optimisation path, install the same Valheim Optimizer version/protocol on the dedicated server and on every connected client.
Full client/server negotiation enables:
- compressed ZDOData transfers
- adaptive server replication scheduling
- expanded replication send window
- priority initial-area transfer for faster first spawn
- portal destination prefetch
- adaptive high-throughput object creation during loading
- the reduced 8.0 s -> 0.25 s initial join wait
- the reduced 8.0 s -> 2.5 s distant-teleport minimum
- persistent minimap cache reuse for negotiated worlds
For the server-wide replication scheduler and expanded send window, all connected peers must support the optimizer. If a vanilla client or incompatible protocol is connected, the affected server networking paths fall back to Valheim-compatible behaviour rather than forcing the optimisation.
A client-only install still provides local-only changes such as the immediate loading screen, asynchronous scene-loading path, custom loading artwork and reduced main-menu rendering, but it does not get the main negotiated loading/network gains listed above.
Defaults
- Replication rate: 30 Hz for negotiated peers
- Replication window: 128 KiB when every peer is negotiated
- Main-thread network budget: 1.75 ms/update
- ZDO compression threshold: 2 KiB
- Loading object limit: 300/pass, adaptive under poor frame time
- Distant teleport minimum: 2.5 s
- Initial join minimum: 0.25 s after server area-ready confirmation
- Portal prefetch limit: 6,000 destination ZDOs
Configuration is generated at BepInEx/config/magicorp.valheim.optimizer.cfg.


