EasyVitals

v1.0.0·Updated 2026-09-17

[AI-generated] Character values: item weight x0.25, food/potion duration x5, map x3, boss power x2, rested x3, 5s resting, -2% gear penalty, full food effect. Client-only, no server sync.

About this mod Machine translation

EasyVitals

AI generated statement: This module is written by the AI ​​agent (WorkBuddy) under the clear needs and itemized acceptance of the user;

Functional design, real-device testing and release decisions are all led by users.

Character and gameplay values. Split from EasyQoL according to functional purposes, it is a pure client module.

Features (9 items)

| # | Function | Default | Configuration Section |

| --- | --- | --- | --- |

| 1 | Item weight multiplier | 0.25 (original 25%) | 1 - Item Weight |

| 2 | Food Duration Multiplier | 5x | 2 - Food Duration |

| 3 | Potion/consumable effect duration | 5 times (automatically skips "cooling" effects) | 3 - Potion Duration |

| 4 | Map Discovery reveal radius | 3x | 4 - Map Discovery |

| 5 | Boss power duration | 2x (20-minute cooldown unchanged) | 5 - Boss Power Duration |

| 6 | Rested buff duration | 3 times | 6 - Rested Duration |

| 7 | "resting time" waiting time | 5 seconds (original 20 seconds) | 7 - Resting Time |

| 8 | Equipment movement speed penalty is unified | -2% | 8 - Equipment Speed ​​|

| 9 | Food Full Effect | On | 9 - Food Full Effect |

The equipment maintenance group (durability/range repair/inbound automatic repair) is not included in this module, see EasyGear.

Configuration

BepInEx/config/easyvitals.client.only.cfg

⚠️ You must restart the game after making changes - BepInEx only reads the configuration once in the plug-in Awake, and manual changes in the game will be overwritten by the old memory value.

Implementation points

  • 1 / 2 / 3 / 8 Use ObjectDB prefab data rewriting (hanging on ObjectDB.Awake, ZNetScene.Awake).

Recalculate using "original value × multiplier", so repeated calls are idempotent.

  • 4 Take the prefix of Minimap.Explore (zoom in to reveal radius parameter).
  • 6 / 7 Determine by type (SE_Rested / SE_Cozy) in db.m_StatusEffects, not by name ——

Because the prefab names of these two do not match the class names (the prefab of SE_Cozy is called SE_Resting).

  • 9 Use the postfix of Player.GetTotalFoodValue to make up for the attenuation of Pow (remaining proportion, 0.3).

⚠️ Don’t change SE_Rested.m_ttl - Player.UpdateBaseValue will recalculate it every time

(m_ttl = m_baseTTL + (Comfort Level-1) × m_TTLPerComfortLevel), any changes will be overwritten immediately.

This module changes those two "source fields", so any comfort level is N times more accurate.

online

Pure client. Neither the host nor other players need to install it.

No NetworkCompatibilityAttribute declared, no Jotunn referenced, no ServerSync/CCS embedded.

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
EasyVitals-1.0.0.zip
File size
13.2 KiB