You are viewing a potentially older version of this package. View all versions.
GurneyArena-AbsorptionEitrShield-0.3.14 icon

AbsorptionEitrShield

Eitr-based damage absorption shield with optional recharge mode. Now works properly for all players in multiplayer and supports PvP damage absorption.

Date uploaded 5 months ago
Version 0.3.14
Download link GurneyArena-AbsorptionEitrShield-0.3.14.zip
Downloads 78
Dependency string GurneyArena-AbsorptionEitrShield-0.3.14

This mod requires the following mods to function

denikson-BepInExPack_Valheim-5.4.2202 icon
denikson-BepInExPack_Valheim

BepInEx pack for Valheim. Preconfigured and includes unstripped Unity DLLs.

Preferred version: 5.4.2202
ValheimModding-Jotunn-2.20.0 icon
ValheimModding-Jotunn

Jötunn (/ˈjɔːtʊn/, 'giant'), the Valheim Library was created with the goal of making the lives of mod developers easier. It enables you to create mods for Valheim using an abstracted API so you can focus on the actual content creation.

Preferred version: 2.20.0

README

AbsorptionEitrShield

AbsorptionEitrShield adds an Eitr-based “shield” that absorbs incoming damage by draining Eitr first, then applying any remaining damage to HP.

How it works

When damage is taken:

  • The mod reads how much HP was actually lost after vanilla calculations (armor, resistances, block/parry, etc.)
  • That HP loss is absorbed by draining Eitr up to the available amount
  • Any remaining damage (overflow) is applied to HP

Modes

Recharge mode (default: ON)

  • Shield does NOT absorb damage while Eitr is recharging from 0 up to current max (e.g. after eating Eitr food)
  • Shield becomes active when Eitr reaches current max
  • If Eitr drops to ~0–1, shield disables again until it fully recharges

Always-on mode (Recharge OFF)

  • Shield is always active whenever the player has Eitr (even if Eitr is not full)

NEW in 0.3.14

✅ Multiplayer fixed: shield absorption now works for ALL players, not only host
✅ PvP supported: players can absorb damage from other players correctly
✅ /die command bypass: using /die kills the player and is not prevented by the shield
✅ Damage handling improved: absorption is applied using Character.ApplyDamage, which catches most multiplayer damage sources correctly

Known limitations / not fixed yet

  • Always-on mode death issue: if a player has at least 1 Eitr, some lethal hits may fail to kill (HP may not reach 0 as expected). Recharge mode behaves better here, but always-on still needs a fix.
  • Block/parry behavior: blocked/parried damage can still drain Eitr (some users may prefer blocked damage to be ignored by the shield).
  • DoT effects: some periodic damage (burning/poison/etc.) can still bypass absorption depending on how the game applies the damage.
  • This mod intentionally does not modify stagger mechanics (stagger can still build up normally).

Installation

Install via Thunderstore / r2modman, or place the DLL into: BepInEx/plugins/AbsorptionEitrShield/

Configuration

Settings can be changed in-game via Configuration Manager (host/admin authoritative in multiplayer). Client-side config values are ignored.

  • ModEnabled
  • UseRecharge

Multiplayer / authority

Host/admin settings are authoritative: only host/admin changes are applied.

CHANGELOG

AbsorptionEitrShield — Changelog

0.3.19

Changed

  • Reworked damage absorption logic to apply before vanilla HP reduction:
    • Shield now temporarily buffers HP by the absorbed amount and spends Eitr up-front, so the vanilla damage application results in the correct final HP in a single pass.
    • This removes the need for a secondary “forced kill” hit and prevents duplicate damage numbers.

Fixed

  • Removed visible “huge damage” (e.g. 999999 / 1,000,000) on deaths caused by the shield system.
  • Greatly reduced/avoided false kill-feed triggers in PvP kill-feed mods (e.g. PvP Tweaks) that react to HP hitting 0 during the damage event, since HP no longer dips to 0 when Eitr should save the player.
  • Kept /die command behavior vanilla: shield never absorbs /die damage in any mode.

0.3.18

Added/Changed

  • Initial attempt of “no second hit” architecture using pre-buffering approach.
  • Began removing next-frame kill invocation and artificial hit values.

Fixed

  • Improved stability around lethal scenarios by relying less on post-damage HP restoration and more on single-pass outcomes.

0.3.17

Changed

  • Improved death attribution for kill-feed mods by prioritizing a real Damage(HitData) path (with attacker info) before fallback death invocation, to preserve “last attacker” tracking.

0.3.16

Fixed

  • Corrected regression introduced by HP clamping (HP not allowed to hit 0 during shield processing):
    • Added explicit “clamp happened” tracking so lethal-hit detection remained accurate even when HP was forced to stay above 0.
  • Improved consistency of lethal damage handling so players can die properly when HP + Eitr < incomingDamage.

0.3.15

Fixed

  • Addressed immortality edge cases where lethal hits were incorrectly survived.
  • Added safeguards around lethal damage application:
    • Ensured lethal outcomes invoke death correctly (instead of leaving player at 1 HP permanently).
    • Ensured players respawn with proper base HP instead of staying stuck at 1 HP after death/respawn in some cases.
  • Reduced false kill reports from mods that detect “HP hits 0” by preventing HP from briefly dropping to 0 during shield math.

0.3.14 (baseline reference)

  • Working Eitr shield absorption with optional “recharge” behavior:
    • Shield activates when Eitr reaches its current max.
    • Shield deactivates when Eitr is drained to ~0 and only reactivates after full recharge.
  • Host-authoritative runtime configuration (clients cannot override host settings).