SebNetCompressionPlugin
Substantially reduce bandwidth usage by compressing network data.
Last updated | 3 years ago |
Total downloads | 2397 |
Total rating | 2 |
Categories | |
Dependency string | Seb-SebNetCompressionPlugin-1.0.3 |
Dependants | 2 other packages depend on this package |
This mod requires the following mods to function
1F31A-BepInEx_Valheim_Full_Updater
Auto-Installer Plugin for BepInEx Valheim Full.
Preferred version: 1.0.2README
Valheim Network Compression Plugin
Substantially reduce bandwidth usage by compressing network data.
Requirements
- Requires BepInEx Valheim Full
- No, it will not work with the old BepInExPack because it's missing DLLs.
Installation
Mod manager
This package is structured for use with r2modman.
Manual installation
Until r2modman adds support for plugins that ship in their own folder, you'll need to do the following steps:
- In your BepInEx Valheim Full plugins folder, create the folder
SebNetCompressionPlugin
- It should now be structured as
BepInEx/plugins/SebNetCompressionPlugin
- It should now be structured as
- Copy everything from
SebNetCompressionPlugin/plugins/
in the package toBepInEx/plugins/SebNetCompressionPlugin
in your local install
The final structure should be:
BepInEx/
plugins/
SebNetCompressionPlugin/
libzstd.dll
libzstd.so
SebNetCompressionPlugin.dll
Usage
- Install the plugin.
- All clients as well as the server need to have the plugin to work.
- Change the configuration options to your liking (logging, compression level).
Reasoning
The plugin uses Zstandard for fast, real-time compression of network data.
While testing compression algorithms, we tried:
and found that Zstd achieved one of the highest compression rates (i.e. the lowest bandwidth usage) at a fraction of the CPU time.
To test the compression rates, we enabled logging on both client & server and played around in the game world to trigger many different events, with up to 5 players.
Links & Licenses
- Zstandard
- ZstdNet, C# Zstd library
- Illustration by Icons8 from Icons8