V Rising
Install with App

Details

Latest version
1.0.0
Last Updated
First Uploaded
Downloads
9
Likes
0
Size
76KB
Dependants

Death Resistance

A configurable damage reduction buff that builds up as you die. It was built to let casual players keep having fun when "git gud" is not an option.

Each qualifying death grants a stack of damage reduction and restarts the timer, so the more you die, the less damage you take. Stacks build up to a limit the server sets, and they all expire together when the timer runs out. The clock runs in real time, so it keeps counting down while you are offline.

Protection covers creatures at or near your own level, not enemies far above you. PvP and sunlight are left out. Admins can change every one of these rules.

Install

Server: install BepInEx for V Rising and VampireCommandFramework 0.10.4 or later. Copy DeathResistance.Server.dll into the server's BepInEx/plugins folder and restart the server.

Players: no client mod or client dependencies are needed.

The release contains only the server DLL. Dependencies are not bundled.

Commands

Enter commands in game chat. The mod provides these six commands:

Command Permission What it does
.dr status All players Show your participation, current damage reduction, stacks and remaining time. Does not grant stacks or refresh the timer.
.dr settings All players Show configured reduction per death, duration, effective stack cap, protection/death restrictions and default participation. Read-only.
.dr on All players Opt in for future qualifying deaths. Does not grant stacks, refresh the timer or restore cleared stacks.
.dr off All players Immediately clear your resistance and opt out of future grants.
.dr config Admin List every setting name and its current value, including diagnostic logging.
.dr set <setting> <value> Admin Validate, save and apply one server setting without restarting.

Explicit on/off preferences persist across reconnects and server restarts. Changing the default does not override explicit player choices. Being On with zero stacks means participation is enabled, but protection has not yet been earned.

Admin settings reference

Use .dr set followed by a setting name and value. Setting names are case-insensitive. Use true or false for toggles, and a decimal point for fractional numbers. Defaults below are new-install defaults; .dr config shows your server's actual values.

Setting Default Allowed value / effect
EnabledByDefault true true/false: participation for players without an explicit on/off preference.
ReductionPerStack 10 0.01–100 additive percentage points, up to two decimal places.
LevelAllowance 3 Integer 0–1000: maximum source levels above the player. All lower levels qualify.
MaxStacks 0 Integer 0–10000. Zero means stack until 100% eligible-damage immunity.
DurationSeconds 3600 1–31536000 real seconds. Offline time counts.
ReduceSunDamage false true/false: reduce sun damage without a level check.
SunDeathsGrantStacks false true/false: sun deaths grant stacks and refresh the timer.
ReducePvpDamage false true/false: reduce PvP damage subject to the source-level check.
PvpDeathsGrantStacks false true/false: completed PvP deaths grant stacks and refresh the timer.
PvpDowningsGrantStacks false true/false: PvP downings grant a stack; the same episode cannot grant another on death.
OnlyVBloodDeathsGrantStacks false true/false: only V Blood deaths grant/refresh; overrides sun/PvP grants without restricting damage coverage.
LogDamage false true/false: log damage, health changes, lethal/downed attribution, release outcomes and award/rejection decisions.

Examples (each changes one setting):

.dr config
.dr set ReductionPerStack 15
.dr set LevelAllowance 5
.dr set MaxStacks 5
.dr set DurationSeconds 1800
.dr set OnlyVBloodDeathsGrantStacks true
.dr set EnabledByDefault false
.dr set LogDamage true
.dr set LogDamage false

Reduction, cap, level allowance and damage-coverage changes affect existing resistance immediately. Lowering the cap discards excess stacks. Duration changes affect the next qualifying death; they do not rewrite an existing expiry. Grant toggles affect future events. Turning default participation off clears resistance for players without an explicit preference. Invalid values are rejected.

There is no .dr command to grant stacks, reset another player or bypass eligibility.

Settings are saved to BepInEx/config/DeathResistance.cfg. See SPEC.md for the full behavior specification. The .dr settings command and shortened .dr status require the updated server build; see VERIFICATION.md for deployment status.

Persistence and removal

State is saved under <world save>/DeathResistance/players.json, with an atomic-write backup. Back up that folder along with your world. Excluded deaths leave existing resistance and its timer unchanged.

To uninstall, stop the relevant process and remove its Death Resistance DLL. The world contains no custom Death Resistance prefab IDs. Player data can be retained for reinstalling; its timer still expires normally while the mod is absent.

Status text distinguishes participation from earned protection: On — awaiting a qualifying death means participation is enabled with zero stacks. Settings use blue labels, green On, red Off, and gold numeric values. EnabledByDefault defaults to true; explicit player choices remain respected.

Each qualifying completed death sends that player one chat line with their new total damage reduction, stack count and a .dr status tip. This also confirms timer refreshes at the stack cap. Excluded deaths and opted-out players receive no grant announcement.

Admin diagnostics: .dr set LogDamage true logs incoming/outgoing damage, prevented damage, stacks, source eligibility and levels. DR HEALTH records net health change for the entire stat-change batch, including any simultaneous healing or other game effects. Disable with .dr set LogDamage false. Default: false.

Dracula: accepted chamber releases award a stack using the attacker that caused the downing. Ordinary downings and revivals do not count as completed deaths.

Thanks

Special thanks to Lomack.

Thunderstore development is made possible with ads. Please consider making an exception to your adblock.