You are viewing a potentially older version of this package. View all versions.
CW_Jesse-BetterNetworking_Valheim-1.1.301 icon

BetterNetworking Valheim

If you've been experiencing lag or desync when playing with your friends, this might be your answer!

Date uploaded 3 years ago
Version 1.1.301
Download link CW_Jesse-BetterNetworking_Valheim-1.1.301.zip
Downloads 606
Dependency string CW_Jesse-BetterNetworking_Valheim-1.1.301

This mod requires the following mods to function

denikson-BepInExPack_Valheim-5.4.2202 icon
denikson-BepInExPack_Valheim

BepInEx pack for Valheim. Preconfigured and includes unstripped Unity DLLs.

Preferred version: 5.4.2202

README

Gives increased control over Valheim's networking and automatically improves performance.

For most people, the default settings will greatly decrease desync and lag between players who have the mod.

If you're looking for further improvements, you can change the settings of Better Networking in the Configuration Manager (F1). Settings are applied in real time (except for dedicated servers, which need to be restarted (for now)). Try the following:

  • If Person A is experiencing desync/lag while Person B is around, but Person B's character seems fine, Person B needs to increase their queue size.
  • If Person A is experiencing desync/lag while Person B is around, including for Person B's character, Person B needs to decrease their update rate and/or queue size.
  • Try adjusting both send rates to be the highest option available below your internet upload speed. (These options are likely less important than the other ones.)
  • Simply installing the mod for everyone, including the dedicated server (if you're using one), can increase multiplayer performance by 2x-3x, often more. I'm not kidding. I'm so pleased with the results of this.

Three things to note:

  1. Incompatible with other networking mods, including VNO, NetworkFix, and sometimes Serverside Simulations, to name a few.
  2. Compression increases your CPU usage. This can become the new bottleneck in some cases. With this mod, Valheim can max out two cores, so with 4 cores, 50% CPU usage by Valheim is maxing it out.
  3. If you're currently experiencing 10 seconds of lag, reducing it to 3 seconds is still a lot of lag.

Better Networking gives you the power to make your multiplayer experience better or worse. Use the power responsibly, experiment, and let others (including me) know what works and what doesn't here in the discussions. For a detailed breakdown of Valheim networking, check out this reddit post by u/SleepMyLittleOnes.

Finished features

  • compress network data (improves performance for everyone; requires others to have mod)
  • sending queued packages all at once instead of one at a time (improves performance for everyone, especially if you have high ping; requires others to have mod)
  • option to reduce network update speed (for computers with slow/inconsistent upload speeds)
  • change min/max send rates (higher can be better with good internet)
  • change network queue size (Valheim better prioritizes data when queue size is lower, but sends less data overall)
  • [size=2][/size]increased networking buffer size (might help)

Planned features

  • option to turn compression off (useful if your bottleneck is the CPU or you want to compare performance)
  • skip compression if you're on the same computer as the dedicated server (although maybe that's covered by the above)
  • reduce CPU usage
  • don't compress small messages
  • allow admins to change dedicated server settings within their client without having to restart server
  • option to allow players to choose who the server is
  • better data prioritization
  • improved networking regarding terrain
  • automatic queue size
  • make everything automatic so that no advanced options or instructions are necessary

If you've benefited from this mod and want to see more features implemented, please endorse it! Or if you're feeling particularly generous, donate here or on Patreon!

CHANGELOG

2.3.2

  • compatibility with Valheim 0.217.28

2.3.1

  • compatibility with Valheim 0.216.9

2.3.0

  • allow changing player limit for dedicated servers

2.2.1

  • bugfix: more stable when some people have compression/BN disabled
  • bugfix: no longer spams log when unexpected messages received

2.2.0

  • PlayFab: fixed failing to work in some cases
  • PlayFab: better handling of disconnections
  • PlayFab: simplified compression code
  • PlayFab: fixed error in vanilla Valheim where data could be lost while connecting
  • Steamworks: fixed failing to work in some cases

2.1.3

  • reverted to 2.1.1; for now, avoid using Alt+F4 to close the game

2.1.2

  • better handling of unexpected disconnections

2.1.1

  • improved startup time
  • better config documentation

2.1.0

  • buffer new connections ("ZDO buffer")
  • better default queue size
  • better queue size options
  • PlayFab: compression ratio info messages
  • Steamworks: simplified compression code (less likely to break in future Valheim patches)
  • Steamworks: higher maximum send rate
  • force crossplay option only shows for dedicated servers
  • bugfix: queue size changes apply to PlayFab
  • bugfix: can no longer set queue size too high for Steamworks
  • bugfix: compression/update rate once again changeable without restart

2.0.4

  • lower file size
  • fixed incompatibility with mods that read/write from current directory
  • bugfix: Linux supported again

2.0.2

  • crossplay no longer forced enabled by default
  • option to force crossplay disabled
  • fixed misleading severity of some log messages

2.0.1

  • increased default queue size (might prevent desyncs)
  • increased max queue size (might induce lag - enable at own risk)

2.0.0

  • now compatible with Mistlands
  • now supports new PlayFab (crossplay) networking stack
  • improved speed and effectiveness of network compression
  • now forces PlayFab (crossplay) by default (can be disabled in config file)

1.2.2

  • bugfix: compression handshake wasn't completing properly
  • many small improvements

1.2.1

  • breaks down multiple large packages into separate messages
  • can now disable non-error/non-warning log messages
  • fewer config options (based on feedback/testing)
  • better config descriptions

1.2.0

  • compression now optional
  • defaults changed
  • better log messages
  • bugfix: certain messages could ignore increased queue size
  • bugfix: can no longer set minimum send rate to 0

1.1.3

  • increased send buffer size
  • higher default network queue size and queue size options (made reasonable by compression)
  • better default options
  • better option descriptions
  • possible fix for unusual servers