You are viewing a potentially older version of this package. View all versions.
sighsorry-CreatureManager-1.2.2 icon

CreatureManager

Add 32 combat modifiers and launch live boss hunt events across dungeons and the open world. Clone and configure creatures, attacks, AI, equipment, appearances, and textures; inspect resistances and scale difficulty by biome, distance, or preset.

Date uploaded 9 hours ago
Version 1.2.2
Download link sighsorry-CreatureManager-1.2.2.zip
Downloads 528
Dependency string sighsorry-CreatureManager-1.2.2

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

CreatureManager

Add 32 combat modifiers and launch live boss hunt events across dungeons and the open world. Clone and configure creatures, attacks, AI, equipment, appearances, and textures; inspect resistances and scale difficulty by biome, distance, or preset.

Showcase

Combat Modifiers

Creatures displaying multiple modifier icons

Creatures roll modifiers independently and display their active effects beneath their nameplates. Levels above 3 appear as a star followed by the level number.

Offense

Icon Modifier Effect with generated Global defaults
Enraged icon Enraged Deals 15% more damage.
Fire icon Fire Adds Fire damage equal to 20% of the original hit.
Frost icon Frost Adds Frost damage equal to 10% of the original hit.
Lightning icon Lightning Adds Lightning damage equal to 10% of the original hit.
Spirit icon Spirit Adds Spirit damage equal to 5% of the original hit. Against players, its Spirit damage over time bypasses armor and resistance.
Armor Piercing icon Armor Piercing Ignores 30% of player body armor.
Staggering icon Staggering Adds 60% normal-hit and block-stagger buildup.
Undodgeable icon Undodgeable Ignores player dodge invulnerability but deals 25% less damage. Blocking and parrying still work.

Defense

Icon Modifier Effect with generated Global defaults
Armored icon Armored Takes 30% less damage.
Deathward icon Deathward Cancels lethal damage and restores 20% of max health. Has a 10s cooldown and up to 3 activations.
Regenerating icon Regenerating Heals a configurable share of max health per second, capped at 20 health per second by default. Rate defaults are 1% for Global creatures, 0.2% for bosses, and 0.5% for Enforcers.
Reflection icon Reflection Has a 50% chance on a direct melee hit to reflect 10% of the health actually lost, bypassing defense and resistance. Capped at 25 health per activation by default.
Vortex icon Vortex Has a 50% chance to negate projectile damage, push, stagger, and status effects.
Adaptive icon Adaptive Remembers the dominant hit type for 5s and reduces matching damage by 50%.
Unflinching icon Unflinching Immune to normal-hit and perfect-parry stagger.
Chameleon icon Chameleon While alerted, gains one rotating damage-type immunity and switches it every 10s.

Affliction

Icon Modifier Effect with generated Global defaults
Exposed icon Exposed Has a 50% chance to make the player take 20% more damage for 5s.
Weakened icon Weakened Has a 50% chance to make the player deal 20% less damage for 5s.
Withered icon Withered Has a 50% chance to reduce healing received by 50% for 5s.
Crippling icon Crippling Has a 50% chance to reduce movement speed and jump force by 50% for 5s.
Disruptive icon Disruptive Has a 50% chance to reduce stamina and Eitr recovery by 50% for 5s.
Adrenaline Drain icon Adrenaline Drain Has a 50% chance to remove 50% of current adrenaline and reduce adrenaline gain by 50% for 5s.
Corrosive icon Corrosive Has a 50% chance to increase durability loss to equipped gear by 50% for 5s.
Toxic Death icon Toxic Death On death, poisons players within 4m for 30% of their max health.

Special

Icon Modifier Effect with generated Global defaults
Swift icon Swift Increases movement speed, acceleration, and turning speed by 40%.
Attack Speed icon Attack Speed Increases animation speed by 30%; attack intervals become 76.92% of normal.
Vampiric icon Vampiric Heals for 30% of health removed by direct hits; delayed damage over time is excluded.
Reaping icon Reaping Nearby kills heal 5% of base max health (up to 20 activations) and grant +10% max health, +1% damage, and +5% size per kill, capped at +200%, +20%, and +50%. No new size is gained in dungeons.
Blink icon Blink Teleports near its player target within 16m every 6s. By default, Blink and its extended attack range unlock 3s after the creature becomes alerted, even if no attack could start during that time.
Omen icon Omen Has a 50% chance when killed directly by a player or by unambiguously player-attributed poison, fire, or spirit damage over time to force an Enforcer check; cooldown blocking follows the server setting.
Juggernaut icon Juggernaut Player hits have at least 150 push force. An actual push starts a 5s cooldown, and the creature is immune to attack push.
Blamer icon Blamer Below 75% health, flees and adds 0.5 Karma per second up to 45 lifetime Karma. When exhausted, the modifier, icon, and flee behavior end.

Modifier icons appear on creature and boss HUDs. The Valheim Compendium contains a CreatureManager page with modifier names, icons, and descriptions using the active global values.

When using WackyEpicMMOSystem, 1 - General → Adjust EpicMMO LevelBar Position is a server-synchronized switch, On by default. It places regular creature level labels at (70, -15), including recreated labels, without editing EpicMMO's configuration. This displayed position takes priority over EpicMMO's configured coordinates. Off restores the position recorded before adjustment. Boss, player, and mount HUDs are unchanged. The switch applies live and works independently of CreatureManager's level and modifier settings; clients without EpicMMO and dedicated servers do not adjust UI.

In-game Tools

Defensive modifier entries in the Compendium

The in-game Compendium documents defensive modifiers and their exact behavior.

Affliction modifier entries in the Compendium

Affliction details are available in the same localized Compendium without leaving the game.

Creature resistance inspection

While sneaking, inspect a creature to view its effective resistances, weaknesses, and immunities beneath the target's nameplate.

Combat Modifiers gifs

Offense and Defense

Spirit modifier adding Spirit damage

Spirit adds Spirit damage to the creature's attacks; against players, its damage over time bypasses armor and resistance.

Undodgeable modifier bypassing a dodge

Undodgeable attacks ignore dodge invulnerability, while blocking and parrying remain effective.

Deathward modifier preventing a lethal hit

Deathward cancels a lethal hit and restores part of the creature's maximum health.

Reflection modifier returning melee damage

Reflection returns part of the creature's actual health loss to a direct melee attacker.

Vortex modifier negating a projectile

Vortex can negate a projectile hit together with its damage and secondary effects.

Unflinching modifier preventing stagger

Unflinching prevents stagger from normal hits and perfect parries.

Afflictions

Affliction modifier icons and duration counters

Timed Afflictions use distinct icons and counters so their remaining duration stays readable in combat.

Special

Blink modifier teleporting toward a target

Blink teleports the creature near its target to close distance quickly. Blink Alert Grace Period (s) delays Blink and its extended attack range for 3 seconds after the creature becomes alerted by default; the timer still expires when no attack can start.

Omen modifier triggering an Enforcer check

Omen can request an Enforcer encounter when the affected creature is killed directly by a player or by poison, fire, or spirit damage over time attributed unambiguously to a player.

Juggernaut modifier producing heavy knockback

Juggernaut turns successful hits into heavy knockback while resisting attack push.

Blamer modifier raising regional Karma

Blamer flees and raises regional Karma once its health drops below the trigger threshold, then expires when its Karma budget is exhausted.

Live Enforcer Hunts

Regional Karma display

Killing creatures raises regional Karma, which can strengthen future spawns and trigger Enforcer encounters.

Black Forest dungeon Enforcer encounter

Karma accumulates faster in dungeons, so stay alert.

Swamp Enforcer encounter

Outdoor and dungeon Enforcer encounters can be configured separately in karma.yml, including guaranteed bonus loot.

Mountain Enforcer encounter

Enforcers spawn at higher levels, are more likely to carry modifiers, and may bring minions that hunt players down.

Creature Cloning and Customization

Existing creatures can be modified or cloned. For advanced examples, install MonsterLabZ and see creatures.sample.yml and attacks.sample.yml.

The following custom bosses were created with CreatureManager and MonsterLabZ.

Bonebeard custom creature

Bonebeard is a melee boss who infuses every attack with poison.

Vincent custom creature

Vincent the Cunning is a ranged boss who fires a variety of projectiles.

Root Witch custom creature

Root Witch is a spellcaster boss who casts a variety of spells.

Highlights

  • Clone or edit vanilla and modded creature prefabs.
  • Configure selected Character and Humanoid fields, equipment, appearance, scale, and textures.
  • Clone and tune monster attack prefabs, including damage, animation, projectile, AI range, and attack status effects.
  • Clone projectile prefabs and override Projectile.m_spawnOnHit, weighted random on-hit spawns, or SpawnAbility.m_spawnPrefab without duplicating their remaining component state.
  • Build reusable BaseAI and MonsterAI presets, or borrow AI directly from another creature prefab.
  • Add and edit factions without mirroring unrelated game systems.
  • Define weighted levels for global, boss, biome, group, and individual prefab rules.
  • Scale health, damage, modifier chance, and visuals by level or world distance.
  • Roll 32 combat modifiers across Offense, Defense, Affliction, and Special groups.
  • Add regional Karma progression and configurable Enforcer encounters.
  • Inspect loaded creatures, attacks, AI, loadouts, projectiles, textures, and level visuals through generated references.
  • Hot-reload YAML and server-owned PNG textures; connected clients cache and apply the authoritative files automatically.

Getting Started

  1. Open BepInEx/config/CreatureManager after the first launch.
  2. Find the target prefab in a generated reference file.
  3. Copy the relevant entry or name into the matching active YAML file.
  4. Change only the fields you need.
  5. Save the file. Most YAML and texture changes reload automatically.

Saving an active YAML file updates synchronized templates and global rules without a restart. Already loaded creatures keep their creature fields, AI, equipped attack data, and completed level and modifier state; existing Enforcers keep their identity, level, loot, and modifiers. Creature GameObjects instantiated after the reload use the current templates; this includes persistent creatures loaded again after a zone unload. Projectiles and ragdolls are separate runtime objects, so ones created after the reload also use current templates even when their source creature already existed. Faction relationships, Karma economy and encounter checks, server localization, and shared texture visuals are live global or visual exceptions. Changing clonedFrom for an already registered clone requires a restart.

The generated YAML headers are the schema reference. This README intentionally does not duplicate their field-by-field examples.

Every modifier tuple requires chance first. Later values form an optional trailing suffix: stop after the last value you want to override. Omitted values inherit through the normal rule chain and otherwise use runtime defaults. Explicit 0 is a supplied value subject to normal field validation, while empty interior slots such as 10, , 5 are invalid.

Configuration Files

File Purpose
creatures.yml Clone and edit creatures, humanoid loadouts, appearance, scale, textures, and AI assignment.
attacks.yml Clone and edit monster attack item prefabs.
creatures.sample.yml Inactive creature examples generated on the first launch. Copy selected entries into an active creature file, or rename it to creatures_sample.yml to activate it.
attacks.sample.yml Inactive attack examples generated on the first launch. Copy selected entries into an active attack file, or rename it to attacks_sample.yml to activate it.
projectile.yml Clone projectile prefabs and override fixed or weighted-random on-hit spawns and spawn-ability prefab references.
ai.yml Override same-name creature AI directly or define uniquely named reusable AI presets.
factions.yml Define and edit factions. This domain is intentionally single-file.
levels.yml Configure level weights, stat scaling, distance scaling, visuals, and modifiers.
karma.yml Configure regional Karma and Enforcer encounters.
localization/<Language>.yml Define server-authoritative localized text using Valheim language names such as English.yml and Korean.yml.
textures/ Store top-level PNG files used by creature texture overrides. The server synchronizes only files referenced by active creature definitions; clients keep verified SHA-256 content in cache/synced-textures. Release packages install the bundled cm_*.png samples here as ordinary files; the DLL does not generate them.

The creature, attack, projectile, AI, and level domains load both .yml and .yaml base or split files, such as creatures.yml, creatures.yaml, and creatures_*.yaml. The generated creatures.sample.yml and attacks.sample.yml names do not match those active patterns, so the examples remain inactive. Copy selected entries into the active files, or install MonsterLabZ and rename them to creatures_sample.yml and attacks_sample.yml to activate the complete sample set. Bonebeard, Vincent, and Root Witch require MonsterLabZ. Vitrfell uses the packaged cm_boar2.png texture. Faction and Karma configuration intentionally accept only the single canonical files factions.yml and karma.yml.

Install the package's BepInEx folder too, including on dedicated servers that supply referenced PNGs to clients. DLL-only Debug updates do not install sample PNGs. Give personal texture replacements a separate filename, because package updates can replace bundled files. Existing configuration and sample YAML files are not rewritten: when adopting the renamed PNGs, update old texture references such as boar2 to cm_boar2, or retain the matching old PNGs.

Generated References

File Contents
creatures.reference.yml Compact loaded creature information.
creatures.full.yml Full creature scaffold generated on demand.
attacks.reference.yml Loaded monster attack prefab candidates.
ai.reference.yml Loaded creature AI values and reusable source prefab names.
creatureLoadout.reference.txt Likely creature and NPC equipment prefabs.
projectile.reference.yml Projectile, AOE, and spawn-ability candidates, their supported override fields, and reference-only usedByAttacks metadata.
textures.reference.txt Loaded Texture2D names grouped by source.
levelVisual.reference.yml Vanilla LevelEffects profiles generated on demand.

References refresh automatically after Valheim's prefab databases are ready and only rewrite when their generated content changes. Treat them as discovery output rather than active configuration.

Core Systems

Creatures, Attacks, and AI

Creature definitions can modify an existing prefab or clone one with clonedFrom. An AI definition named after a loaded MonsterAI or AnimalAI creature applies directly to that prefab; a unique AI name remains a reusable preset and can use copyFrom for its baseline. A creature-level ai: assignment is only needed to select a reusable preset or borrow another creature prefab's AI, and takes priority over same-name direct application. Clones can also use cloned attacks, custom factions, humanoid equipment, and local texture overrides.

The supported surface is intentionally narrower than a full prefab database dump. It concentrates on fields useful for monsters and customizable NPCs while leaving drop-table editing, spawn tables, player prefabs, and large effect graphs to other domains or mods.

Levels and Progression

Level rules can target broad defaults or narrow content: global rules, bosses, biomes, named groups, and individual prefabs. Built-in biome presets provide a starting point, while explicit YAML rules replace only the values you choose.

The synchronized [2 - Levels] option Enable Level System accepts:

Value Automatic level assignment Stat, distance, scale, and modifier rules
On (default) CreatureManager level weights, biome presets, and Karma/Enforcer level bonuses Enabled
Vanilla Keep the level assigned by the game or another mod Enabled, using that actual level
Off Keep the level assigned by the game or another mod Disabled

Existing On/Off config values remain valid. With Vanilla, Biome Level Preset, Bosses Follow Biome Level Preset, and YAML level weights do not assign levels. Biome/group/prefab health, damage, per-level and distance multipliers, visual scale, and modifiers still follow the normal rule and spawn-source restrictions; the three modifier switches remain independent. Karma tracking and Enforcer encounters follow Karma System Mode, but their level bonuses are skipped. Loot settings remain independent. Explicit command levels (including cm:spawn) still work. Switching modes does not reroll or reset completed level/stat/modifier state on existing creatures; test automatic level assignment with new spawns.

Vanilla selects the source of levels, not a complete vanilla balance preset. The default Global.damagePerLevel in levels.yml remains 0.25, while vanilla uses 0.5. Change it to 0.5 if you want the vanilla per-star damage progression; other matching rules and modifiers still apply.

In Vanilla mode, if no matching rule supplies scalePerLevel, creatures use their prefab's original level sizes, including in dungeons and on saddle-able creatures. Level one and levels without a prefab size entry leave the current size alone. An explicit 0 keeps the original size without star growth; a positive value uses CM's existing size formula and dungeon/saddle restrictions. Color-state cycling remains enabled. Prefabs without level-size setups receive no automatic CM size adjustment when the rule is omitted.

New default YAML files leave Global scalePerLevel: 0.1 as a commented example and keep Boss scalePerLevel: 0.1 active. In On mode, an omitted scale rule still means no star-size increase, so new default files also omit Global size growth in that mode; uncomment the example to enable it. Existing YAML files are never rewritten: an existing Global scalePerLevel: 0.1 remains an explicit override until removed or commented. This does not migrate stored modifier sizes or automatically undo scale changes already made to loaded creatures.

Levels can control weighted star distribution, health, damage, visual scale, distance scaling, and modifier selection. damagePerLevel replaces vanilla's 50% monster damage growth per level: for example, damage: 1 and damagePerLevel: 0.2 make a level 6 creature deal 2x level-1 damage to character targets before distance, multiplayer, and modifier scaling. Vanilla level visual states rotate when a creature exceeds the visual states supplied by its prefab.

CreatureManager is spawn-aware. Natural hostile spawns receive the complete matching rule, while breeding, eggs, grow-up transitions, tamed restores, Blood Magic summons, and explicit console spawns preserve or restrict values according to their lifecycle instead of blindly rerolling every creature initialization.

FrozenKing_p2 is protected because its health drives the seven-Aspect encounter. CreatureManager skips level/stat scaling, the creature health override (including regeneration time), and all modifiers for this exact prefab, and leaves incoming encounter damage unchanged. cm:spawn accepts it only at level 1 without modifiers; modifier inheritance and snapshot restore reject it. Phase 1, phase 3, and the Aspects retain their normal rules. This prevents interference in new encounters; it does not repair previously altered health or recover a stalled fight. Other mods and direct game commands can still alter the encounter.

Star Loot Scaling

The synchronized [6 - Loot] settings in BepInEx/config/sighsorry.CreatureManager.cfg work independently of Enable Level System:

Setting Default Behavior
Character Loot System CalculateChance Replaces exponential star scaling for eligible item drops. Select Vanilla to preserve existing scaling.
Chance For Additional Loot Per Star For Creatures 50 Additional successful-drop amount percentage per star, from 0 to 100.
Chance For Additional Loot Per Star For Bosses 50 The same percentage for characters the game identifies as bosses.

CalculateChance keeps an eligible item's base drop chance and scales its successful amount by 1 + stars * percentage / 100. Only the fractional remainder is rolled: with a base amount of 1 and 50%, one star gives 1 or 2 items, two stars give 2, and three stars give 2 or 3. This changes loot balance: vanilla increases both drop chance and amount by stars. Zero percent keeps the base chance and amount. The game's resource modifiers and 100-item per-entry cap still apply.

Only non-trophy items whose drop entry enables levelMultiplier are eligible. One-per-player rewards, non-item drops, player drops, and explicit Enforcer bonus loot retain their existing behavior. Ordinary Enforcer drops use the game's boss classification. Calculation happens on the creature's network owner; the existing death, ragdoll and item-spawn paths remain responsible for delivery. Settings affect newly generated loot, not loot already stored in ragdolls.

The default applies to new or missing settings. An existing saved Vanilla selection or custom percentage is preserved; change it explicitly to opt into the new defaults.

When DropNSpawn is loaded, CreatureManager automatically leaves loot scaling to DropNSpawn and logs a notice when CalculateChance is first used. Drop That alone does not disable CreatureManager's calculation: its configured items, conditions and base quantities remain in use, and CreatureManager replaces star scaling only on eligible entries with ScaleByLevel=true. Entries with ScaleByLevel=false are excluded. Drop That's quantity-limit postprocessing, stacking and ragdoll metadata paths remain in place. If your Drop That tables already set the complete reward for each level, set ScaleByLevel=false on those entries or select Vanilla in CreatureManager.

CreatureManager does not rewrite the selected setting or the other mod's configuration. Install the same gameplay mods on the server and all clients so ownership changes do not change which drop system is active.

Karma and Enforcers

Karma is a regional pressure system based on a sliding 3x3 neighborhood of vanilla zones. Outdoor and dungeon neighborhoods track independent Karma, levels, decay, and Enforcer cooldowns while sharing the configured thresholds and gain rules. Kills of untamed, non-player creatures by a player, a tamed creature, or another player-side creature raise Karma in the current neighborhood; runtime-summoned creatures, including Enforcers and their minions, do not. Higher thresholds can add levels to future natural spawns, and idle regions decay over time.

Enforcers turn high Karma into encounters. A biome or dungeon table can choose an Enforcer, minions, modifiers, level bonus, bonus loot, and location restrictions. Nearby overlapping player regions are evaluated as one connected check region to avoid duplicate rolls for the same group.

New default karma.yml files include three DeepNorth encounters: Barka alone outdoors, ElakingMole with one Elaking in TheHole01, and JotunWarrior with one BlobMork in MorkBorg. Each uses [40, 30, 2] for required Karma, consumed Karma, and additional level bonus, inherits the Enforcer modifier rules, and grants its Enforcer's trophy plus two Silver Necklaces as bonus loot. The level bonus is not a final star cap. Dungeon entries match the location prefab names, not the dungeon generator names. Existing karma.yml files are preserved; add a DeepNorth section manually to enable these encounters in an existing configuration.

Enforcer behavior can be used together with Karma levels or independently through BepInEx configuration. Current Karma appears near the minimap, and Enforcer events use localized center-screen messages.

Common Workflows

Tune an existing creature

Find it in creatures.reference.yml, copy its identity into creatures.yml, and add only the fields being changed.

Build a customizable humanoid NPC or creature

Generated references compact repeated prefab entries into this weighted notation while preserving their first-occurrence order. The generated usedByAttacks field is informational and is ignored in active configuration. Component blocks already identify their kind, so no type field is generated or accepted.

Install MonsterlabZ and refer to samples in creatures.sample.yml and attacks.sample.yml. Change those files name into creatures_sample.yml and attacks_sample.yml, respectively.

Create world progression

Use levels.yml for biome, group, prefab, boss, distance, and modifier rules. Keep broad defaults near the top and add narrow overrides only where needed.

Create regional encounters

Use karma.yml to tune Karma gain and decay, then assign outdoor or dungeon Enforcer tables by biome and optional location.

Reskin a creature

Inspect textures.reference.txt, place a PNG directly in the server's textures directory when needed, and reference it from the creature's texture slots. Rooted paths, subdirectories, traversal names, links, and non-PNG local files are rejected. The synchronized manifest is content-addressed, so clients request only missing hashes and keep the previous complete texture generation if a transfer or validation fails. CreatureManager creates a target-specific ragdoll prefab for configured scale, textures, or appearance instead of changing the shared source ragdoll. Texture entries are also attempted on matching ragdoll renderer names/paths; a ragdoll without a matching renderer logs a warning and leaves that slot unchanged. Existing EffectData scale flags run unchanged during creation, after which CreatureManager restores the exact configured scale on its target-specific ragdoll. Runtime texture property blocks keep configured body textures authoritative when appearance.modelIndex updates the ragdoll model.

Console Commands

Command Purpose
cm:reference creature Regenerate the compact creature reference.
cm:reference attack Regenerate the attack reference.
cm:reference ai Regenerate the AI reference.
cm:reference loadout Regenerate the creature loadout list.
cm:reference projectile Regenerate projectile.reference.yml.
cm:reference texture Regenerate the texture list.
cm:reference levelvisual Generate the vanilla level visual reference.
cm:full creature Generate the full creature scaffold.
cm:spawn <prefab> [modifiers] [level] Spawn a test creature with up to four forced modifiers and an optional exact level.
cm:karma Show the current outdoor or dungeon neighborhood Karma.
cm:karma <value> Set the current outdoor or dungeon neighborhood Karma to a non-negative value.

The spawn command supports prefab and comma-separated modifier completion. It is intended for testing and does not perform a normal level or modifier roll. cm:spawn and cm:karma are available to the local listen-server host and connected dedicated-server administrators; a dedicated-server console has no player position to target.

Git

https://github.com/sighsorry1029/CreatureManager

CHANGELOG

Changelog

1.2.2

  • Add the server-synchronized Adjust EpicMMO LevelBar Position switch under 1 - General, On by default. Clients with WackyEpicMMOSystem position regular creature level labels at (70, -15), including labels recreated by EpicMMO's fallback path.
  • Apply the display override independently of CreatureManager's level and modifier settings without editing EpicMMO's configuration. The displayed position takes priority over EpicMMO's configured coordinates; Off restores the position recorded before adjustment. Boss, player and mount HUDs are unchanged, and dedicated servers do not adjust UI.
  • Cache label lookups, release departed HUD entries, and restore positions on live disable, HUD destruction, world teardown and plugin shutdown. Add isolated regression checks and original EpicMMOSystem 1.9.70 binary contract inspection.

1.2.1

  • Reuse temporary Karma blocker buffers and scoped spawn-query state, and share prefab classifications within each nearby search to reduce repeated allocations and lookups. Preserve live boss/Enforcer checks, spawn exclusions, and pending summon rules.
  • Add dungeon-only Blink collision and destination checks. Stop before solid obstacles when a safe position remains, or cancel unsafe Blinks, with clearance checks for creature size and nearby walkable ground for grounded creatures. Outdoor Blink behavior remains unchanged.
  • Increase the default Dungeon Enforcer Spawn Delay from 5 to 7 seconds and replace the English/Korean countdown notice with an in-world warning. Existing saved delay values are preserved.
  • Ship all 11 sample PNG textures under BepInEx/config/CreatureManager/textures/ with cm_ filename prefixes, update the creature sample, and remove embedded sample PNGs and the Generate Sample Textures option.
  • Install the package's BepInEx folder along with the DLL, including on servers supplying textures to clients. Existing YAML is not rewritten: update old texture references such as boar2 to cm_boar2, or retain their matching old PNG files. Use separate filenames for personal replacements so package updates do not overwrite them.

1.2.0

  • Add independent, server-synchronized switches to block nearby ordinary spawns while a boss or Enforcer is active, both On by default. Cover SpawnSystem, SpawnArea, and CreatureSpawner within the game's near-loaded sectors while preserving raids, boss prefabs, direct summons, and Enforcer encounters. These switches work independently of Karma and level settings.
  • Improve server-side boss discovery so existing and remotely simulated bosses can enforce the configured Karma-gain and Enforcer-summon blocks, including KarmaLevelOnly and Vanilla level mode. Preserve the regional/interior boundaries, existing Karma level bonuses, and Blamer's separate behavior.
  • Replace the Global, Boss, and Enforcer modifier switches with independent Max4/Max3/Max2/Max1/Off choices. Max4 remains the default and old On values read as Max4. Limits affect new automatic rolls only; existing, inherited, restored, and explicitly forced modifiers are not trimmed. Off continues to disable effects and icons without deleting saved modifiers.
  • Add Dungeon Enforcer Spawn Delay (s), defaulting to 5 seconds with a 0-30 range. Warn players before dungeon Enforcers and their minions arrive together at a reserved position. Cancel invalid reservations without charging Karma or starting cooldown; outdoor encounters and a zero delay remain immediate. Existing saved settings are preserved.
  • Add Reflection Damage Cap, defaulting to 25 health per activation from one creature; 0 means unlimited. Apply the cap after validating and consuming the original damage evidence, and show it in the localized modifier description.
  • Include three DeepNorth encounters in newly generated karma.yml: Barka outdoors, ElakingMole with Elaking in TheHole01, and JotunWarrior with BlobMork in MorkBorg. Each uses a +2 level bonus, required/consumed Karma of 40/30, and guaranteed bonus loot. Existing YAML files are not overwritten.
  • Simplify texture-transfer bookkeeping and faction snapshot publication while preserving transfer retry/cleanup behavior, configuration validation, and public faction lookup contracts.
  • Extend managed regression checks for boss discovery, modifier limits, reflection caps, delayed summons, nearby spawn blocking, texture transfers, and faction reloads. Verify original Valheim 1.0.16 client/server references and DropNSpawn/Drop That patch composition; actual game and multiplayer execution remain separately required.

1.1.17

  • Add Vanilla to Enable Level System: keep levels assigned by the game or other mods while retaining CreatureManager stat, distance, scale, and modifier rules. Skip CM level rolls and Karma/Enforcer level bonuses; preserve the default On, existing On/Off values, explicit spawn-command levels, and completed creature state.
  • Keep modifiers independently controlled by Global Modifiers, Boss Modifiers, and Enforcer Modifiers; selecting Vanilla does not disable them. Track level-one creatures so later external level changes refresh health and damage scaling without compounding stats or healing existing damage.
  • Use the prefab's original level sizes in Vanilla mode when no matching scalePerLevel rule exists. Explicit zero and positive values keep their existing meaning, and Boss defaults remain unchanged. New YAML files comment out Global scalePerLevel: 0.1; this also leaves Global star-size growth disabled by default in On. Existing YAML files and stored modifier sizes are not rewritten.
  • Keep Global damagePerLevel at 0.25 and explain in YAML comments, config help, and the README that vanilla uses 0.5. Vanilla level assignment continues to use the configured stat values rather than switching all balance settings to vanilla.
  • Add managed regression checks for mode serialization, level assignment and adoption, ownership, health preservation, prefab sizing, explicit scale overrides, and generated YAML defaults. Actual game and multiplayer execution remain separately required.

1.1.16

  • Protect FrozenKing_p2 from CreatureManager level/stat scaling, direct health/regen overrides, and all combat modifiers so its seven-Aspect encounter can complete through the game's normal phase-three transition. Phase 1, phase 3, and the Aspects retain their existing rules.
  • Preserve incoming encounter damage and block modifier inheritance/restoration on phase two, including Reaping stat restoration and Deathward lethal prevention. cm:spawn permits this prefab only at level 1 without modifiers. Existing altered encounters are not repaired or migrated.
  • Add managed regression checks for phase identification, spawn policies, health overrides, modifier application, seven unscaled hits, and command ownership. Actual boss fights and multiplayer execution remain separately required.
  • Require BepInExPack Valheim 5.4.2351.

1.1.15

  • Add synchronized Character Loot System settings with CalculateChance as the default and separate creature/boss percentages, both defaulting to 50% per star. Eligible drops retain their base chance and gain linear amounts with probabilistic rounding instead of exponential star scaling. Existing saved settings are preserved; select Vanilla to keep the existing calculation.
  • Automatically defer loot scaling to DropNSpawn when installed. Keep CalculateChance available alongside Drop That while preserving drop-entry identity and conditions; entries with ScaleByLevel=false, trophies, one-per-player rewards, and explicit Enforcer bonus loot are excluded from CreatureManager's calculation.
  • Share AI boolean parsing between YAML validation and application while preserving accepted aliases and the separate strict character/boss boolean rules.
  • Unify common creature/boss HUD rendering without changing their layouts, and remove unused Sprite state from Compendium text entries.
  • Add loot and AI parser regression checks, including managed Drop That patch-composition checks against original Valheim 1.0.15 client and dedicated-server assemblies. Actual world and multiplayer execution remain separately required.

1.1.14

  • Preserve the game's current saved creature level when reloading already processed creatures, preventing stale initial CreatureManager levels from undoing FeedLikeGrandma feeding upgrades after zone unload/reload.
  • Preserve intentional level decreases and existing modifier, health/damage multiplier, and visual restoration without rerolling initial levels.
  • Add regression checks for saved-level restoration, stale initial assignments, missing/invalid saved levels, and unchanged persisted state, alongside the client and dedicated-server compatibility checks.

1.1.13

  • Add compatibility with Valheim 1.0.7 across console commands, creature appearance hashes, ZDO data access, zone queries, spirit damage, and guaranteed Enforcer loot while preserving existing configuration, snapshot, authority, ownership, and duplicate-drop contracts.
  • Update the embedded ServerSync library for Valheim 1.0.7, including authoritative admin checks and safe buffering of the new player-history and admin-list messages during initial configuration synchronization.
  • Build against the installed original game assemblies with isolated compile-time access copies, preventing stale publicized references from hiding game API changes without modifying or packaging Valheim DLLs.
  • Remove the obsolete Humanoid.OnStopMoving compatibility transpiler now that Valheim performs the correct current-attack null check, and add client/dedicated-server compatibility checks for game references, Harmony targets, transpilers, private access paths, and serialized state contracts.
  • Require BepInExPack Valheim 5.4.2350.

1.1.12

  • Reuse unchanged resistance HUD text and prefixed localization tokens to reduce allocations while continuing to reflect live resistance and translation changes.
  • Skip server texture-transfer history scans until an entry can expire, preserving duplicate-request suppression and transfer behavior.
  • Remove unused Compendium description calculations during icon placement, reuse visual-state cleanup, and simplify Karma configuration staging and repeated player checks.
  • Add opt-in DeployToGame=true builds that copy only the final merged plugin DLL into the game's BepInEx plugins directory.

1.1.11

  • Deliver every configured Enforcer loot reward once from the owning peer at death instead of mutating the creature's CharacterDrop table, preventing DropNSpawn table replacement and custom death handling from discarding guaranteed rewards while retaining its global stack behavior.

1.1.10

  • Fix natural and Omen-triggered dungeon Enforcers on dedicated servers by using nearby server-owned CreatureSpawner or SpawnArea ZDOs when the remote dungeon scene is unavailable, while retaining full floor, clearance, and path validation in loaded scenes.
  • Align Karma realms, administrator spawn placement, and dungeon level/Modifier scale handling with Valheim's Character.InInterior boundary so lower interior layers no longer fall through to outdoor Karma and spawn rules.

1.1.9

  • Fix cached synchronized texture generations being committed successfully but reported as failed, ensuring the texture-ready refresh reapplies server PNGs to creature and ragdoll prefabs.
  • Suppress only the transient missing-texture warnings for server-manifest PNGs during the initial remote definition pass; genuine missing files, resource names, decode failures, and post-sync misses remain visible.

1.1.8

  • Synchronize server-owned, actively referenced creature PNG overrides through validated SHA-256 manifests, bounded chunk transfers, persistent client caching, and transactional last-known-good activation; hot reload reuses live texture objects while unsafe paths and invalid images are rejected.
  • Make persisted Enforcer discovery incremental on server startup and simplify level, modifier, clone, baseline, reference, faction, appearance, and localization runtime paths to reduce repeated work and failure scope.
  • Narrow the public modifier transport snapshot to modifier-owned state and require the new v2 format, removing v1 snapshot migration along with JSON localization compatibility.
  • Streamline generated levels.yml and karma.yml guidance, leave Boss.level omitted by default so regular bosses can follow the enabled biome preset, retry failed server-localization watchers, and verify all 32 modifier icons in the contract checker.

1.1.7

  • Discover modded creature attacks directly from loaded Humanoid loadouts and inspect animator controllers with a lightweight Animator-only probe, allowing non-networked attack holders into generated references without instantiating complete creature prefabs.
  • Add weighted projectile.randomSpawnOnHit and randomSpawnOnHitCount reference and override support, including inheritance, explicit clear and disable semantics, validation, baseline restoration, and attack usage metadata.
  • Base Fire, Frost, Lightning, and Spirit added damage and Juggernaut eligibility only on channels the target does not Ignore or Immune, respecting weak spots and current damage modifiers so ineffective damage cannot become effective elemental damage or knockback.

1.1.6

  • Separate outdoor and dungeon Karma neighborhoods, including Karma values, level bonuses, decay, Enforcer consumption and cooldowns, blocker checks, Omen summons, HUD status, and administrator commands, while retaining the shared thresholds and gain rules.

1.1.5

  • Added the versioned CreatureManagerModifierApi for lossless modifier-state capture and restoration by transport mods, including stored powers, cooldowns, accumulated runtime state, cache refresh, and validation before replacement.

1.1.4

  • Rename the Compendium page to the localized Combat Modifiers / 전투 특성 title and add a localized opening hint explaining how to inspect creature weaknesses, resistances, and immunities while sneaking.

1.1.3

  • Prune Karma level bonus requests whose pending client creature was destroyed or unloaded, preventing dungeon-generation bursts from leaving permanent Still waiting diagnostics and stale retry bookkeeping.
  • Log server summaries containing only transient zdoMissing outcomes at debug level, while retaining warnings for other request failures, accepted anomalies, and prolonged client-side waits.

1.1.2

  • Make dedicated-server Karma level bonus responses use authoritative server ZDO position and Enforcer state without requiring requester ownership or a loaded creature prefab, while keeping client application owner-authoritative.
  • Back off unanswered Karma bonus requests to 30 seconds and aggregate client/server diagnostics, preventing per-creature warning spam while preserving pending level application until an authoritative response arrives.
  • Add configurable Enforcer abandonment cleanup: remove the main Enforcer after no living player remains within the fixed 64 m encounter range, retain summoned minions, and restore persisted Enforcer tracking from server ZDOs after restart.
  • Cap Regenerating healing at 20 health per second by default, support 0 as unlimited, and expose the effective cap in generated YAML, Compendium text, translations, and synchronized modifier state.
  • Allow every modifier tuple to omit a trailing suffix after its required chance value, inheriting omitted fields before using runtime defaults, while rejecting ambiguous empty positions and documenting the rule.

1.1.1

  • Preserve explicit creature levels supplied by vanilla spawn commands, World Edit Commands, and Server Devcommands on dedicated servers instead of rerolling them through CreatureManager level rules.
  • Make configured damagePerLevel replace Valheim's vanilla 50% monster damage growth per level against character targets, while leaving vanilla growth intact when damagePerLevel is omitted.
  • Persist and reapply the selected damage-growth mode across ownership and runtime state restoration, and clarify the generated levels.yml and README examples.
  • Apply Disruptive stamina and Eitr recovery reductions through direct resource adjustments instead of resource-use calls, avoiding unintended usage side effects while preserving the configured recovery reduction.

1.1.0

  • Apply enabled ai.yml definitions directly to same-name loaded MonsterAI or AnimalAI creature prefabs; rename an AI to a unique non-prefab name to keep it preset-only, while explicit creature-level ai: assignments remain the higher-priority choice.
  • Preflight and track same-name AI targets through the existing transactional baseline and clone-determinism safeguards, and avoid claiming every AI field when a definition uses its own prefab as the implicit baseline.
  • Clarify in generated AI and reference headers and the README that original prefabs receive same-name overrides without a creature entry, while clonedFrom creatures retain the source baseline AI unless a clone-level same-name definition or explicit ai: assignment selects configured AI.

1.0.9

  • Limit Karma-level and Enforcer spawn/death center messages to connected, living players in the affected Karma region instead of broadcasting them to the entire world, including authoritative dedicated-server targeting and listen-host deduplication.
  • Keep dungeon Enforcers inside usable dungeon space by rejecting surface and unrelated vertical-layer spawners, snapping candidates to nearby floors, validating prefab-specific full paths, and using a same-room line-of-sight fallback while NavMesh data is cold.
  • Validate boss and minion capsule clearance with bounded retries, skip only minions that have no safe position, refresh dungeon spawner caches for Omen summons, and avoid consuming Karma or starting cooldown when no safe boss position exists.

1.0.8

  • Fix startup with Norsemen and other mods that extend Character.Faction at runtime by pairing injected enum names with their actual values instead of passing them back through Enum.Parse.
  • Resolve external faction names and IDs without taking ownership of their behavior; unmanaged factions now retain their original aggravatable and hostility logic unless they are explicitly defined in factions.yml.
  • Reject conflicting runtime faction IDs while keeping CreatureManager-managed vanilla and custom faction relationships unchanged.

1.0.7

  • Make synchronized YAML reloads transactional and last-known-good: reject invalid faction relationships, duplicate or multi-document mappings, broken clone graphs, stale clone references, and missing required prefab components before publishing, then restore prefab, faction, and clone state if application fails.
  • Make live edits deterministic: loaded creatures retain their creature, AI, attack, level, and modifier state, while newly instantiated creatures, projectiles, and ragdolls use current templates; live faction, Karma, localization, and shared texture rules remain immediate, and changing or unsafely hot-adding clonedFrom requires a restart.
  • Preserve stored level health multipliers and missing health through reload, ownership, and SetLevel paths; stop blocked Enforcer checks from extending cooldown, and pause Blamer flee/icon behavior at the regional Karma cap without consuming the modifier.
  • Bound server state and modifier traffic: limit each Enforcer candidate to 16 minions and 64 loot items, cap cm:spawn levels at 100, prune bounded Karma sector state, authorize Reaping only from observed deaths, limit Reflection/Reaping queues, and rate-limit Vortex/Juggernaut network effects.
  • Centralize and validate all 32 modifier definitions and icons, add reproducible exact-icon checks, keep Compendium icon links stable, and preserve loadout ordering and duplicate weight entries in generated references.
  • Improve partial-startup and shutdown cleanup, and automatically rebuild a failed configuration file watcher.

1.0.6

  • Remove runtime assembly loading for UnityEngine.ImageConversionModule; PNG decoding now resolves ImageConversion.LoadImage through reflection from Unity's existing compile-time type reference.
  • Restrict optional compatibility type discovery to assemblies already loaded by the game and keep UnityEngine.ImageConversionModule.dll out of the release package.

1.0.5

  • Fix dedicated-server cm:spawn and cm:karma execution for vanilla admins and Server Devcommands permissions by handling commands after authentication and resolving the invoking player from authoritative peer ZDO state.
  • Make periodic Enforcer checks and Omen summons use connected-player ZDO positions, restore boss and Enforcer blocker tracking across headless regions and reloads, and deliver Karma and Enforcer center messages to remote clients.
  • Move Blamer Karma grants to a server-validated routed RPC so client-owned creatures can contribute Karma while fleeing, consuming their Blamer budget only when regional Karma actually increases.
  • Apply biome presets, levels.yml prefab/group overrides, health, damage, scale, and additive Karma levels on the creature's owning peer while retrieving the Karma bonus from the server; modifiers now roll only after level processing completes.
  • Harden configuration reload, ownership transfer, delayed RPC, death, and retry paths so synchronized YAML and level state cannot be finalized from stale or incomplete data.

1.0.4

  • Add the server-synchronized Blink Alert Grace Period (s) option (0-10s, default 3s), delaying Blink and its extended attack range after alert while letting the grace period expire even when no attack can start; 0 restores immediate Blink behavior.
  • Track Blink alert transitions owner-authoritatively by network time, reapply the grace period only after a creature calms and becomes alerted again, and prevent repeated alert calls or failed attacks from indefinitely suppressing Blink.
  • Reduce Blink's default maximum range from 24m to 16m across Global, Boss, Enforcer, examples, and the runtime fallback.
  • Improve the 17 px Blink icon with a cyan arrow and violet portal while removing the two decorative sparks, and update the English, Korean, Compendium, and README descriptions.

1.0.3

  • Rework normal-creature and boss level HUDs with fixed 17 px stars and modifier icons: keep stars at the health-bar lower left, modifiers at the lower right, allow the blocks to overlap, and align their visible edges optically.
  • Preserve individual one- and two-star displays, compact higher levels to a star plus count, and add a fallback star when a HUD has no usable vanilla star artwork.
  • Show every forced modifier icon up to the four-modifier limit, including multiple modifiers from the same category, in both FixedCategorySlots and RightPacked layouts.
  • Improve 17 px readability of the Armored, Omen, Spirit, Undodgeable, and Unflinching artwork, and keep hover resistance text below the expanded HUD content.
  • Keep the Karma minimap label upright with rotating ZenCompass configurations by attaching it to a stable small-map root.
  • Reduce steady-state modifier HUD allocations and redundant layout work.
  • Clarify in the Biome Level Preset setting that levels.yml contains copyable preset biome distributions.

1.0.2

  • Add dedicated-server remote-admin support for cm:spawn and cm:karma, using the invoking admin's active player and returning results to their console.
  • Fix server-validated Karma credit for client-owned creature deaths, including the race where DestroyZDO arrives before the final health sync.
  • Fix Blamer flee and icon state on remote-owned creatures and add rate-limited diagnostics for rejected Karma requests.
  • Extend Omen to unambiguously player-attributed poison, fire, and spirit damage-over-time kills, target the actual connected killer, exclude the dying creature from blocker checks, and report summon rejection reasons.
  • Improve shared direct and delayed death attribution used by Karma, Omen, and Reaping, and update the English and Korean descriptions.

1.0.1

  • Skip PNG decoding and renderer material texture work on headless servers while preserving ragdoll, scale, and appearance processing.
  • Fix the Humanoid.OnStopMoving current-attack null guard that could cause a NullReferenceException.
  • Add cooldown control for Omen-triggered Enforcers and refine Karma and Enforcer defaults.
  • Declare incompatibility with CLLC, Star Level System, MonsterDB, and Monster Modifiers.
  • Improve generated level configuration guidance and the default TentaRoot modifier exclusion.
  • Generate only the Thunderstore release archive directly under Thunderstore.

1.0.0

  • Initial release