sighsorry-BossRules icon

BossRules

Forsaken powers overhaul, despawn abandoned bosses with offering refunds, hover an altar to see the offering and boss, rotate Forsaken Powers remotely, block duplicate summons, personalize boss stones, and pressure tames near bosses.

Last updated 4 hours ago
Total downloads 7226
Total rating 2 
Categories Mods Tweaks Enemies Server-side Client-side AI Generated Deep North Update
Dependency string sighsorry-BossRules-1.1.1
Dependants 7 other packages depend on this package

This mod requires the following mods to function

denikson-BepInExPack_Valheim-5.4.2351 icon
denikson-BepInExPack_Valheim

BepInEx pack for Valheim. Preconfigured with the correct entry point for mods and preferred defaults for the community.

Preferred version: 5.4.2351

README

BossRules

Forsaken powers overhaul, despawn abandoned bosses with offering refunds, hover an altar to see the offering and boss.
Rotate Forsaken Powers remotely, block duplicate summons, personalize boss stones, and pressure tames near bosses.


You can change the boss despawn range and delay in the config.


Getting away from the boss with also count for despawn.


If you get back in time, despawn would be canceled. If the boss does despawn offerings would be refunded.

Highlights

  • Edit boss altars without rebuilding locations by hand.
  • Block duplicate boss summons from both altars and CreatureSpawner.
  • Despawn abandoned bosses and optionally refund real altar offerings.
  • Pressure tamed creatures near bosses so boss arenas stay dangerous.
  • Give each player their own boss stone unlock state.
  • Let players rotate unlocked Forsaken Powers remotely.
  • Rebalance Forsaken Power duration, cooldown, costs, regen, damage, armor, movement, skills, and tooltips.
  • Sync server YAML to clients through ServerSync.
  • Reload YAML while the game is running.

Why Use BossRules

BossRules focuses on the awkward parts of boss management that usually live across several systems:

  • Altars can be edited by prefab name with generated reference data.
  • Boss duplicate protection keeps respawn timers honest instead of letting cooldowns finish in the background.
  • Altar refunds are tied to actual altar-summoned bosses, not nearby world spawns.
  • Boss stones and Forsaken Powers can be customized without turning the mod into a general status-effect editor.
  • Dedicated servers remain the source of truth for synced rule files.

Generated Files

BossRules creates its files under:

BepInEx/config/BossRules/

Files:

  • BossRules.altar.yml: boss altar and boss item stand overrides.
  • BossRules.altar.reference.yml: generated reference for loaded boss altar and boss stone prefabs.
  • BossRules.yml: boss despawn and boss tamed pressure rules.
  • BossRules.forsakenPowers.yml: Forsaken Power stat edits in a DataForge-compatible row format.
  • sighsorry.BossRules.cfg: synced BepInEx feature toggles.

Server admins should edit the YAML on the server or host. Synced YAML is pushed to clients automatically. Optional BossRules.<Language>.yml or .json message translations are discovered recursively under BepInEx. The release package includes BossRules.English.yml as an editable translation template.

Boss Altars

BossRules.altar.yml supports compact altar entries:

  • prefab
  • enabled
  • offeringBowl
  • itemStands

Use the generated BossRules.altar.reference.yml to find real prefab names, item stand paths, and current altar values. Copy only the rows you want to override into BossRules.altar.yml.

When a location contains multiple OfferingBowl components, the generated reference writes one row per bowl with an offeringBowl.path. Single-bowl locations keep the compact pathless format. Existing pathless overrides remain compatible and select the first bowl, while an explicit missing path skips that row.

BossRules intentionally does not own general location editing, object drops, runestone pins, or vegvisir rewards.

Boss Rules

BossRules.yml controls runtime boss behavior:

  • despawn: default range/delay plus compact rows in prefab, despawnRange, despawnDelay, refunds format.
  • bossTamedPressure: a global rule for tamed creatures near bosses.

BossRules.forsakenPowers.yml controls selected Forsaken Power stat edits. Its top-level list is intentionally compatible with DataForge effects.yml rows.

Despawn rows use despawn.defaults when range or delay is omitted. Set despawnRange to 0 to disable despawn for one boss prefab.

despawn:
  defaults: 64, 90
  rules:
  - Eikthyr
  - Bonemass, 96, 120
  - Dragon, , 180
  - GoblinKing, 0
  - Fader, 128, 180, false

Refund values:

  • omit the fourth value for true
  • true: refund the actual altar offering when the boss was marked as altar-summoned
  • false: no refund

Refunds drop at the original OfferingBowl position when possible. Bosses from CreatureSpawner, SpawnSystem, or other world sources do not receive altar refunds just because they died near an altar.

Newly generated initial Queens in the Queen boss room and initial Frozen Kings in DN_Bossroom are protected from default automatic despawn until a living player approaches within the configured XZ despawn range and a height difference of at most 32m. Approach is checked once per second by the boss's network owner. It does not require opening the door, entering the room, line of sight, or combat: a nearby player outside a wall at the same height can release protection. After that first approach, the existing XZ-only range and countdown apply, without altar refunds. An explicit row for the boss in despawn.rules takes precedence, including before the first approach.

Initial provenance and first approach are saved on each boss ZDO, so they survive normal saves, reloads, and ownership changes. This applies to new Full/Ghost location or room generation, including resets; existing bosses with unknown provenance are not reclassified, and already missing bosses are not restored. Altar resummons keep their existing despawn and refund behavior. The approach checks must also be installed on clients that can own the boss.

Localization

BossRules includes English and Korean message translations. Add overrides in BossRules.<Language>.yml or .json; the file name uses Valheim's language name, for example BossRules.Korean.yml.

bossrules_message_despawn_start: "{name} will despawn in {seconds}s unless someone returns."
bossrules_message_despawn_reminder: "{name} will despawn in {seconds}s."
bossrules_message_despawn_canceled: "{name} despawn canceled."
bossrules_message_boss_tamed_pressure: "Tamed creatures near a boss are weakened."
bossrules_message_forsaken_power_rotate: "Rotate"

Embedded English is the fallback for missing message keys. Despawn names are resolved on the receiving client in this order: the client's current localized character name, its English localized name, then the prefab name.

The former localization: section in BossRules.yml is deprecated and ignored so older files still load; new default files no longer contain it.

Forsaken Powers

BossRules can rebalance selected SE_Stats fields for Forsaken Powers:

  • duration and cooldown
  • guardian power activation adrenaline gain through the synced config
  • stamina costs
  • block stamina flat cost and timed block bonus
  • outgoing damage
  • incoming damage modifiers
  • health, stamina, and eitr regen
  • carry weight
  • flat and percent armor
  • movement speed and jump height
  • skill levels
  • adrenaline and stagger gauge
  • vanilla status attributes such as SailingPower

BossRules.forsakenPowers.yml uses the same compact style as DataForge status effects:

- effect: GP_Eikthyr
  time: 31, 120
  staminaDrainModifier:
    run: -0.5
    jump: -0.5

- effect: GP_Moder
  time: 31, 120
  attributes: SailingPower
  stats:
    speedModifier: 0.1
    jumpModifier: 0, 0.2, 0

Modifier values use Valheim/DataForge-style factors. For example, -0.5 means 50% lower cost, 0.1 means +10%, and regenMultiplier: 2, 1, 1 means health regen x2 while stamina and eitr stay unchanged.

Vanilla vs BossRules Forsaken Powers

The table below compares vanilla GP_ effect rows from DataForge effects.reference.yml with the BossRules preset in BossRules.forsakenPowers.yml.

All seven default powers use time: 31, 120: 31 seconds of duration and a 120-second cooldown. Existing YAML files are preserved; edit their time entries to adopt these defaults.

Effect Vanilla effect BossRules effect
GP_Eikthyr time: 300, 1200
Stamina drain: run/jump/swim -0.6
time: 31, 120
Pickaxe damage 0.5
Stamina drain: run/dodge -0.5
Speed 0.1
Blunt: SlightlyResistant
GP_TheElder time: 300, 1200
Regen 1.3, 1, 1
Chop/pickaxe damage 0.6
time: 31, 120
Chop damage 0.5
Stamina drain: swim/sneak -0.5
Regen 2, 1, 1
Poison: SlightlyResistant
GP_Bonemass time: 300, 1200
Block 0, -5
Block stamina drain -1
Blunt/slash/pierce: SlightlyResistant
time: 31, 120
Block stamina drain -0.5
Block 0, -5
Armor 20, 0.2
Frost: SlightlyResistant
GP_Moder time: 300, 1200
SailingPower
Speed 0.1
Carry weight 300
Frost: Resistant
time: 31, 120
SailingPower
Stamina drain: jump -0.5
Carry weight 300
Jump 0, 0.2, 0
Farming/Fishing skill 25
Fire: SlightlyResistant
GP_Yagluth time: 300, 1200
Farming skill 25
Lightning: Resistant
Blunt/slash/pierce/chop/pickaxe/fire/frost/lightning/poison/spirit damage 0.1
time: 31, 120
Fire/poison/frost/lightning/spirit damage 0.1
Regen 1, 1, 2
Pierce: SlightlyResistant
GP_Queen time: 300, 1200
Regen 1, 1, 2
Sneak stamina drain -1
Poison: Resistant
time: 31, 120
Pierce/blunt/slash damage 0.1
Attack stamina drain -0.1
Slash: SlightlyResistant
GP_Fader time: 300, 1200
Adrenaline 1
Stagger -0.5
Attack damage None, 0
Fire: Resistant
time: 31, 120
Adrenaline 1
Stagger -0.5
Lightning: SlightlyResistant

Boss Stones

BossRules owns personalized boss stones and remote Forsaken Power selection.

  • Personalized Boss Stones: each player keeps their own unlocked boss stone powers.
  • Remote Forsaken Power Selection: players can rotate through unlocked powers without returning to the Start Temple.
  • Rotate Forsaken Power Shortcut: client-only shortcut for remote rotation.

Console commands:

  • bossrules:inspect bossstone
  • bossrules:bossstone reset <exactPlayerName>

Compatibility

BossRules is designed to sit beside DropNSpawn:

  • Use BossRules for boss altars, boss stones, Forsaken Powers, boss despawn, and boss tame pressure.
  • Use DropNSpawn for creature drops, object loot, spawners, and world spawn tables.
  • Use UsefulRunestones for pinless RuneStone global pins and Vegvisir rewards.

If another mod owns the same boss system, disable the overlapping BossRules feature in the BepInEx config.

GitHub

https://github.com/sighsorry1029/BossRules