SwmarlyValheimQOL
Configurable Valheim 1.0 QOL mod: floating items, water equipment, sleep voting, coin pocket, diving, running hotbar equipment, sitting regen, tree replanting, auto-repair, vehicle dismantling, eternal fires, no-rain wear, and no-stamina building.Changelog
2.0.15
- Completed coin pickup through Valheim's native networked pickup ownership path instead of leaving AutoPickup drops pending on a separate currency response route. Coin stacks now commit directly to the pocket, remain safe with full inventories, and roll back without deletion if the local commit fails.
2.0.14
- Routed currency pickup and purchase requests through Valheim's native
ZRoutedRpctransport for dedicated-server reliability, while retaining server-side validation, idempotency, and rollback behavior.
2.0.13
- Fixed dedicated-server currency pickup by correcting the Jötunn CustomRPC callback registration order. Client pickup requests now reach the server handler, and server responses reach the client handler.
2.0.12
- Hardened coin AutoPickup for dedicated servers: the client-only coin opt-in now requires a local player and is disabled on dedicated server processes. Dedicated servers remain authoritative for currency validation, balance updates, and drop destruction.
2.0.11
- Explicitly opted coin drops into Valheim's native AutoPickup eligibility gate when the authoritative currency RPC is ready. This preserves safe manual pickup behavior and prevents coins from being silently skipped before the pocket transaction starts.
2.0.10
- Fixed coin AutoPickup by bypassing both Valheim capacity gates used before
Humanoid.Pickup: inventory-slot capacity and carry weight. Only authoritative coin-pocket pickups are exempt. - Fixed equipment actions during controlled diving by making the diving swimming-state patch honor the existing equipment-action scope.
2.0.9
- Fixed coin AutoPickup with a full inventory by patching Valheim's actual
CanAddItem(GameObject, int)capacity check. Only coin pickups in the AutoPickup context bypass capacity; manual item adds and other items retain native inventory rules.
2.0.8
- Restored the pre-Jötunn
Player.InMinorActionSlowdownequip-running bypass so switching hotbar equipment while sprinting does not cancel sprint or force walk speed.
2.0.7
- Moved the running-equip slowdown bypass directly into Valheim's
Character.UpdateWalkingslowdown check so it is applied in the same fixed-update movement calculation.
2.0.6
- Fixed running equipment slowdown by identifying Valheim's queued equip/unequip action directly instead of relying on input or animation timing.
2.0.5
- Fixed a listen-server currency RPC loop that could repeatedly process the same response, freeze Valheim, and crash when picking up coins.
- Deduplicated automatic pickup requests and stopped pending coins from being visually pulled into the player; coins remain in the world until the authoritative pocket transaction succeeds.
2.0.4
- Fixed hotbar equipment while running by preserving queued equip actions and suppressing slowdown only during Valheim's explicit
equippingaction. - Fixed currency pickup registration timing so Jötunn registers the currency RPC before world startup; coins now remain recoverable instead of orbiting the player when the route is unavailable.
2.0.3
- Added server-compatible hammer middle-click dismantling for supported boats and carts.
- Preserved Valheim's native removal checks, ownership claim, resource drops, effects, and networked destruction; occupied or attached carts are rejected.
2.0.2
- Fixed dedicated-server coin pickups being consumed without crediting the currency pocket.
- Coin pickups now fail closed and remain in the world when the currency RPC is unavailable, the pocket cannot be updated, or the balance would overflow.
- Added registration retry and lost-response retry handling for authoritative coin pickups, including full-inventory auto-pickup.
2.0.1
- Fixed automatic stump removal and tree replanting on client-owned trees in dedicated-server worlds.
- Added robust stump instance/name resolution and preserved native stump destruction/drop behavior.
- Added aliases for the vanilla birch stump prefab names used by different Valheim builds.
2.0.0
- Requires Jötunn 2.30.0 and exact QOL-version matching between server and clients.
- Makes multi-user chest transactions server-authoritative with bounded request handling, sender validation, expiry, and explicit external-owner arbitration.
- Moves coin pickup and pocket-funded trader purchases behind versioned, idempotent server transactions with balance recovery on failed responses.
- Adds pure safety-rule tests and lifecycle cleanup for world, network, UI, movement, sleep, currency, and chest state.
1.0.8
- Fixed trader purchases to debit the currency pocket, including purchases paid partly from inventory coins and partly from the pocket.
- Fixed hammer, hoe, and cultivator stamina handling so only the actual tool-use action is free; holding a tool no longer removes movement stamina costs.
- Hardened SpeedyPaths for multiplayer by updating only the local player after physics ground contact and ignoring nearby player colliders.
- Added enabled-by-default automatic tree-stump removal. Native stump destruction is preserved so normal log drops still spawn, and automatic replanting remains server-authoritative and compatible.
1.0.7
- Added an AzuAutoStore compatibility marker so its duplicate MultiUserChest patch layer stays disabled when QOL multi-user chests are enabled.
1.0.6
- Fixed multi-user chest routing after networked containers reload by retrying QOL inventory-owner registration until the container inventory exists.
- Fixed the Valheim 1.0 Inventory.AddItem Harmony error by removing the version-fragile logging IL rewrite; cross-owner chest transaction patches now register normally.
1.0.5
-
Removed the non-functional trash-mob fleeing feature.
-
Moved the Features section to the top of the config while preserving existing values and removing the obsolete fleeing section.
-
Changed no-stamina mode to exempt only actual hammer, hoe, and cultivator use by default; the previous equipped-tool behavior remains configurable.
-
Removed coin-purse background-click and drag-and-drop depositing; manual transfers now use only the two purse buttons.
-
Fixed jumping from very shallow water entering Valheim's swimming state.
-
Added a native swim-state guard and timer boundary so shallow water remains walkable while deep-water diving remains available.
1.0.4
- Fixed dedicated-server chest opening by preserving Valheim's native open RPC and disabling only the in-use rejection for supported containers.
- Added a guarded GUI ownership fallback and hardened the chest GUI transpiler for Valheim 1.0.
- Fixed null inventory-owner handling that could break chest item transactions.
1.0.3
-
Added configurable eternal fuel for native campfires, hearths, braziers, torches, and other
Fireplacepieces using the synchronized ZDO fuel value. -
Added server-authoritative stump-to-sapling replanting with exact mappings for the supported vanilla tree types; no random or mismatched saplings are selected.
-
Added native workbench auto-repair for every item the opened crafting station can repair, including armor, tools, weapons, bows, and shields.
-
Kept the package at version 1.0.3 and kept BepInExPack Valheim as the only dependency.
-
Audit pass against the current SleepSkip, Use Equipment in Water, EquipGearWhileRunning, VikingsDoSwim/BetterDiving, CurrencyPocket, SpeedyPaths, MultiUserChest, NoAFKRaids, and NoRainDamage implementations.
-
Hardened deferred hotbar equip transactions, moved the currency card between Armor/Weight, added true drag-drop coin deposit, and marked consumed coin drops in their network ZDO to prevent duplicate pocket credit.
-
Applied the diving camera water override before and after the camera solve, added cultivated-ground SpeedyPaths settings, and made AFK raid protection use active connections and event radius when available.
-
Added No-Chest-Block/MultiUserChest-style simultaneous chest opening and stack acknowledgment.
-
Added the reference-style authoritative chest item transaction RPCs for add, remove, move, consume, drop, preview, and rollback handling.
-
Added SpeedyPaths-style ground detection, movement multipliers, and configurable no-stamina dirt/stone paths.
-
Added dedicated-server NoAFKRaids protection based on authoritative player movement positions.
-
Replaced Rigidbody diving with native
m_swimDepthcontrol, persistent dive state, native timer maintenance, and a post-camera water-clamp override. -
Uses the reference
Player.CheckRunqueue-clear removal plus aHumanoid.ClearActionQueuefallback for the running hotbar equip gate, preserving sprint movement. -
Replaces the native swimming check only inside the equipment transaction, leaving the real swimming state, stamina, and movement code untouched.
-
Keeps Valheim's native dive target and swim timers active through
UpdateMotion/CustomFixedUpdate, and removes the camera water clamp while the local player is below the surface. -
Fixed one-time CurrencyPocket migration so an old standalone plugin cannot re-add the same balance and duplicate coins; cleaned orphan button clones before rebuilding the pocket row.
-
Applied swim-speed scaling at
Character.UpdateSwimming, where vanilla consumes the speed value, instead of only updating it from the render-frame player update. -
Post-release hardening: rebuilt the running-equipment bypass around Valheim's running query and all equip call paths without changing the package version.
-
Reworked diving to drive Valheim's native swim-depth target during fixed updates, so dive/surface input is not overwritten by vanilla buoyancy.
-
Deduplicated the currency panel, migrated the standalone CurrencyPocket balance key, and put both coin buttons in a fixed non-overlapping row.
-
Added a direct click-to-deposit action and changed sitting regeneration to an exact one-health-per-second accumulator by default.
-
Fixed hotbar equipment while running by handling both Valheim movement flags and the central
UseItem/EquipItempaths. -
Fixed swimming equipment by bypassing the native swim gate only for the equip transaction, then restoring the real swim state.
-
Fixed diving by using held keys and applying vertical velocity after native swimming physics.
-
Fixed currency pocket placement with rendered UI bounds instead of an expanded-inventory hardcoded offset.
-
Added a deposit button and drag-and-drop coin deposit from the normal inventory.
-
Allowed coin autopickup when normal inventory space is full and persisted the dedicated-server config before patch registration.
-
Improved sleep vote cleanup and late-joiner popup delivery.
-
Fixed sleep-vote registration across world reloads and stopped stale warning/vote state from carrying into the next vote.
-
Removed repeated sleep-display RPC spam and updated the open vote body when counts change.
-
Removed in-bed players from explicit vote sets and continued notifying eligible late joiners.
1.0.2
- Fixed hotbar equipment while running by bypassing the actual movement-state equip gate.
- Fixed currency pickup reliability and delayed the currency-pocket layout until other inventory mods finish positioning their UI.
- Added compatibility placement for common expanded-inventory layouts and fixed the currency icon/text lookup.
- Preserved stamina regeneration when no-stamina mode is enabled.
- Reapplied no-rain wear protection to already-loaded structures.
1.0.1
- Load on dedicated-server processes so the server config and server-side patches initialize.
- Fixed running hotbar equipment to bypass the vanilla movement-state gate.
- Reworked currency-pocket UI placement and inventory-mod compatibility.
- Clarified dedicated-server and client installation requirements.
1.0.0
- Initial Valheim 1.0 release.
- Combined the requested quality-of-life features into one configurable plugin.


