
VikingRevival
(TESTING) Cooperative downed states, crawling and healing-mead revival. Multiplayer, inventory crash safety and animation acceptance remain unverified.Viking Revival 1.0.0 — testing candidate
Cooperative downed states, slow crawling, healing-mead revival, bleed-out and repeated-knockdown recovery for Valheim. This build is supplied for testing. Full multiplayer and visual acceptance have not been completed. It is not a verified production release.
Install manually
Install BepInExPack Valheim 5.4.2351 first. With the game stopped, extract the Manual ZIP and copy its BepInEx folder into the game or mod profile folder, merging folders. The resulting files must be:
BepInEx/plugins/VikingRevival/VikingRevival.dll
BepInEx/plugins/VikingRevival/VikingRevival.Core.dll
Both DLLs are required. Install the same candidate on the server and every participating player. Restart the game/server after installation. Jötunn is not required. Newtonsoft.Json is provided by the inspected Valheim installation, not redistributed by this package.
Thunderstore / r2modman
Install VikingRevival through Thunderstore Mod Manager or r2modman, or import the Thunderstore ZIP as a local mod into the chosen profile. Its manifest, readme, changelog and 256×256 icon are at the archive root; DLLs are inside BepInEx/plugins/VikingRevival. This is the testing distribution; check the release checklist and known limitations before playing.
Use the same testing build on your server and every participating client.
Playing
On first reaching the main menu, a Viking Revival welcome panel explains downed states, crawling, mead tiers and bleed-out. Choose Don't show again to disable automatic opening. The Viking Revival · How to play button at the bottom left of the main menu reopens the explanation. This preference is local to your BepInEx profile; it can also be reset with Presentation.ShowWelcomeOnStartup=true.
An eligible player with a cooperating, mod-enabled teammate within 150 m becomes downed after a fatal hit. Default solo, PvP, drowning, unsafe water and scripted deaths retain vanilla death behavior. Crawl with normal movement controls; combat, inventory actions, jumping, sprinting and item usage are blocked. The original collision body remains intact.
An ally within 2.5 m holds the game's Use action (normally E) to revive. R, configurable in BepInEx settings, cycles available meads before holding Use. The lowest available tier is selected initially. Minor mead takes 8 s and restores 25 HP; medium takes 5 s and restores 50 HP; major takes 3 s and restores 100 HP, capped by current maximum health. Personal mead cooldown does not apply. Stamina, Eitr and food are not replenished.
Releasing Use, damage, loss of range, disconnect or unavailable mead cancels progress. One rescuer controls a target at a time. Successful revival consumes one mead using an owner-side escrow record; aborted transactions refund it when confirmed by the same server journal. An uncertain transaction is retained rather than inventing an item. Leave room in inventory for refunds.
Default bleed-out is 75 s, then 45 s and 25 s on repeat knockdowns during the 300 s recovery window. Eligible enemy/DOT hits subtract 5 s with a 1 s cooldown. Reviving grants 2 s of damage protection and restarts the recovery window. Bleed-out calls Valheim's original death path.
Dedicated servers
Install both DLLs under the server's BepInEx/plugins/VikingRevival and on clients. Start once to generate BepInEx/config/com.vikingrevival.cfg. Stop the server, edit the [Server] settings, and restart. The server synchronizes gameplay rules. Presentation and input settings stay local. Preserve BepInEx/config/VikingRevival/<world-id>.json and its backup when moving a world/server. Do not delete a journal while characters have pending downed states or potion escrows.
Disconnected downed characters retain their absolute deadline. Restarted channels abort; committed results remain recorded. A saved downed character cannot safely escape death by reconnecting to an authority without its event. Local fallback uses normal death if a pending state cannot be reconciled. There is no host migration feature in this implementation.
Configuration and troubleshooting
See docs/CONFIGURATION.md, docs/COMPATIBILITY.md, docs/TESTING.md and docs/RELEASE-CHECKLIST.md. In particular, use disposable characters/worlds for testing until the crash/inventory and multiplayer gates pass. This is a test-build instruction, not a claim those gates have passed.
Missing DLL errors: ensure both plugin DLLs are present and the game/framework match the inspected versions. No revival: confirm the server and at least one nearby teammate have the mod, server EnableRevival is true, and the death type is eligible. A malformed gameplay configuration disables new revival instead of guessing values. Configuration changes require restart.
Pending refund: return to the original world/server with its journal and make one inventory slot available. Preserve saves, journals and logs if it remains unresolved. Do not clear custom data to force a refund.
Building
Requires .NET SDK 8.0.426 (or compatible SDK), a legally installed Valheim copy, and BepInEx 5. Run scripts/collect-references.ps1 with the game and BepInEx paths, then scripts/build.ps1. Set -Dotnet to a local SDK executable if necessary. scripts/package.ps1 creates both install ZIPs and a source ZIP. Private .references and all game assemblies are excluded from distributable archives.
The project was compiled against Valheim 1.0.20, Unity 6000.0.75f1, BepInEx 5.4.23.5 (pack 5.4.2351). The plugin loaded in an isolated Unity process with all Harmony patches. Gameplay probing stopped at Steam initialization, so no live multiplayer/crawl/death pass is claimed.
Framework and package references: BepInEx plugin documentation, Thunderstore packaging rules. Exact API selections were checked against the installed assemblies.