kou fixdesync

版本 v1.0.1·更新於 2026-09-09

A mod that helps desync/lag in valheim. Server can tune configs to find the best setup.

模組介紹 作者原文

kou_fixdesync

Quality-of-life mod that fixes multiplayer desync and lag in Valheim by

removing the game's artificial network throttles. Built for Steam/PC dedicated

servers and clients. Players without the mod can still join — the mod never

changes the network message format.

The problem

Valheim syncs the world through ZDOs (zone data objects). By default the game:

  • Caps outstanding sync data at 10 KB per player — including bytes already

sent but not yet acknowledged. On any connection with real latency this

throttles world updates to a trickle, and high-ping players (overseas friends)

get starved almost completely. This is why chests take 10-30 seconds to open,

mobs freeze or teleport, and other players rubber-band.

  • Updates one player per frame, round-robin — the more players online, the

less often each one gets updates.

  • Pins Steam's send rate to a fixed 150 KB/s and disables its congestion

control by setting min = max.

  • Only syncs distant-zone objects when almost nothing else is queued, so

far-away terrain and builds stay stale.

  • Hands mob simulation to whichever nearby player claims it first — regardless

of that player's ping — so one laggy player makes mobs lag for everyone.

What the mod does

| Feature | Default game | With mod |

|---|---|---|

| Send window | 10 KB fixed | 60 KB default, automatically scales with each player's ping (window = target rate x round-trip time), hard-capped at 256 KB for safety |

| Update cadence | 1 player per frame | Every player, every 50 ms tick |

| Steam send rate | 150 KB/s pinned | 256 KB/s - 1 MB/s, congestion control active |

| Distant object sync | Threshold 10 | Threshold 30 |

| Mob simulation ownership | First-come | Lowest-ping player; migrates mobs off players over 150 ms ping when a player under 80 ms is nearby (10 s cooldown so it never flaps) |

Every feature can be turned on/off and tuned individually.

Install

Server (required):

  • Install BepInExPack for Valheim (the dependency listed above).
  • Put kou_fixdesync.dll into BepInEx/plugins.
  • Start the server once to generate the config, then tune

BepInEx/config/kou.fixdesync.cfg.

Clients (recommended): same steps. Server-only already fixes most of the lag

(everything you receive); installing on clients also fixes what others see

of you, because each client sends its own player/mob data through the same

throttled path. Players without the mod can still join normally.

The server dictates the config

You only ever need to edit the server's config file. When a modded client

joins, the server pushes its settings to that client automatically over a

custom RPC; the client applies them for the session and reverts on disconnect.

Clients can never push settings to the server.

Configuration (BepInEx/config/kou.fixdesync.cfg)

[1.SendWindow] — the main desync fix

  • Enabled (default true) — enlarge the per-player send window.
  • WindowBytes (default 61440) — window size in bytes. Clamped 10240-262144.
  • MinWindowBytes (default 2048) — minimum free window before a batch is sent.
  • PingAdaptive (default true) — scale each player's window with measured ping

so high-ping players are not starved. Strongly recommended for international servers.

  • TargetRateKBps (default 300) — per-player target rate used by the adaptive scaling.

[2.SendCadence]

  • Enabled (default true) — service all players every tick instead of one per frame.
  • SendIntervalMs (default 50) — tick interval. Lower = snappier, more CPU/bandwidth. Clamped 20-200.

[3.SteamRates]

  • Enabled (default true) — raise Steam's socket rate limits.
  • SendRateMinKBps (default 256) / SendRateMaxKBps (default 1024) —

keep max above min so Steam's congestion control can adapt to bad routes.

[4.DistantSync]

  • Enabled (default true), DistantThreshold (default 30) — how eagerly

distant-zone objects are synced. Raise if far-away builds appear late.

[5.SmartOwnership] — server only

  • Enabled (default true) — ping-aware mob simulation assignment.
  • PingCeilingMs (default 150) — m

安裝與使用 安裝:BepInEx 外掛

  1. 本站下載的壓縮包就是模組本體,通常是 BepInEx 外掛(解壓後得到 .dll 或外掛資料夾)。
  2. 建議流程:用社群模組管理器(如 r2modman)選中本遊戲後匯入該模組,管理器會自動裝好 BepInEx 前置並處理依賴。
  3. 手動流程:先在遊戲目錄裝好 BepInEx 載入器,再把解壓出的 .dll 或外掛資料夾放進 BepInEx/plugins/。
  4. 啟動遊戲,BepInEx 控制台會列印載入日誌;確認這個模組出現在日誌裡即為安裝成功。

帶「前置依賴」的模組需要一併安裝,否則不會載入。功能開關通常在遊戲內或外掛自帶的設定檔裡調整。 多人連線時,主機與所有用戶端需要安裝一致的模組。

前置依賴

下面這些內容需要先安裝,否則該模組不會生效:

denikson-BepInExPack_Valheim

檔案與校驗

檔案名稱
kou_fixdesync-1.0.1.zip
檔案大小
83.4 KiB