Confirm with your password

VBNetTweaks

VBNetTweaks is a comprehensive optimization mod for Valheim's multiplayer experience. Designed to improve performance on both servers and clients, reduce lag and stuttering, optimize network traffic, and enhance player synchronization.

Client & Server Performance 1/3
Changelog & versions

· Website

Stars
2
Downloads
49
Version
0.4.3
Updated
Author
VitByr
Virus scan
✓ Scan successful
Runs on
Client & Server

Compatibility

Required 1

Install these too — Gale pulls them in for you.
  • Jotunn ValheimModding ·2.26.1

Incompatible with 13

Do not run these in the same profile.
  • CacoFFF.valheim.LeanNet ·Not on Hexium
  • com.bfv.CombatPrio ·Not on Hexium
  • FiresGhettoNetworking incompletionists
  • TimeoutLimit MSchmoecker
  • CW_Jesse.BetterNetworking ·Not on Hexium
  • WarheimNetwork Dzk
  • Network Smoothbrain
  • r4v9n1.terramizerserver ·Not on Hexium
  • redseiko.valheim.returntosender ·Not on Hexium
  • redseiko.valheim.scenic ·Not on Hexium
  • Searica.Valheim.NetworkTweaks ·Not on Hexium
  • Searica.Valheim.OpenSesame ·Not on Hexium
  • SkadiNet sighsorry

Description

Русский

VBNetTweaks — это плагин для Valheim, который значительно улучшает сетевую производительность, синхронизацию объектов и стабильность многопользовательской игры. Мод оптимизирует отправку данных, настройки Steam-сокета, синхронизацию позиций, а также добавляет модуль плавного отображения игроков на карте.

Важно: Версия 0.4.0 получила полностью переработанную модульную архитектуру. Теперь каждую функцию можно гибко включать или отключать по отдельности, а настройки разделены на клиентские и серверные.


1. Плавные маркеры игроков на карте (MapPositionSync)

Совершенно новый модуль!

  • Заменяет "дергающиеся" маркеры игроков на карте на плавно интерполированные.
  • Использует историю позиций (до 30 снимков) для сглаживания движения.
  • Поддерживает экстраполяцию — если данные о позиции не приходят, маркер продолжает движение по инерции, предотвращая рывки.
  • Настраиваемые параметры:
    • SendInterval (0.5с) — интервал отправки позиций от сервера.
    • InterpolationDelay (0.1с) — задержка интерполяции для плавности.
    • MaxPredictionSpeed (40 м/с) — ограничение скорости предсказания.
    • TeleportThreshold (50 м) — порог мгновенного телепорта маркера при большом смещении.

2. Оптимизация сетевой синхронизации (ZSyncTransformOptimization)

Теперь это отдельный модуль с расширенными настройками:

Параметр Vanilla VBNetTweaks (по умолчанию) Описание
SmoothPosition 0.20 0.10 Скорость сглаживания позиции (ниже = плавнее)
SmoothRotation 0.50 0.30 Скорость сглаживания поворота
MicroThreshold 0.001 0.002 Фильтр микродрожания (уменьшает шум)
ClientDistanceThreshold 0.01 0.005 Порог дистанции для клиентской синхронизации
TeleportDistanceThreshold 5м 3м Порог для мгновенного телепорта без сглаживания
TeleportRotationThreshold 45° 35° Порог для мгновенного поворота без сглаживания

3. Синхронизация кораблей (ShipSync)

Полностью переписан в версии 0.4.0!

  • Исправлена проблема с владением кораблём — теперь владелец корректно назначается при управлении.
  • Улучшена синхронизация руля — данные отправляются чаще (каждые 0.05с вместо ванильных ~0.2с).
  • Более точный расчет урона от удара о воду с логированием скорости.
  • Оптимизирована обработка управления — теперь использует Prefix вместо Postfix для более корректной работы.

4. Оптимизации Steam сокета (SteamOptimizations)

Расширенный набор настроек в версии 0.4.0:

Параметр Vanilla VBNetTweaks (по умолчанию) Описание
SendRateMax (клиент) 150 KB/s 2048 KB/s Максимальная скорость отправки
SendBufferSize (клиент) ~260 KB 2048 KB Размер буфера отправки
TimeoutConnected 30000 мс 120000 мс Таймаут соединения
TimeoutKeepalive 30000 мс 30000 мс Интервал Keep-Alive
RecvMaxMessageSize ~1-2 MB 8 MB Максимальный размер принимаемого сообщения

Для сервера также доступны отдельные настройки: MaxRateKB_S, SendBufferSizeKB_S (по умолчанию 4096 KB).


5. Оптимизированная отправка ZDO (ZDOOptimization)

Значительно улучшена в версии 0.4.0!

  • Внедрена система приоритетов синхронизации (SyncPriority):
    • Player — наивысший приоритет
    • Ship
    • Creature
    • Piece
    • Default
  • Сервер сортирует объекты по приоритету, что гарантирует более важным сущностям (игрокам, кораблям) более частые обновления.
  • Настраиваемые параметры для сервера:
    • SendInterval_S (0.02с) — интервал отправки данных.
    • PeersPerUpdate_S (10) — количество пиров за один апдейт (vanilla: 1).
    • ZDOQueueLimit_S (20480 байт) — размер буфера отправки.
    • FlushThresholdPercent_S (0.2) — процент от буфера для активации принудительной отправки.

6. Дополнительные улучшения

  • Расширение времени загрузочного экрана после телепортации на 5 секунд. Необходимо для устранения проваливания игроков в текстуры построек при телепорте — особенно актуально для серверов с большим количеством игроков.
  • Автоматическая синхронизация конфигурации — все настройки сервера передаются клиентам при подключении и при изменении файла конфига.
  • Поддержка двух языков интерфейса (Русский / English) с локализованными описаниями.

Основные настройки (MainConfig.cfg)

[00 - Master]
ModEnabled = true                          # Включить/выключить мод

[02 - Modules]
SteamOptimizations = true                  # Оптимизации Steam сокета
ZDOOptimization = true                     # Оптимизация ZDO отправок
ShipSync = true                            # Синхронизация кораблей
ZSyncTransformOptimization = true          # Сглаживание движения
MapPositionSync = true                     # Плавные маркеры на карте

[03 - Client Steam Settings]
MaxRateKB = 2048                           # Макс. скорость отправки (KB/s)
SendBufferSizeKB = 2048                    # Буфер отправки (KB)
TimeoutConnected = 120000                  # Таймаут (мс)
TimeoutKeepalive = 30000                   # Keep-Alive (мс)
RecvMaxMessageSize = 8                     # Макс. размер пакета (MB)

[04 - Client ZDO Settings]
ZDOQueueLimit = 10240                      # Буфер ZDO (байт)

[05 - Transform Settings]
SmoothPosition = 0.10                      # Сглаживание позиции
SmoothRotation = 0.30                      # Сглаживание поворота
MicroThreshold = 0.002                     # Фильтр микродрожания
ClientDistanceThreshold = 0.005            # Порог дистанции
TeleportDistanceThreshold = 3              # Порог телепорта (м)
TeleportRotationThreshold = 35             # Порог телепорта поворота (°)

[06 - Server Steam Settings]
MaxRateKB_S = 4096                         # Серверная скорость (KB/s)
SendBufferSizeKB_S = 4096                  # Серверный буфер (KB)

[07 - Server ZDO Settings]
SendInterval_S = 0.02                      # Интервал отправки (сек)
PeersPerUpdate_S = 10                      # Пиров за апдейт
ZDOQueueLimit_S = 20480                    # Буфер ZDO сервера (байт)
FlushThresholdPercent_S = 0.2              # Порог принудительной отправки

[08 - Map Positions]
SendInterval = 0.5                         # Интервал отправки позиций (сек)
InterpolationDelay = 0.1                   # Задержка интерполяции (сек)
MaxPredictionSpeed = 40                    # Макс. скорость предсказания (м/с)
MaxPredictionTime = 0.05                   # Макс. время предсказания (сек)
TeleportThreshold = 50                     # Порог телепорта маркера (м)

Установка

  • Установите на клиент и на сервер.

Несовместимые моды:

  • CacoFFF.valheim.LeanNet
  • redseiko.valheim.scenic
  • Searica.Valheim.NetworkTweaks
  • Searica.Valheim.OpenSesame
  • org.bepinex.plugins.network
  • CW_Jesse.BetterNetworking
  • com.Fire.FiresGhettoNetworkMod
  • sighsorry.SkadiNet
  • redseiko.valheim.returntosender
  • com.maxsch.valheim.TimeoutLimit
  • dzk.warheimnetwork

Обратная связь


English

VBNetTweaks is a Valheim plugin that significantly improves network performance, object synchronization, and multiplayer stability. The mod optimizes data transmission, Steam socket settings, position synchronization, and adds a completely new system for smooth player markers on the map.

Important: Version 0.4.0 features a fully redesigned modular architecture. Each function can now be flexibly enabled or disabled separately, and settings are split into client and server categories.


1. Smooth Player Markers on Map (MapPositionSync)

Brand new module!

  • Replaces "jumpy" player markers on the map with smoothly interpolated ones.
  • Uses position history (up to 30 snapshots) for smooth movement.
  • Supports extrapolation — if position data doesn't arrive, the marker continues moving by inertia, preventing stuttering.
  • Configurable parameters:
    • SendInterval (0.5s) — interval for sending positions from the server.
    • InterpolationDelay (0.1s) — interpolation delay for smoothness.
    • MaxPredictionSpeed (40 m/s) — prediction speed limit.
    • TeleportThreshold (50m) — threshold for instant marker teleportation on large displacement.

2. Network Synchronization Optimization (ZSyncTransformOptimization)

Now a separate module with extended settings:

Parameter Vanilla VBNetTweaks (default) Description
SmoothPosition 0.20 0.10 Position smoothing speed (lower = smoother)
SmoothRotation 0.50 0.30 Rotation smoothing speed
MicroThreshold 0.001 0.002 Micro-jitter filter (reduces noise)
ClientDistanceThreshold 0.01 0.005 Distance threshold for client sync
TeleportDistanceThreshold 5m 3m Threshold for instant teleport without smoothing
TeleportRotationThreshold 45° 35° Threshold for instant rotation without smoothing

3. Ship Synchronization (ShipSync)

Completely rewritten in version 0.4.0!

  • Fixed ship ownership issues — owner is now correctly assigned when controlling.
  • Improved rudder synchronization — data is sent more frequently (every 0.05s instead of vanilla ~0.2s).
  • More accurate water impact damage calculation with speed logging.
  • Optimized control handling — now uses Prefix instead of Postfix for more reliable operation.

4. Steam Socket Optimizations (SteamOptimizations)

Extended settings in version 0.4.0:

Parameter Vanilla VBNetTweaks (default) Description
SendRateMax (client) 150 KB/s 2048 KB/s Maximum send rate
SendBufferSize (client) ~260 KB 2048 KB Send buffer size
TimeoutConnected 30000 ms 120000 ms Connection timeout
TimeoutKeepalive 30000 ms 30000 ms Keep-Alive interval
RecvMaxMessageSize ~1-2 MB 8 MB Maximum receive message size

Server also has separate settings: MaxRateKB_S, SendBufferSizeKB_S (default 4096 KB).


5. Optimized ZDO Transmission (ZDOOptimization)

Significantly improved in version 0.4.0!

  • Introduced synchronization priority system (SyncPriority):
    • Player — highest priority
    • Ship
    • Creature
    • Piece
    • Default
  • Server sorts objects by priority, ensuring more important entities (players, ships) get more frequent updates.
  • Configurable server parameters:
    • SendInterval_S (0.02s) — data send interval.
    • PeersPerUpdate_S (10) — peers per update (vanilla: 1).
    • ZDOQueueLimit_S (20480 bytes) — send buffer size.
    • FlushThresholdPercent_S (0.2) — percentage of buffer for forced flush.

6. Additional Improvements

  • Extended loading screen after teleportation by 5 seconds. Necessary to prevent players from falling through building textures after teleport — especially relevant for large servers.
  • Automatic configuration synchronization — all server settings are sent to clients on connection and when the config file changes.
  • Two language support (Russian / English) with localized descriptions.

Main Configuration (MainConfig.cfg)

[00 - Master]
ModEnabled = true                          # Enable/disable mod

[02 - Modules]
SteamOptimizations = true                  # Steam socket optimizations
ZDOOptimization = true                     # ZDO transmission optimization
ShipSync = true                            # Ship synchronization
ZSyncTransformOptimization = true          # Movement smoothing
MapPositionSync = true                     # Smooth map markers

[03 - Client Steam Settings]
MaxRateKB = 2048                           # Max send rate (KB/s)
SendBufferSizeKB = 2048                    # Send buffer (KB)
TimeoutConnected = 120000                  # Timeout (ms)
TimeoutKeepalive = 30000                   # Keep-Alive (ms)
RecvMaxMessageSize = 8                     # Max packet size (MB)

[04 - Client ZDO Settings]
ZDOQueueLimit = 10240                      # ZDO buffer (bytes)

[05 - Transform Settings]
SmoothPosition = 0.10                      # Position smoothing
SmoothRotation = 0.30                      # Rotation smoothing
MicroThreshold = 0.002                     # Micro-jitter filter
ClientDistanceThreshold = 0.005            # Distance threshold
TeleportDistanceThreshold = 3              # Teleport threshold (m)
TeleportRotationThreshold = 35             # Rotation teleport threshold (°)

[06 - Server Steam Settings]
MaxRateKB_S = 4096                         # Server send rate (KB/s)
SendBufferSizeKB_S = 4096                  # Server buffer (KB)

[07 - Server ZDO Settings]
SendInterval_S = 0.02                      # Send interval (sec)
PeersPerUpdate_S = 10                      # Peers per update
ZDOQueueLimit_S = 20480                    # Server ZDO buffer (bytes)
FlushThresholdPercent_S = 0.2              # Flush threshold

[08 - Map Positions]
SendInterval = 0.5                         # Position send interval (sec)
InterpolationDelay = 0.1                   # Interpolation delay (sec)
MaxPredictionSpeed = 40                    # Max prediction speed (m/s)
MaxPredictionTime = 0.05                   # Max prediction time (sec)
TeleportThreshold = 50                     # Marker teleport threshold (m)

Installation

  • Install on both client and server.

Incompatible mods:

  • CacoFFF.valheim.LeanNet
  • redseiko.valheim.scenic
  • Searica.Valheim.NetworkTweaks
  • Searica.Valheim.OpenSesame
  • org.bepinex.plugins.network
  • CW_Jesse.BetterNetworking
  • com.Fire.FiresGhettoNetworkMod
  • sighsorry.SkadiNet
  • redseiko.valheim.returntosender
  • com.maxsch.valheim.TimeoutLimit
  • dzk.warheimnetwork

Feedback


Changelog

0.4.3 Latest
  • Fixed the accumulation of packets, which led to invisible mobs, etc.
  • An attempt to reduce the number of friezes
  • Performance is increased 2-3 times with Net logs enabled (ping rises 2 times only, not 4-5)
  • Added the ability to output logs to discord
0.4.2
  • Update for Valheim 1.0
  • The ZDO sending and sorting method has been rewritten
  • The module for ships has been removed (if there was any result, it was unnoticeable)
  • Marker synchronization works on the vanilla principle, but more frequently
  • Steam patches have been reworked
  • Network load log statistics have been added (VitByr.VBNetTweaks.cfg)
0.4.0
  • The RPC filter was removed because it created problems
  • Added ZSyncTransform settings to the configuration
  • Several settings have been divided into client settings (synchronized from the server to all clients) and server settings (applied only on the server and not sent to clients)
  • The VBMapPingSmooth mod has been completely redesigned and integrated here (if there is one in the build, then you need to remove it)
  • Added the ability to change the configuration description language (VitByr.VBNetTweaks.cfg) to English (Russian is still the default)
  • ZDO optimization has been updated and now "players, mobs, ships" are sent first
  • The Steam patch has been completely rewritten (it should now work on Linux)
  • The config with the settings has been renamed, as well as the default values have been revised

15 older entries, full version history & downloads →

Manual download
Just this mod One .zip — VBNetTweaks 0.4.3
Files you'll get 2
  • VBNetTweaks 0.4.3 VitByr this mod Get
  • Jotunn 2.30.2 ValheimModding asked for 2.26.1 Get

Your browser may ask permission to download several files at once. How to install these manually

Manual installation instructions
1

Install BepInExPack Valheim

BepInExPack Valheim is required to run mods in Valheim.

Download BepInExPack Valheim 5.4.2351 · View mod page

Check out the mod page for detailed installation instructions.

2

Install VBNetTweaks

This mod must be installed on both the client and the server.

Download VBNetTweaks 0.4.3

Extract the ZIP and place the file(s) into the BepInEx/plugins/ folder inside your Valheim game folder.