Blasted Swimming Tarred Bug Fix

v1.2.6·Updated 2026-09-13

Fixes stale swimming and tar state, LiquidVolume lifetime, ZNetScene cleanup, Character and StatusEffect teardown, EnemyHud cleanup, and optional MagicPlugin projectile, teleport, registry, and cosmet

Screenshots 1 screenshots

About this mod Author’s original text

BlastedSwimmingTarredBugFix

Defensive runtime fixes for stale liquid state, scene and Character lifecycle cleanup, optional MagicPlugin interoperability, and Korean names in the F2 player list.

The current source targets Valheim 1.0.12. Build with the original 1.0.12 game

assemblies; it does not include an older-game compatibility path.

What It Fixes

  • Random swimming while nowhere near water.
  • Random tarred state after leaving a Plains tar pit.
  • Portal, dungeon, or scene transitions leaving old liquid state behind.
  • Carts or floating objects keeping water/tar state after a missed trigger exit.
  • Unconditional disposal of unallocated LiquidVolume raycast arrays.
  • Scene cleanup failing on missing, destroyed, or mismatched ZNetView data.
  • Malformed StatusEffect start effects interrupting Character destruction.
  • Character registry and EnemyHud entries surviving incomplete destruction.
  • MagicPlugin projectile patches repeatedly registering configuration handlers.
  • MagicPlugin summon teleport and Character registry patches reading destroyed or

incomplete objects.

  • MagicPlugin Flame, Thunder, and Arctic staff launch cosmetics, Thunder/Arctic

projectile impacts, and shared iceblock destruction creating short-lived peer-owned ZDOs.

  • MagicPlugin Ice Scepter Nova rings leaving cosmetic network objects without a

destruction path.

  • Korean character names rendering as missing glyphs in the F2 player list when

its assigned TMP font does not include Hangul.

How It Works

Liquid and scene protection

  • Rejects stale positive liquid updates when the source no longer overlaps the target.
  • Removes stale entries from WaterVolume and LiquidSurface before floater updates.
  • Clamps water/tar counters so missed exits cannot drive them below zero.
  • Clears purged state only when no current liquid trigger overlaps the target.
  • Clears player liquid state after a teleport successfully starts.
  • Guards LiquidVolume raycast array disposal with IsCreated. Valheim 1.0.7

and 1.0.12 already use Allocator.Persistent, so their allocation code is left intact.

  • Cleans invalid or mismatched ZNetScene entries without dereferencing destroyed views.

Character lifecycle protection

  • Safely tears down StatusEffect start effects with missing or invalid ZNetView components.
  • Repairs Character registry and EnemyHud bookkeeping when Character.OnDestroy is

incomplete or throws.

  • Prunes tracked creature-removal state after scene teardown.

Optional MagicPlugin interoperability

When MagicPlugin is installed, each compatible fix is enabled independently only

after its expected types, methods, fields, Harmony patch, and cosmetic prefab graph

are validated:

  • Replaces the affected Attack.FireProjectileBurst prefix with a guarded implementation.
  • Moves valid followed summons only after a player teleport succeeds.
  • Removes destroyed Characters before MagicPlugin reads the global registry.
  • On MagicPlugin 2.1.9 and later, probes each supported prefab graph once per scene

and enables only the cosmetic paths whose full suppression/replay structure still matches.

  • Keeps gameplay projectiles, Nova AOE, and Arctic iceblocks networked while

replaying compatible Flame/Thunder/Arctic launch and impact cosmetics locally.

  • Tags existing Staff projectile ZDOs so Flame and Lightning Wands that share those

projectile prefabs do not receive Staff-only launch effects.

  • Replays Ice Scepter Nova rings locally from the networked Nova AOE and gives

each ring the same explicit lifetime as that AOE.

Valheim 1.0.7 and 1.0.12 effects with an explicit gamepad recipient keep their original

network objects so the recipient metadata is preserved. Piercing projectiles

that only stop on terrain also retain their original impact effect path, since

intermediate hits do not send the completion RPC required for cosmetic replay.

The current contract checks were also verified against MagicPlugin 2.2.0.

MagicPlugin is optional and is not a package dependency.

F2 playe

Install & use Install: BepInEx plugin

  1. The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
  2. 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.
  3. Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
  4. 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.

Dependencies

Install these first, or the mod will not work:

denikson-BepInExPack_Valheim

File & checksum

Filename
Blasted_Swimming_Tarred_Bug_Fix-1.2.6.zip
File size
159.5 KiB