BetterNetworking PC
Unofficial fork of Better Networking by CW_Jesse for Valheim 1.0, PC only. Compression, queue size, send rate, portal ghost fix and faster portal travel. Pairs with Better Networking 2.3.x.
About this mod Author’s original text
Better Networking PC 2.3.5 (Valheim 1.0.x)
valheim-better-networking-pc is an unofficial fork of
Better Networking
by CW_Jesse, updated to run on Valheim 1.0. Built
against the l-1.0.7 assemblies (network version 39) and verified against l-1.0.12,
l-1.0.14 and l-1.0.16 (network version 40), which it has run on through each
auto-update. Credit for the original mod goes to CW_Jesse and its contributors; this
repository carries the changes needed to keep it working on the current game version, plus
the portal fixes described below.
PC only. "PC" in the name is the platform: this is a BepInEx mod for the PC (Steam)
version of Valheim and for dedicated servers. It cannot be installed on Xbox or
PlayStation, because consoles cannot load mods. It has only been run and measured on Steam
with crossplay off.
Up to 2.3.4 this fork shipped under the original name, as CW_Jesse.BetterNetworking.dll.
From 2.3.5 it is Better Networking PC, BetterNetworkingPC.dll. See
Compatibility with the old name.
No official build claims 1.0 support: upstream 2.3.2 targets 0.217.28, and the 2.3.3 fork
targets 0.221.4.
What the mod does
Vanilla Valheim caps how fast a machine sends world data to each peer. On a busy server
every player flatlines at the same ceiling, which is what the lag during group play
actually is. The mod raises the send queue (10 KB to 32 KB) and Steam's send rate
(150 KB/s to a 256 KB/s minimum and 1024 KB/s maximum), and adds zstd compression between
machines that both run it.
Measured results
From one live server between 2026-09-11 and 2026-09-13: 10 distinct players on home
connections, crossplay off, direct Steam sockets. Traffic was captured with tcpdump on
the server and binned per player per second; figures are p50 / p90 / max of those
one-second bins, per player, one direction.
Only compare captures taken with players clustered together. Valheim only sends a
player what is near them, so a scattered group produces about 1 KB/s each in vanilla too.
Mixing the two states makes the mod look broken when it is not.
The problem: vanilla clamps every player at one number
Server to each player, no mod, clustered:
| Hardware | Players | p50 | p90 | max |
|---|---|---|---|---|
| i7-9700 | 7 | 37-42 | 43-44 | 43-45 KB/s |
| i9-9900K | 5 | 62-63 | 63-64 | 64-80 KB/s |
Several players stopping dead at the same number is a cap, not demand. Neither machine was
short of anything: CPU 15-30% of one core, 1.5 GB resident, and the uplink peaked at
4.7 Mbit/s on a line proven to carry 121 Mbit/s.
With the mod on the server
Same measurement, one figure per player in the capture (i7-9700):
| Players | p50 | p90 | max |
|---|---|---|---|
| 4 | 34, 103, 109, 126 | 50, 127, 133, 141 | 54, 147, 172, 180 KB/s |
| 6 | 12-58 | 25-94 | 53-150 KB/s |
| 8 | 5-65 | 29-90 | 51-135 KB/s |
Roughly twice the sustained rate and three times the peak, and the flat clamp is gone:
rates now move with what is happening instead of stopping at one number. Totals through the
server were 705 KB/s in and 281 KB/s out at 8 players, about 2.2 Mbit/s of upload.
Server load did not change meaningfully. Valheim's main thread, the one that saturates
first, sat at 29% of one core with 8 players (35% max) against 8% idle, and memory went
from 1.52 GB to 1.76 GB.
What limits it next: unmodded clients
With 7-8 players on, the server peaked at 132-136 KB/s per player against a queue allowing
roughly 640 KB/s, so the server had stopped being the constraint. The vanilla clients had
not: each sat at 113-138 KB/s, which is vanilla's 150 KB/s send rate once overhead is
counted. Valheim has the client nearest an area simulate it, so in a group fight one player
uploads every monster's state for everyone and hits that cap. This is why fights can still
lag after a server-side fix.
With the mod on one client and seven still vanilla, on the same server and session:
| Connection | To server | From server |
|---|---|---|
| Modded client | 26-29 KB/s | 15-44 KB/s |
| The 7 vanilla c
Install & use Install: BepInEx plugin
- The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
- 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.
- Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
- 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.
Install these first, or the mod will not work: