DropNSpawn

1.3.2 ✓ Scan successful

Easy way to configure all drops, spawns and events(raid) by reference system. Prevent high tier mobs spawning on low tier biomes. Make dungeon creaturespawners respawn. Multiple trophies and stacked drop instantly from creatures with linear scaling.

Client & Server
Dependencies

DropNSpawn

Configure object and creature drops, object loot, spawners, and world spawning. Add stacked drops, level-scaled trophies, VNEI support, and location-scoped spawner rules.

Domains

Domain What it controls
character CharacterDrop loot, one-per-player drop counting, and drop-in-stack
object Containers, pickables, pickable items, fish, destructibles, mine rocks, trees, and object drop tables
spawner SpawnArea and CreatureSpawner tables, intervals, caps, level ranges, and location-scoped spawner rules
spawnsystem World SpawnSystem rows, biome rules, time-of-day rules, global-key gates, and extended spawn data

spawnsystem is a full replacement domain: the loaded rows become the live world spawn table. Keep every spawn row you still want.

Location

DropNSpawn no longer owns a user-editable DNS_location.yml domain. Boss altar, altar ItemStand, same-boss duplicate blocking, boss despawn, and boss-tamed pressure rules live in the standalone BossRules mod. DropNSpawn keeps internal location lookup helpers for object and spawner locations: selectors.

RuneStone global pins and Vegvisir rewards live in the standalone UsefulRunestones mod.

Character

  • configure creature loot
  • merge multiple conditional loot rows for the same creature
  • VNEI-compatible character drop display
  • drop creature loot in one stack when configured
  • onePerPlayer can count nearby living players within the configured range

Object

  • chest loot replacement
  • tool-tier and health changes for trees and rocks
  • tree or rock drop changes
  • pickable loot changes (bone piles, fish, berries)
  • destructible health and spawn-on-destroy changes
  • DNS_object.locations.reference.yml exists because many objects are dependent on locations

Spawner

  • change spawn tables
  • change spawn intervals, trigger distance, caps, level range, respawn time
  • apply location-scoped spawner overrides with top-level locations
  • ExpandWorldData compatible
  • DNS_spawner.locations.reference.yml exists because many spawners are dependent on locations

SpawnSystem

The vertical lines in the spawner image are world SpawnSystem checks.

  • biome/world spawn rules
  • global-key-gated spawning
  • time-of-day spawn rules
  • world-level conditional behavior
  • ExpandWorldData compatible
  • SpawnSystem rows and event spawns use the same flat spawnSystem block; nested spawn conditions and modifiers blocks are not supported.
  • This domain is authoritative and replaces the live SpawnSystem table with the rows you define.
  • Above image explains how Valheim world spawning works.

Workflow

  1. Open BepInEx/config/DropNSpawn/.
  2. Use the generated .reference.yml files to find real prefab names and current values.
  3. Copy only the rows you want to change into DNS_<domain>.yml or DNS_<domain>_*.yml.
  4. Save the YAML file. DropNSpawn reloads loaded YAML at runtime.

Generated samples live in BepInEx/config/DropNSpawn/examples/. They are safe examples until you copy them into an active override file or rename them to a loaded DNS_<domain>_*.yml file.

YAML Files

Loaded override files:

  • DNS_<domain>.yml
  • DNS_<domain>.yaml
  • DNS_<domain>_*.yml
  • DNS_<domain>_*.yaml

Generated helper files:

  • DNS_<domain>.reference.yml shows current game data and prefab names.
  • DNS_object.locations.reference.yml shows which location roots contain object prefabs.
  • DNS_spawner.locations.reference.yml shows location context for spawner rules.
  • DNS_<domain>.full.yml is an exhaustive scaffold written by dns:full; it is not loaded.

Use one primary file per domain when possible. Supplemental files are useful for splitting large configs by biome, progression tier, or feature.

Reference Updates

Reference files are generated lookup snapshots. Missing reference files are created automatically, and existing reference files are updated automatically when their source game data changes.

Notes:

  • DNS_spawnsystem.reference.yml is generated from vanilla and upstream mod SpawnSystem data. DNS_spawnsystem.yml full overrides are not used as reference source data.
  • DNS_object.locations.reference.yml and DNS_spawner.locations.reference.yml are generated lookup files and are also kept up to date automatically.

Console Commands

  • dns:reference [object|character|spawner|spawnsystem|all] Regenerates reference files.
  • dns:full [object|character|spawner|spawnsystem|all] Writes non-loaded full scaffold files.
  • dns:inspect spawner Shows the current or nearest spawner target and resolved location selector context.

Useful Config

Most server-facing settings are synced from the server.

Domain toggles live under 4 - Domains:

  • Enable Object Overrides
  • Enable Character Overrides
  • Enable Spawner Overrides
  • Enable SpawnSystem Overrides
  • Enable Event Overrides

General and character settings include:

  • Lock Configuration
  • Default SpawnArea Max Total Spawns
  • Default zero CreatureSpawner respawn time minutes
  • OnePerPlayer drop check range
  • character loot system
  • disable DNS character loot scaling when CLLC is loaded
  • chance for additional loot per star for creatures
  • chance for additional loot per star for bosses
  • global drop in stack
  • global drop in stack blacklist
  • global trophy level multiplier
  • global trophy level multiplier blacklist

character loot system = CalculateChance keeps each successful non-trophy character-drop chance intact and scales its final item amount by the configured per-star chance only when that drop's levelMultiplier is true. Trophy drops use that linear scaling whenever global trophy level multiplier is on, regardless of their levelMultiplier value.

disable DNS character loot scaling when CLLC is loaded defaults to On. It does not rewrite the config values shown for DNS loot scaling; when Creature Level & Loot Control is installed, DNS treats character loot system, both per-star loot chance options, and global trophy level multiplier as inactive at runtime so CLLC can own loot quantities. YAML overrides, drop-in-stack, instant loot, and OnePerPlayer range still work.

Default zero CreatureSpawner respawn time minutes defaults to 0 and accepts 0~60; 0 disables the option. It changes only CreatureSpawner components whose current respawnTimeMinutes is 0; YAML creatureSpawner.respawnTimeMinutes values keep priority.

Event settings include:

  • Event scheduling mode
  • Default event player base
  • Minimum distance between events
  • Event duration multiplier
  • Random event chance
  • Random event interval

Event scheduling mode supports Vanilla (one active event and one server-wide check), MultipleGlobal (multiple active events and one server-wide check), and MultiplePerPlayer (multiple active events with one independent check per player). Standalone event checks follow the selected global or per-player mode.

Event duration multiplier accepts 0~3. Positive values scale event durations that are not explicitly set by YAML settings[2]; 0.5 halves them, 1 keeps them unchanged, and 2 doubles them. 0 disables every event whose effective duration after YAML is positive, while duration-0 events remain enabled.

Default event player base can globally treat events without YAML conditions.playerBase as Off, Away, Near, or AwayAndNear. YAML event overrides keep priority.

Boss altar rules, same boss duplicate blocking for altars and CreatureSpawner, per-player boss stones, remote Forsaken Power selection, boss despawn, and boss tamed pressure live in BossRules.

Compatibility

If another mod fully owns the same system, disable the overlapping DropNSpawn domain instead of stacking both.

  • VNEI: DropNSpawn character drops are exposed for normal lookup.
  • MonsterDB: overlaps with character and spawnsystem.
  • Drop That!: overlaps with object and character.
  • Spawn That!: overlaps with spawner and spawnsystem.
  • Expand World Spawns: overlaps with spawnsystem.

Helpful Mods

  • ESP for spawners, spawn points, and object info
  • XRayVision for object components
  • Infinity Hammer for placing and removing test objects

GitHub

https://github.com/sighsorry1029/DropNSpawn


Threads

No threads yet.

Log in to post a thread.

Manual installation instructions
1

Install BepInEx

BepInEx is the mod loader required to run mods in Valheim.

Download BepInEx 5.4.2333 · View mod page

Check out the mod page for detailed installation instructions.

2

Install DropNSpawn

This mod needs to be installed on both your client and server.

Download DropNSpawn 1.3.2

Extract the ZIP and place the file(s) into the BepInEx/plugins/ folder inside your Valheim game folder.