CombatAdjustments
Shield stagger, durability and tower block-armor rework, with feast stats, sailing tweaks and boss HP scaling. Settings are set on the server and follow every client.
About this mod Author’s original text
Combat Adjustments — Shield Rework
BepInEx plugin implementing the shield stagger / durability / tower block-armor
rework described in docs/shield-rework-requirements.md.
What it does
| Change | Towers | Round shields | Bucklers |
| --- | --- | --- | --- |
| Flat stagger grant (equipped) | yes (Flametal +70 max) | yes (Flametal +45 max) | yes (Carapace +20 max) |
| +5% block armor (ceil) | yes | no | no |
| +20% durability (ceil to 5) | yes | yes | no |
| Orange tooltip Stagger: +N | yes | yes | yes (if grant > 0) |
Tower grants are seeded from post-block leftover against each shield's native
medium hit (normalized to Flametal +70), not block armor alone. Round/buckler
grants use block-armor ratios from their anchors, then snap to the nearest 5.
Every grant is overridable in BepInEx/config (client) or config/bepinex (dedicated server).
Two-handed melee
- Greatswords, battleaxes, and sledges receive Balanced hyper armor: it
begins when the real attack animation begins and ends after that swing's hit
event. During that window stagger gain is blocked. Incoming damage and
knockback are unchanged. Tooltips show orange Hyper-armor.
- Greatsword primary-chain swings deal 1.5x stagger.
- Greatswords, battleaxes, and sledges deal +10% damage (bonus rounded down
per damage type; reflected on weapon tooltips). Atgeirs are unchanged.
- Two-handed club ground slams (Stagbreaker, Iron Sledge, Demolisher) grant
adrenaline per enemy hit, matching swing attacks (vanilla pays area
attacks once per slam).
Feasts
Biome feasts unlock after the previous biome boss instead of that biome's
own boss (Plains after Moder, not Yagluth). Sailor's Bounty still needs a
serpent. See docs/feasts.md.
Every feast also gains extra food stats (configurable; defaults below). Tooltips
and already-eaten feasts pick up the new numbers.
| Feast | Extra health | Extra stamina | Extra eitr |
| --- | --- | --- | --- |
| Most feasts | +10 | +10 | — |
| Sailor's Bounty | +15 | +15 | — |
| Mistlands | +10 | +10 | +7 (33 → 40) |
| Ashlands | +10 | +10 | +12 (38 → 50) |
| Deep North | +10 | +10 | +17 (43 → 60) |
Boss unlocks are not configurable.
The Deep North eitr bonus started as an extrapolation and was confirmed against
an in-game dump on 1.0.7 (vanilla 43). The dump's FOODS section prints each
feast's vanilla values beside its current ones — see
docs/feasts.md.
Sailing
Calm wind (0–60%) keeps the vanilla intensity ramp (0.287 → 0.7). Above
60% the factor keeps climbing linearly to 2.0 at full storm. Ocean
ThunderStorm chance is raised from ~7% to 21%. See
docs/sailing.md.
Difficulty scaling
Effective enemy HP keeps scaling with nearby players past vanilla’s 5-player
cap (+30% per extra player). Enemy damage dealt stays capped at 5. Toggle with
Difficulty.EnableUncapHealthScaling (default true). See
docs/boss-hp-scaling.md.
Install
- Requires BepInEx 5 for Valheim.
- Requires MushroomSync.dll, the shared server-authoritative sync plugin.
This mod declares a [BepInDependency] on it and will not load without it.
- Build: dotnet build src/CombatAdjustments.ShieldRework -c Release — this also
builds MushroomSync, which it references.
- Copy both into Valheim/BepInEx/plugins:
- src/CombatAdjustments.ShieldRework/bin/Release/CombatAdjustments.ShieldRework.dll
- MushroomSync/bin/Release/MushroomSync.dll
Or take the release's MushroomMods-plugins.zip, which carries both.
- Launch once to generate BepInEx/config/Abortipus.CombatAdjustments.ShieldRework.cfg
(or place server settings in config/bepinex/Abortipus.CombatAdjustments.ShieldRework.cfg).
Config
Config is read from both locations (game root relative):
| Path | Used by |
| --- | --- |
| BepInEx/config/Abortipus.CombatAdjustments.ShieldRework.cfg | Client — primary load/save path |
| config/bepinex/Abortipus.CombatAdjustments.ShieldRework.cfg | Dedicated server — primary load/save path |
On clients, if both files exist, config/bepinex/ values overlay the client file (overlay wins).
Dedica
Install & use Install: BepInEx plugin
- The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
- 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.
- Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
- 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.
Install these first, or the mod will not work: