You are viewing a potentially older version of this package. View all versions.
MidnightMods-StarLevelSystem-0.11.0 icon

StarLevelSystem

We have two levels yes, but why not... MORE?

Date uploaded 11 months ago
Version 0.11.0
Download link MidnightMods-StarLevelSystem-0.11.0.zip
Downloads 917
Dependency string MidnightMods-StarLevelSystem-0.11.0

This mod requires the following mods to function

denikson-BepInExPack_Valheim-5.4.2350 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.2350
ValheimModding-Jotunn-2.30.0 icon
ValheimModding-Jotunn

Jötunn (/ˈjɔːtʊn/, 'giant'), the Valheim Library was created with the goal of making the lives of mod developers easier. It enables you to create mods for Valheim using an abstracted API so you can focus on the actual content creation.

Preferred version: 2.30.0
ValheimModding-YamlDotNet-16.3.1 icon
ValheimModding-YamlDotNet

Shared version 16.3.0 of YamlDotNet from Antoine Aubry and contributors, net47 package for use in Valheim mods. Maintained by the ValheimModding team.

Preferred version: 16.3.1

README

StarLevelSystem

TitleHeader

Star Level Systems expands upon the Valheim star system and allows extensive customization.

Features:

  • Expand Creature Star levels (as high as you want)
    • Sizing configuration for all creatures and their equipment
  • Fine grained control of all creature aspects
    • Health, damage, size, speed, attack speed, base and per level
    • Resistance or weakness to all elements
  • Unique colorization for any creature
    • Per level colorization for any creature
    • Bulk color generators for defining whole ranges of color levels
  • Unique Modifiers for all creatures, multiple different categories (Boss, Major, Minor)
    • Creatures names based on modifiers
    • Star Icons based on modifiers
    • Visual effects for modifiers
    • Per level, fine grained configuration and tuning of modifiers
  • Scaling, fine-grained control and configuration of all creature drops
    • scale individual loot entries differently
    • modify chance drops based on level of the creature
    • Add, remove, change all drops
  • Scaling of the world around you
    • level up the FISH!
    • level scaled BIRDS
    • level scaled TREES

Got a bug to report or just want to chat about the mod? Drop by the discord or github.

discord logo github logo

Below are a few examples of what you might see, and what the mod can do.

HeaderExample

Features

Levels, Levels and more Levels (LevelSettings.yaml)

So you want creatures to have more levels, but you don't want to die instantly to a level 100 boar when you start the game? Well have I got the config file for you.

Level settings allows configuration of creature levelup chance, creature stats, max level, increased level up chance based on distance from the center- and respectively biome based configs for all of that.

Biome Configuration

Lets take a look at some of the things you can do with this, and what better spot to start out than the default All biome configuration (which applies to every creature by default).

Here is a section of the default example config, lets walk through what everything does.

 All:
    distanceScaleModifier: 1.5       # The influence of distance ring based scale increases (1.5 means 150% of the bonus value will be applied)
    spawnRateModifier: 1.5           # Spawn rate of every creature is 50% higher (1.5), which means every spawn has a 50% chance of being 2 creatures.
    creatureBaseValueModifiers:      # These values modify the base stats of every creature in this biome (eg, all creatures)
      BaseHealth: 1                  # The default health of all creatures is 100% (1), numbers below 1 reduce health, above increase is (2) is 200% health for everything
      BaseDamage: 1                  # Default damage of all creatures is 100% (1)
      Speed: 1                       # Default movement speed of all creatures is 100% (1)
      Size: 1                        # Default size of all creatures is 100% (1)
    creaturePerLevelValueModifiers:  # Per level modifiers are applied per level, eg each star will give this value to the creature
      HealthPerLevel: 0.4            # Each star provides 40% more health (0.4)
      DamagePerLevel: 0.1            # Each star provides 10% more damage (0.1)
      SpeedPerLevel: 0               # Each star does not increase speed (0)
      SizePerLevel: 0.1              # Each star makes the creature 10% bigger (0.1)
    damageRecievedModifiers:         # Damage reduction or increases
      Poison: 1.5                    # Everything recieves 50% (1.5) more damage from poison (that includes players)

Note: creaturePerLevelValueModifiers do not apply to characters. But, damageRecievedModifiers DOES.

Biome specific configurations can be used to override the default All configuration, in this case max level for Ashlands is being set to 26 and the distance modifier is being reduced by 50%

  AshLands:
    biomeMaxLevelOverride: 26
    distanceScaleModifier: 0.5

Creature Configuration

Creature specific configuration allows you to override what is set in the biome definition for a creature, which allows more fine-grained control of how a specific creature should be modified.

Lets take a look at Eikthyr

  Eikthyr:                            # The prefab of the creature to modify, this can be any valid creature.
    creatureMaxLevelOverride: 4       # The maximum level that this creature can level up to, regardless of biome
    creaturePerLevelValueModifiers:   # Creature base and per level modifiers are supported here, just like the ones defined in Biome configuration
      HealthPerLevel: 0.3             # 30% (0.3) more health per level
      DamagePerLevel: 0.05            # 5% (0.05) more damage per level
      SizePerLevel: 0.07              # 7% (0.07) larger per level

Levelup Chance

This is a definition of the chance that a creature has to level up at each point.

This works hand in hand with the distance scale modifier and distanceLevelBonus, distance level bonuses are applied if the creature falls into a distance category with bonuses. eg:

distanceLevelBonus:
  1250:
    1: 0.25

Will give all creatures a +25% chance to reach the first star level, if they are at least 1250m from the center. This value is then modified bast on biome settings. In our example biome file we have a 1.5 value for the distance modifier so 1.5 x 0.25 = 0.375 would be the increase provided to reach level 1.

If the total bonus and base value exceeds 1.0 that level will be gaurenteed, every creature with that condition will be at a minimum that level. You can see this in some of the later distance bonuses which slowly drive of the guarnteed spawn level of creatures.

  5000:
    1: 1      
    2: 1      # All creatures at least 5000m from center will be level 2+
    3: 0.75
    4: 0.5
    5: 0.25
    6: 0.15

Now, we've walked through a lot of the bonuses to level up chance but lets take a look at the base values too. Star level systems default config has a relatively large spawn range- which is limited by biome configuration.

defaultCreatureLevelUpChance Defines the levelup chance of all creatures, this however can be limited by biome configuration and it can be increased by other factors, such as the distance from center bonus.

defaultCreatureLevelUpChance:
  1: 20
  2: 15
  3: 12
  4: 10
  5: 8
  6: 6.5
  7: 5
  8: 3.5
  9: 1.5
  10: 1
  11: 0.5
  12: 0.25

Colorization (Colorization.yaml)

In vanilla there are few creatures which can be colorized when they level up. Star Level Systems changes that. Most all creatures can be colorized, it should be noted that some creatures (Yagluth eg) do not colorize well and the effect is generally not very noticable.

There are two different ways to apply colorization values to creatures.

  • Creature specific color definitions. These are split between default definitions (applied to any creature, if it does not have a more specific entry) and character specific entries. These will be applied at the keyed level to the specified creature.
      Greydwarf:
    	1:
    	  hue: -0.06
    	  saturation: 0.1
    	  value: 0.05
    
  • Color Range definitions. These are ranges of color that will be sliced up and generate gradually changing color patterns based on the ranges between the start and end points.
    DefaultGenerator:
    - characterSpecific: false
      startColorDef:
        hue: 0.07130837
        saturation: 0.05205864
        value: 0.01721987
      endColorDef:
        hue: -0.07488244
        saturation: 0.09342755
        value: -0.1008582
      rangeStart: 1
      rangeEnd: 15
    
    In this example, level ranges for default colors from level 1 to 15 will form a range of colors from hue 0.07130837 -> -0.07488244 etc. If you want to see the output from a generator you can enable the debug flag to dump the generated colorization config to a file. You can use this to hand-pick color values etc.

Modifiers

Maybe you've tried out CLLC's modifiers, or Monster Modifiers? Both really add variety to the game that is much needed. Star Levels Systems modifiers are designed to be extremely flexible, both in configuration- but also in effect.

There are however a number of modifiers and it can be a bit unclear what each does. So to start off here is a table of all current modifiers and how they work.

Modifiers are split into three categories. Boss, Major, and Minor. Which allows customization into the random selection process for modifiers, along with seperate tuning for modifiers that appear on bosses vs minor creatures.

Boss Modifiers

These modifiers are by default only available on bosses.


Modifier Description Config Adjustment Icon
BossSummoner Summons minion creatures at regular intervals up to a certain limit. BasePower = Max number summoned PerlevelPower = Time between summon BiomeObjects = Biome specific minion (prefab name) icon
SoulEater Creature grows in strength and size when other creatures die near it. Creature heals slightly. PerlevelPower = how much health & damage to gain icon
LifeLink Creature will redirect a portion of damage it takes to another creature in the area. BasePower = Base damage redirection PerLevelPower = Additional damage redirection based on level icon
ResistPierce Reduces damage the creatures takes from all pierce sources (like arrows) BasePower = Base damage reduction PerLevelPower = Additional damage reduction granted per creature level icon
Brutal Increases creature attack speed BasePower = Increases attack speed by base amount PerLevelPower = Increases attack speed by amount per level icon

Major Modifiers

These modifiers are attainable by most creatures, and are typically the more impactful modifiers.


Modifier Description Config Adjustment Icon
Brutal Increases creature attack speed BasePower = Increases attack speed PerLevelIncrease = Increases attack speed per level icon
Fire Adds Fire damage BasePower = Percentage of total damage added PerLevelIncrease = Additional damage added per level icon
Frost Adds Frost Damage BasePower = Percentage of total damage added PerLevelIncrease = Additional damage added per level icon
Poison Adds Poison Damage BasePower = Percentage of total damage added PerLevelIncrease = Additional damage added per level icon
Lightning Adds Lightning damage BasePower = Percentage of total damage added PerLevelIncrease = Additional damage added per level icon
Splitter Creature spawns replacements when it dies Config values are combined and for each whole value, an additional creature is spawned BasePower = Number of creatures to spawn on replacement PerLevelIncrease = Additional value added to give a chance for more spawns icon
ResistPierce Reduces damage taken from Pierce BasePower = base damage reduction PerLevelIncrease = per level additional damage reduction icon
ResistSlash Reduces damage taken from Slash BasePower = base damage reduction PerLevelIncrease = per level additional damage reduction icon
ResistBlunt Reduces damage taken from Blunt BasePower = base damage reduction PerLevelIncrease = per level additional damage reduction icon

Minor Modifiers

These modifiers are attainable by most creatures and are typically less directly impactful than others, but can be none the less dangerous.


Modifier Description Config Adjustment Icon
FireNova Explodes when it dies, damaging everything. BasePower = Base damage of the explosion, based on creature damage PerLevelPower = Increase to the damage added per level icon
Lootbags Doubles creature health and gives 25% more movement speed, drops more loot. BasePower = Increases drops PerLevelPower = Increases drops by amount per level icon
Alert Increases creature hearing range BasePower = Increase hearing by PerLevelPower = Increase hearing by amount each level
Big Increases creature size and health BasePower = Increases health and size PerLevelPower = Increases health and size by amount
Fast Increases creature speed BasePower = Increases movement speed PerLevelPower = Increases speed based per level
StaminaDrain Attacks by the creature drain your stamina BasePower = Drain amount PerLevelPower = Drain increase by amount per level icon
EitrDrain Attacks by the creature drain your Eitr BasePower = Drain amount PerLevelPower = Drain increase by amount per level icon

Localization

Localization is available for everything in the mod. I accept community translations! If you would like to contribute localizations or improve them please reach out on discord.

Otherwise localizations are available at Bepinex/config/StarLevelSystems/localizations, new languages can be made using any of Jotunns language specific names

API Usage (WIP)

Star Level Systems provides a public API for other mods to interact with. The API currently allows reading, modifying and managing creature stat modifiers, color, and level. Check out the API Documentation here

Some of my other mods

I also directly contribute to Epic Loot! If you like new features and bugfixes always happy to hear feedback.

Installation (manual)

Modded Valheim requires Bepinex to load mods. If you have not modded before or are trying to simplify how easy it is for you to mod the game I recommend taking a look at a mod manager. Gale is an excellent mod manager. Download it manually, install and start it up.

If you are proceeding manually you will need to ensure that you have installed Bepinex from the Thunderstore, it has required configuration.

Once you are ready to install mods, they must be unzipped first and go into the Bepinex/plugins folder.

  • Download and install Yaml.net and Jotunn
  • Download this mod and install it!

Comptabilities

  • This mod is incompatible with Creature Level and Loot Control (they do the same things)

Compatibility is being worked on for the following mods:

  • CarryMeMaster
  • PortablePals

Planned Features

This mod is still in active development and is not considered complete yet.

Planned Features

  • Refinement to the existing modifers
  • New modifiers!
  • Level scaling more things
  • Generic and biome specific loot multipliers
  • A Nemesis or mini-boss generation system
  • World leveling system based on boss kills

CHANGELOG

1.14.0

- Fixes for raids that never ended: If no creatures hit a full spawn a raid could never end
- RaidActiveTillDefeated is now capped by the new RaidActiveTillDefeatedMaxSeconds setting (default 5 minutes)
- Fixes raid stacking: Raid collision checks moved to the server side.
- sls-raid-clear-pins command removes every SLS raid map pin from your map; raids still running redraw theirs
   - stopevent still kills running raids and cleans up
- The vanilla event banner now shows the raid's start message while you are inside an SLS raid's area
- RaidSettings.yaml is now versioned (RaidVersion) and is reset to the new defaults on load, the old file is backed up next to it first
   - Spawn interval is increased for groups during a raid (gives you more time to deal with enemies before they pile up)
- Remote Nemesis bosses now hunt the nearest player like their minions (RemoteSpawning.BossesHuntPlayers, default on)

1.13.1

- Raid runners left behind by earlier versions are deleted the first time anyone loads their area

1.13.0

- Fixed finished raids staying in the world save and starting back up whenever their area was loaded again
- Raid map pins now show for every player, including players who join or reload into a raid that is already running
- Walking away from or logging out near a raid no longer deletes its creatures that are still loaded around you
- A raid ending or unloading now only stops its own music, not boss, location or other event music
- Ending a raid now also removes creatures spawned after the raid passed to another player
- Fixed a NullReferenceException from the map rings when joining a server before the minimap had loaded

1.12.0

- New Table curve style for level generators: write the chances yourself in LevelupChanceTablesBySpan and reuse them for any generator covering the same number of levels (thanks NyrZ)
- The quick configure panel can edit the Table values for its default level generator
- A level generator using Table with no matching table falls back to the Exponential curve instead of always rolling its lowest level
- Broken level tables (missing keys, values that do not go down) are reported once when LevelSettings.yaml loads
- New ConditionalBossKeyOrder decides which defeated boss sets the conditional levelup tier; entry order in the file no longer matters
- Fixed conditional levelup chances getting stuck on the Eikthyr tier
- Boss-conditional tiers now update when a boss is defeated for everyone, including dedicated servers, and reset when changing worlds

1.11.0

- Player bases now block a reset: the workbench area that stops monsters spawning
   - Relax it per group with PlayerBaseEffect: Ignore. A prefab ignored under PlayerBuiltPiece projects no base either
- Players who hide their position on the map are no longer invisible to the reset's safety check
- ExtraTerrainRadius is now clamped to ProtectionRadius minus 32m, so terrain is never reset further out than player property was checked for
- A chunk whose reset did not finish now gets two short retries instead of waiting a full cycle

1.10.2

- Remove cheat flag for SLS commands, admin is still required.

1.10.1

- Remove yaml.net outside check

1.10.0

- Deep North Update!

1.9.1

- The server's raid check schedule is now saved with the world, instead of restarting on every login
- New Raids option RaidCooldownClock chooses what raid cooldowns are measured against
   - PlayerTime counts only time that player has spent in the world
   - WorldTime (default) counts time the world is played by anyone, matching previous behaviour

1.9.0

- Improves performance for mass deletion of creatures or other objects
- Fixed tree and bird level scaling stripping drop weights, so multi-item drop tables only ever dropped their first entry - Beech gave Resin but no Feathers or Seeds, Scorched Trees gave Blackwood but no Charcoal
- Retuned tree drops
   - Its default rises from 0.2 to 0.5 so per-level yields stay close to before.

1.8.0

- Fixed Location Reset stripping pieces out of structures it had just rebuilt
- Fixed zone levels and kill counts resetting every time a world loaded
- New ZoneScaling option ZoneDecayClock chooses what zone decay measures against
   - GameTime counts only time the world is actually being played
   - RealTime (default) counts real world time, so time between play sessions can reduce zone heat
- Improves performance for some rare raid and nemesis checks

1.7.3

- Location Reset no longer clears everything inside a location's radius, it is now more precise
- Vegetation resets no longer create prefabs world generation never places
   - Dormant entries are now skipped, and each one is named in the log once per world
- Creatures are now linked to the spawner that made them, and the links are rebuilt at world load
   - Covers SpawnArea (greydwarf nests, bone piles, EvilHearts) and TriggerSpawner
   - Linked creatures are removed with their spawner wherever they have wandered
- Chunk log lines now report vegetation preserved, objects cleared, and duplicates dropped

1.7.2

- Fixes Exponential loot giving vanilla amounts for creatures with vanilla drop tables (the multiplier collapsed to 1x)
- Exponential now scales as (1 + PerLevelLootScale)^(level-1) everywhere, so a 0-star creature is exactly 1x and the defaults match vanilla's doubling
- Reworks ChancePerLevel, amounts now scale linearly like PerLevel, with only a chance to drop at all
   - PerLevelLootChanceScale and ChanceBaseChancePerLevel control the chance an item has to drop, impacts all creature drops when enabled
- Fixes near infinite loot drops failing to spawn

1.7.1

   - Fix for being too tired and not including 1.7.0 in the package yesterday

1.7.0

- The mod API can now drive Location Resets. See API/README.md
   - Mods can register their own reset targets (a custom dungeon, a modded ore) with an interval or a cron schedule, and they join the normal background sweep
   - Mods can reset a named location, or everything within a radius, and get a result summary back
   - Mods can ask when a location or a map chunk was last reset, and when it is next due
   - Registrations survive a config reload and a world reload, and never get written into your yaml
   - Your LocationResetSettings.yaml always wins: adding a Locations:/Vegetation: key for the same prefab takes manual control. Protection rules cannot be set from the API at all
   - Resets requested through the API default to waiting for players to leave the area; a mod has to opt in to forcing one
- Adds sls-loc-reset-named, which resets a single named location near you - including one no reset group covers
- Adds sls-loc-info, reporting when the chunk you are standing in was last examined, when its location was last reset, and what is blocking it
- Adds sls-loc-api, listing reset targets other mods have registered
- sls-loc-status now lists API-registered targets and whether your config is overriding them
- Only one manual reset can run at a time now, and the background sweep stands down while one does. Two overlapping resets could previously tear down each other's zones
- API/README.md documented a type name that does not exist (StarLevelSystemAPI); the class is StarLevelSystem.API
- The Location Reset API works from a client as well as the server, over a new RPC pair, so a mod whose logic runs client-side (an item that renews a dungeon for the player who used it) works without a server-side counterpart
   - Every Location Reset API method is callback-shaped and returns whether the request was dispatched; on the server the callback still runs immediately
   - Client requests are not admin-gated, so the server bounds them: ClientLocationResetMaxRadius, ClientLocationResetMaxDistance and ClientLocationResetCooldownSeconds. Player structures are protected from every route regardless
   - sls-loc-api tags registrations that arrived from a client with the peer they came from
   - A Location Reset API callback always fires exactly once, including when the request is refused. A refusal arrives as a normal result with outcome 'refused', a reason, and a machine-readable refusalCode (too_far, cooldown, no_such_location, already_running, hard_blocked, ...), so a mod can retry, explain or refund from the one place instead of guessing
- Evolving creatures can now gain modifiers as they level up: EvolvingCanRollNewModifiers (off by default) and EvolvingChanceToRollNewModifier (0.15) in the Modifiers section
   - Each evolution makes one roll; on success the creature gains exactly one new modifier of a single type - Major or Minor (Boss for bosses) - chosen at random from the types that still have room under the creature's modifier limits, honouring LimitCreatureModifiersToCreatureStarLevel against the level just reached. A creature never gains a modifier it already has
- Evolving creatures now apply their new level on the owning client as soon as they evolve
- Improved weighted modifier selection list consistency

1.6.2

- Stamina & EitrDrain, nerfed default draining ratios and per level increases 
- BossSummoner fixes:
   - Summoner now does a much better job tracking its spawned list
   - Summoner now prevents overspawning of creatures better
   - Summoner creatures inside a dungeon now spawn their summons in the dungeon, instead of on the surface below it
- Location reset fixes:
   - A rebuilt dungeon now re-seals its keyed entrance
   - A location that was not rebuilt now says why in the chunk log

1.6.1

- Adds options to ignore player built prefabs on a group-by-group basis for resets
   - This allows forcing resets on high value locations, such as dungeons/ores (it still skips for players present and wards)
- Adds a new config option OverLevelTamesGetRerolledOnLoad which defaults to false. This controls if tamed creatures which are over a biome or global max level limit get rerolled
- Adds a new command sls-creature-setlevel, which sets the closest creatures level

1.6.0

- Modifies the quick configuration system to add support for more mods
- Every yaml config file now contains full documentation in-file
- New command `sls-raid-spawn [raid_name] [x] [z]` force-starts a specific raid
- Creature modifier fixes:
   - LifeLink now uses a per-creature cooldown
   - Summoner bosses now work for every summoner
   - PoisonNova and FireNova can fire from the same creature
   - ElementalChaos can now also roll Poison
   - Splitter spawns are capped and spread across frames instead of instantiating every split synchronously in the death frame
   - Modifiers added via the console command or the API now actually apply their stat changes
- Level and loot fixes:
   - PerLevelTreeLootScale sub-logs use their spawn point's rotation as vanilla does
   - SpawnMultiplicationAppliesToTames was inverted
   - Distance level bonuses now use the starter temple as their center on dedicated-server clients even with map rings disabled
   - The over-level correction now uses the same biome-aware max level as the roll gate
- Raid fixes:
   - A raid wave with an invalid prefab name now logs and skips it
   - Fixed a startup error when no saved raid registry exists yet
   - Raid and nemesis spawns are now woken on spawn, and stay awake
   - Raid creatures now actually hunt the player more reliably
- Nemesis fixes:
   - Nemesis map pins are cleared on logout so they can't leak into the next world
   - Fixed a player-death score update that could throw before any score data existed, and minibosses defined without minions no longer throw when spawning
- Config fixes:
   - World state files (location reset stamps, zone data, raid registry, Nemesis remote state) are now stored per-world; switching worlds previously overwrote one world's state with another's. Existing files migrate automatically
   - Hand-editing the main cfg from the main menu is now picked up
- PAPI Changes:
   - AddNewModifierToSLS now wired up
- Performance improvements:
   - Creature, tree and HUD caches are now evicted more reliably
   - The per-hit damage modifier path no longer builds its debug report unless the damage debug flag is on
   - The enemy HUD no longer allocates unless names/modifiers have changed
   - Hover names for SLS-renamed creatures are localized once
   - Size updates skip the global physics sync when the scale is unchanged
   - Nearby-creature queries use the game's character registry instead of an unfiltered physics sphere
   - Attack damage factors read the creature cache
   - Terrain resets batch all craters in a chunk

1.5.4

- Fixes raids never starting on crossplay (PlayFab) servers
- Fixes a player's private keys not being set when the player was dead or respawning

1.5.3

- Improves resiliance of per-player data synchronization for individual raids

1.5.2

- Admins can now run the server-authoritative commands (all sls-loc-* plus sls-nemesis-spawn) from a connected client
   - Non-admins are refused, and the server re-checks the sender on every request rather than trusting the client
   - Tab-completion now works on every argument, and offers values that depend on the earlier arguments - sls-mod-give completes the modifier type, then only the modifiers belonging to that type
   - Output is coloured by severity. Turn it off with the EnableTerminalColors client setting. The BepInEx log and the Location Reset chunk log are always plain text
   - Adds sls-help, which lists the SLS commands grouped by area with their old names
- Renamed commands to a consistent sls-<area>-<verb> scheme. Every old name still works, so existing macros and guides are unaffected
   - SLS-loc-reset-status/here/audit/dump/stamp-all -> sls-loc-status/reset/audit/dump/stamp
   - SLS-killall -> sls-creature-killall, SLS-give-modifier -> sls-mod-give, SLS-Dump-LootTables -> sls-loot-dump
   - SLS-rebuild-zones -> sls-zone-rebuild, SLS-spawn-nemesis-remote -> sls-nemesis-spawn, SLS-SetNem-Score -> sls-nemesis-score
   - SLS-reset-player-modifiers -> sls-player-reset (note this command is still only for debugging really, players can't have modifiers... right now)

1.5.1

- Improves ZDO growth tracking for vegetation
- EnableDebugLocationResetDetails now breaks down the details of any chunk that ends a reset with more ZDOs than it started with
   - If you see repeatedly that a chunk is ending with more ZDOs than it started with, please report it to the mod author with the details of the chunk and the server's configuration
- Improves dungeon reset to ensure creature removal

1.5.0

- Adds the Location Reset system! Restores looted overworld locations, dungeons, ores, pickables and vegetation so they can be gathered again. Built for large servers where many players compete for a finite pool of resources. Disabled by default (EnableLocationReset), and every location/vegetation entry is opt-in
   - Resets run server-side in the background, and ONLY in zones with no players nearby, so players never see a reset happen
- Adds full safety fallback for empty configs. If a config is empty it will automatically revert to the default configuration. 
- Fixes UseVanillaRaidConfiguration not producing vanilla raids for clients whose config sync failed to arrive. SLS raid names deliberately match the vanilla event names, so a client that never received the server's setting would intercept every vanilla raid the server broadcast, hide it (no banner, minimap circle, music or weather) and start a fresh SLS raid on each 2 second re-broadcast instead. The vanilla raid pipeline is server-authoritative, so clients now always defer to the server for it and a missed sync no longer changes what a client does
   - The raid config is server authoritative: on a server the server's UseVanillaRaidConfiguration and RaidSettings.yaml are synced to clients, so editing them client-side does nothing. This is now noted in the config description and the README
- Fixes vanilla raid weather never applying again after the first SLS raid. Raids released the environment override by forcing "Clear" rather than clearing it, which left a permanent override in place that outranked biome weather and vanilla raid weather. Raids now hand the override back, and only if another system has not taken it over since
- Fixes GlobalRaidIntervalScalar compounding
- Switching UseVanillaRaidConfiguration on mid-session now tears down any running SLS raid instead of stranding its creatures, map pins, music and forced weather permanently

1.4.2

- Updates the required Jotunn version

1.4.1

- Addresses a network delay that could cause a creature to not gain its modifier name even after gaining the modifier

1.4.0

- Adds support for negative SizePerLevel, so creatures can be configured to shrink with each star
	- Adds MinimumCreatureScale config (default 0.1), the floor a creature can shrink to. Prevents zero sized or inside-out creatures
   - PerLevelScaleBonus now accepts negative values (range is -0.5 to 2)
   - Fixes changed size settings not applying to already spawned creatures until they respawned
- Fixes creatures at exactly the max level re-rolling their level
- Fixes bosses between MaxLevel and MaxBossLevel being treated as over-levelled and constantly re-rolled
- Fixes ragdolls of creatures whose prefab is not unit-scaled (lox, troll) being sized incorrectly
- Improved HUD performance slightly
- Improves cache eviction of HUDs slightly
- Improves drainer effects to be modified based on how you handle the attack
   - Dodging a drainer attack will prevent the full drain effect
   - Blocking a drain attack will prevent a small amount of the effect
   - Parrying a drain attack will prevent a moderate amount of the effect

1.3.0

- Adds ChancePerLevel as a loot style, which gives each drop a chance to happen that scales on the creatures level (drops amounts scale linearly)
- Pickables are now fully supported for custom loot drops via nonCharacterSpecificLoot in LootSettings.yaml, keyed by pickable prefab name (e.g. Pickable_Turnip)
- Improves Lootdebug logging to show more details of how loot is calculated
- Adds ChancePerLevel as a selectable LootDropCalculationType: each drop becomes an all-or-nothing lottery whose chance grows with level (base amount or nothing), applied to creature, tree, rock, pickable and destructible loot
- Adds PerLevelLootChanceScale config (default 0.05): under the PerLevel loot style, increases the chance a sub-100% drop occurs by this amount per level, on top of any per-drop ChanceScaleFactor
- Improves accuracy of distance loot scaling
- Fixes incorrect logging of tamed loot drop skips
- EnableDistanceLootModifier Bepinex config (along with enableDistanceLootModifier in Lootsettings.yaml) now both control distance scaling fully
- Fixes LootDropCalculationType not being applied on load (Exponential scaling was ignored until the setting was changed)
- Improves minimap redraw conditions

1.2.2

- Trims Nemesis score data to prevent unbounded history

1.2.1

- Fix cache collision causing incorrect naming in multiplayer
- New configuration (default enabled) to hide zone and rings below fog layer
- Improves the force spawn command for Nemesis minibosses to allow usage on dedicated servers
- Fixes Nemesis world bosses never appearing on dedicated servers

1.2.0

- Adds Nemesis world-boss spawns! (disabled by default EnableNemesisRemoteSpawning)
   - Configuration allows generating world bosses from any enemy prefab
   - Custom names, custom loot tables, modify boss stats

1.1.3

- Fixes a bug where Nemesis boss creation could fail and cause an NRE
- Fixes Nemesis bosses not being removed from the potential spawn list when they are spawned

1.1.2

- Adds DespawnIfNotAlerted for Nemesis spawns configuration, as an optional way to cleanup
- Improves compatibility with mods that adjust creature health

1.1.1

- Fixes support for UI scales at extremes
- Adds configuration options to control all Boss HUD positioning
   - Configure space to top of screen
   - Configure vertical stacking or horizontal stacking
   - Configure buffer space between boss entries

1.1.0

- Fixes multi-fracture rocks not spawning drops at the broken position (was always falling back to rock center)
- Raids now wind down gracefully: when a raid ends its creatures stop hunting and wander off to despawn instead of being deleted instantly
   - New config RaidWindDownSeconds (default 60) sets how long creatures linger before the backstop runs
   - New config RaidForceDeleteStragglers (default on) force-deletes any creatures still present at the end of the window; disable to let them all despawn on their own
- Zone decay rate is now configurable
   - New config ZoneDecayLevelsPerHour (default 0.25) sets how many zone levels decay per real hour; 0 disables decay, higher values speed it up
   - Default decay slowed (one level every 4 hours, ~12 hours for a level-4 zone) and reduced frequency 

1.0.1

- Fixes monsters scaling in dungeons when not set
- Adds a configuration to enable the previous health font (UI, UseCustomHealthFont)

1.0.0

- Provides a simple configuration GUI
   - Can be turned off through configuration
   - Allows tuning some of the largest system knobs that otherwise require yaml editing
- Levelup chance Generators
   - Similar to color generators, these are simple definitions which allow building out complex or large level curves
   - Define a min, max, style (linear, exponential, gaussian), and chance to configure levelup chances
   - Multiple level generators can be used to provide unique level curves
- Adds boss kill based, scaling
   - As the world's bosses are defeated (global keys), levelup chances for creatures in each biome will change
   - The highest entry is selected, and optionally influences any biomes with custom levelup chances (uses level generators)
- Zone Scaling
   - Zones fill the map, they scale independantly. Regular kills in a zone will cause it to spawn stronger enemies.
   - Zones can be seen through a togglable overlay on the minimap
- Current Zone & Distance level can be optionally shown on the minimap now
- Fixes overlapping multiple boss name/healthbars, they are now stacked vertically at their full native width (spacing configurable via BossHealthbarStackSpacing)
- Fix for rare race condition that could result in players seeing a creatures as a different level with enough latency
- Adds a simple configuration for seperately limiting boss creatures levels
- Adds two missing icons to modifier icon display style
- Fixes a bug which would cause raids to silently fail almost immediately
- Added MultiplayerEnemyMinDamageTaken which caps the damage reduction provided to creatures from multiplayer scaling (default creatures take a minimum of 20% damage)
- Fixes DropThat compatibility so DropThat's item modifiers (durability/quality/custom stacks/EpicLoot/etc.) are applied to creature loot again
   - Note: DropThat item modifiers still do not apply to SLS-handled object loot (rocks/trees/destructibles), which keep SLS's level/distance scaling
- Some spelling fixes :) no promises, my spelling still sucks.
- Performance Optimizations for the Nemesis and Raid systems

0.21.0

- Adds configuration to allow setting and changing how modifier icons/stars are displayed
   - This now updates live
   - Supports disabling all star/icon changes for modifiers (just name changes)
   - Adds many of the missing Icon style displays for modifiers (note 2 are still missing and will be added as time permits)
- Fixes a chance that the nemesis system could error during player death (now pauses correctly)

0.20.7

- Fixes Raid network serialization occasionally running into errors starting

0.20.6

- Fixes Tames not properly inheriting levels from their parents by chance

0.20.5

- Fixed drop counts not scaling in some scenarios properly
- Fixed inverted drop individual vs stacked configs, moved these configs to LootSystem Section
- Nemesis system (delete config if you want the changes)
   - Removed boss faction settings for generic attack groups and biome defender groups
   - Added player current health check
   - Added custom loot for Nemesis creatures
   - Added a treasure troll for the plains at high threat levels (very low chance)

0.20.4

- Fixed Nemesis spawns not obeying the max level
- Fixed Lootbag item drops always spawning as individual items, now uses the preference system
- Fixed Nemesis key lookups not gating events from happening
- Added additional position conditionals for Biome Defender nemesis events
   - Updated Nemesis configuration version
   - Allows Nemesis events which are not tied to score
   - Ensured that Nemesis persistent log can't grow too big
   - Fixed an issue where the Nemesis system could be too kind on newly loaded players
   - Improved Nemesis logging details
- Fixes an issue which would disable a raid when it could normally find all spawn points

0.20.3

- Increased default raid configuration size (delete your RaidSettings.yaml if you want the new default)
- Fixed an issue where creatures would not become aggressive during raids or nemesis spawns
- Adds additional fallback for raids that fail to determine spawn points
- Improved flexibility of Nemesis spawn configuration, new default configuration (delete your NemesisSettings.yaml)
   - Adds Nemesis hunters that spawn when players are in a biome that is significantly ahead of their progression

0.20.2

- Improves compatibility with Custom Raids (both SLS Raids and Customs can be active now)
- Fixes a data consistency issue with merging spawn denial groups
- Fixes a harmless but spammy error when logging to the main menu
- Sets egg quality to level 1 for quantity egg production, quality egg production still allows higher levels (and fewer eggs)

0.20.1

- Fixes Nemesis system spawning the wrong attack groups
- Added docs for Nemesis system configuration
- Retuned damage levels for the nemesis system slightly, configs will be updated to the new version automatically

0.20.0

- Nemesis System initial release (Active by default)
   - The nemesis system is a active-reactive game master that regularly monitors your gameplay and manipulates the world around you
   	- Nemesis can spawn creatures, waves, minibosses, lootgoblins
   	- Nemesis can downgrade or upgrade the stars of newly spawned creatures
   	- Nemesis shares data with other nearby players, ensuring that a group of players gets an experience which roughly fits group average performance
- Fix for distance level calculation fallback not preferring custom bonuses
- Rewired EnableDistanceLevelBonus to specifically disable distance bonuses, not night or biome bonuses
- Adds compatibility for FiresGhettoNetworking, allowing server ownership of creature creation and modifications
- Adds a configuration option (default true) for all raids which extends their duration until the raid creatures are killed.
   - Creatures now have a maximum concurrent spawns (MaxSpawned) and a maximum number of times the spawner can fire (MaxSpawnTriggers)
- Creature setup time optimizations
- Creature damaged on frames before it is fully configured now tracks damage done instead of percentage damage done
- Fixed an edge case that could cause infinite duration raids or 30s raids

0.19.5

- Stamina and Eitr draining modifiers are now based on damage taken. Blocking is now effective against these, heavy damage creatures can completely drain your resources.
- Raid compatibility with Custom Raids

0.19.4

- Fixes boss music not playing when custom raids are configured

0.19.3

- Fix corpse sizing incorrectly, precaches corpse sizes

0.19.2

- Include missing assets
- Default API updates

0.19.1

- Improves size modification caching
- Improves shutdown transition when destroying raid objects
- Adds Key Anti-Affinity checks
- Adds configurable config polling to better support server-side live changes regardless of hosting provider
- Prevents API changes on null objects, such as already deleted creatures

0.19.0

- Custom Raids!
   - Adds a completely overhauled raid system
   - Concurrent raids are now supported (multiple raids can happen at the same time in different locations)
   - Raids can be configured to be triggered off Private Keys, Global Keys, and various other factors
   - Raid spawns can be heavily customized, level (and ranges of levels), modifiers, creatures etc
   - Raid announcements, durations etc can all be customized
   - Cooldown, time between raids, concurrent number of raids, max raids active on the server are all customizable
- Adds health modification change detection
- Improves creature health change application on configuration changes
- Night multiplied spawns can be configured to despawn during the day (default true)
- Improves value merging for distance_level_modifier when set specifically on a per-creature basis

0.18.13

- Level damage adjustment for custom damage per level settings now properly accounts for 0 stars and does not double count for higher stars
- Reduced logging for HUD changes
- Base damage modifiers are now included in logged calculations if you have DamageLogging enabled
- Improves cache rebuild when levelsettings.yaml is changed

0.18.12

- Updated default colorization for FallenValkyrie level 7-10 to be darker and less bright
- HUDS not showing creature modifiers in the creature name when being regenerated after moving out of range and back

0.18.11

- Fix for the `sls-kill-all` command to behave closer to vanilla
- Fix for infinitely high HP creatures not being killable

0.18.10

- Default player per level damage modifier fallback to 1
   Note: it is still not recommended to modify player attributes as it is not fully supported yet 
   if you do modify player attributes and need to revert consider running `sls-reset-player-modifiers`

0.18.9

- Damage calculation range fix for FireNova and PoisonNova

0.18.8

- Fixes per level damage not being applied correctly, race conditional
- Adds additional safety checks for Lifelink, Elemental Chaos and Fire/Poison Nova

0.18.7

- Volatile damage calculation safeguards

0.18.6

- Fixes boss modifier limit not being applied correctly (could inherit the major modifier limit instead)

0.18.5

- More safety checks for modifier effects
- Adds an activation sound effect for FireNova and PoisonNova
- Improves consistency of FireNova and PoisonNova damage

0.18.4

- Reblances levelup requirements for Evolving modifier
   - Increased requirement for creatures to level up
   - Heal creatures when they do level up
- Fixes UI cache not updating when a creatures modifiers are removed
- Fixes UI cache not transitioning from level 5 to level 6 display properly

0.18.3

- Fixes infinite damage redirection loop with multiple lifelink bosses

0.18.2

- Fix Elemental chaos config lookup
- Disable some debug logging
- Clears cache when networked creature changes are sent to prevent stale caches
- Adds additional optional logging for combat details
- Adds default config for Evolving modifier
- Fixes per-level damage modifiers not applying properly for level 0

0.18.1

- Fix modifier name cache reset

0.18.0

- Added resizing options for enemy healthbars
   - Added an option to enable health numbers on healthbars
- Redesigns Modifier icons to all follow star designs
- Adds new Modifiers: (Delete your modifiers.yaml if you want the new ones)
   - Fire Resistant
   - Frost Resistant
   - Poison Resistant
   - Spirit Resistant
   - Elemental Chaos
   - Evolving
   - Poison Nova
- Improves compatibility with mods that add custom spawners
- Fixes Zil & Thungr combo spawning too many Zils when killing Thungr
- Nerfed lifelink significantly
- Reduced particle visibility for distant modifiers
- Increased the speed at which characters are deleted when they are selected for deletion
- Adds default spawn multipliers for all mini-bosses to prevent spawn multiplying
- Fixed a bug that would cause per player scaled drops to multiply too much
- Fixed a potential cache collision from re-used characters
- Fix for erratic level 1 spawning from the spawn command

0.17.13

- Fix for incorrect level selection

0.17.12

- Fix for incorrect level selection
- Fix for NPE when displaying creature breeding disabled

0.17.10

- Fixes biome based configurations mutating the "all" biome configuration (Thanks Warp!)
- Ensure that custom levels beyond the default levelup can properly select the highest level (assuming it is under the global max level)
- Removes spirit, pickaxe, and chop from damage totals used to calculate modifier bonus damage

0.17.9

- Fixes creature spawn rate reduction, and allows it to properly operate up to 100% (completely removing creature from spawning)
- Added additional safety checks for creating rings outside the valid size ranges on the map (negative rings will be ignored)
- Modified how distance level bonus influence is applied to level calculations. It now only applies to the bonus exclusively, instead of the whole value

0.17.8

- Adds a configuration (off by default) to allow bred animals to be infertile (50% chance, configurable)
- Fixes OnePerPlayer configuration giving one more piece of loot than intended
- Ensures trees destruction show their destruction effects
- Isolates Async code

0.17.7

- Adds a configuration (off by default) to allow bred animals a chance (5%, configurable) of gaining an additional level compared to their parents (up to max)
- Delays minimap drawing till after configuration is synced from dedicated servers

0.17.6

- Changes Egg scaling to increase productivity instead of level (configurable)
   - This means that higher level creatures will produce more eggs, but the eggs themselves will not be higher level
- Adds a configuration option to enable force level scaling for drops which normally do not scale (trophies)

0.17.5

- Fixes an issue where fish could cause stuttering when interacting with the prep table

0.17.4

- New default configurations require that you delete your existing configuration if you want to use them!
   - Fixes default loot distance modifiers providing too much loot
   - Adjusts the default levelup chance to reduce high levels in the early game
   - Adjusts level distance modifiers to allow for a wider range of levels at all distances
- Ensures per level damage modifiers are applied correctly to boss types
- Improves resiliance to invalid configurations

0.17.3

- Improves performance when used with DropThat

0.17.2

- Health coalesence multiplication fix

0.17.1

- Improves compatibility with Drop That

0.17.0

- Initial fix for riding issues with large or extremely large Lox and Askvin
   - Changes are applied when the creature is loaded (or reloaded)
- Improves loot drop calculations to be more explicit in how each factor impacts the total loot
- Ensures that tamed creatures custom names are shown instead of name modifiers
- Enables performance modifications for treebase drops, along with custom loot table definitions

0.16.2

- Fixes a crash when mining Flametal

0.16.1

- Improves support for rock leveling
- Prevents potential exponential rock leveling on massive multipart drop tables

0.16.0

- Performance patch support for Minerock
- Improves compatibility between DropThat and SLS
- Adds in loot table support for non-creature loot objects
   - Loot table dump command now supports including all of these (trees, DropOnDestroy, Minerock, Minerock5)
- Safety checks for removing all of the colorization configuration
- Adds a command to kill nearby creatures and prevent them from dropping loot
- Adds documentation for existing terminal commands

0.15.3

- Configuration to set ordering of name generation for creatures with modifiers
- Updated documentation to cover how to limit and expand star levels based on distance
- Fixes requiredModifiers not being enforced correctly and exposes configuration to set requiredModifiers per creature
   - requiredModifiers can be added to any entry in creatureConfiguration, modifiers must include their name and type eg: 
     Boar:
   	requiredModifiers:
   	  Fire: Major

0.15.2

- Improves max level reduction
- Fixes level distance bonuses being applied as a multiplier instead of additive
   - distance multipliers are still available in the form of biome distance scalars, by default these are used to curb extreme distance difficulty increases for Ashlands and DeepNorth
- Adds client side configuration to enable viewing final level calculation math and all modifiers that were applied to reach that level

0.15.1

- Prevents stone level scaling from being negative
- Fixes an issue where logs could spawn more than 2 segments on destruction
- Fixes an issue where deleting your configuration could result in loot table errors

0.15.0

- Adds loot leveling for Rocks (no size changes for rocks)
   - Levels and loot increase configurable
   - Rock levels are disabled by default (enable in the configs)
- Adds a performance patch for wood, rock and destructible drops that will combine drops to help reduce heavy load when gaining massive amounts of resources

0.14.6

- Consistency improvements for delayed growth setup for bred creatures
- Recoloring of overleveled creatures that get rerolled

0.14.5

- Simplifies Modifier method setup calls
- Ensure creature modifier prefixes are limited properly
- Ensure creature modifiers are rolled by zowner or secondary

0.14.4

- Fixes cache reset before znet has updated character level
- Fixes level on-change running during loading
- Fixes children exploding instead of growing up
- Fixes Fish and Bird onchange settings running too early when connecting to a server

0.14.3

- Fixes drops being left behind by creatures selected for deletion
- Fixes spawned creatures not having their levels set correctly in some cases

0.14.2

- Significantly improves cache updates for networked changes to creature modifiers and levels
- Force rerolling of creatures above the maximum level will now also resize them to the correct size
- Fixes a race condition where tamed breeding creature would not inherit the correct level
- Fixes and issue where splitters would not always inherit the correct level from the parent creature

0.14.1

- Fixes an issue where deterministic tree scaling would result in no wood if the tree rolled level 0
- Added in-game size-rescaling for trees, fish, and birds, changing size configurations will now automatically rescale

0.14.0

- Improves UI synchronziation for creature modifier names
- Fixes an error when Lifelink triggers
- Changes configuration for Trees, Birds and Fish to have their own config section
  - Trees now level up primarily based on distance to spawn/center of the world.
  - Fish size is now reduced

0.13.0

- Added a configuration option to force-reroll creatures that are over the specified max level when loaded
- Enables Map Ring redraw/removal when setting is changed
- Added more safety checks to BossSummoner
- Fixes an issue where characters would not get size increases
- Re-implements character client side cache
- Modifiers Updated (please delete your Modifiers.yaml)
   - Changes Modifier name generation to be deterministic, removes multiple prefix and postfix options
   - Updated Modifier configuration with user important details being centric

0.12.1

- Logged detailed scaling changes for damage per level
- Fix splitter not splitting when using fallbacks
- More cache invalidation for UI related and setup changes
- Fix size scale setting weapon sizes to zero before a creature has scale data
- Fixed Character specific level tables not being used if a biome table was available

0.12.0

- Fixes an issue where resistant creatures would be immune to damage (does not apply to creatures that have already rolled this modifier)
- Improves modifier and level consistency across players with variable connection speeds and latencies
- Provides more information for damage recieved and dealt modifiers, can be enabled/disabled seperately in the config (per client)
- Changed a number of base values in the modifiers configuration, it is recommended you delete your configuration
- Some modifiers no longer run regularly and instead are setup once, again required that you regenerate your configuration (delete Modifiers.yaml)
- Tuning
   - Nerfed the boss modifier for resist pierce to be 25% resistance plus 2% per level
   - Buffed Lootbags to provide more loot, also makes the creature slightly higher health and move faster
   - Capped resistance modifiers at 80% resistance, nerfed default resistance values
   - Increased the delay for the boss affix summoner
   - Significantly reduced brutal speed modifiers (some old configs had these at 100%+ increases)
   - Improved fallback logic for Splitter

0.11.8

- Improves cache consistency between clients
- Provides configuration to allow tames to pass modifiers to child creatures
- Allows configuring tame modifier inheritence
- Ensures children maintain their modifiers when growing up

0.11.7

- Asynchronous creature checks and fallback for creature setup
- Fixes server error when attempting to build minimap rings

0.11.6

- Fixes baby creatures not inheriting level when not using randomized baby levels

0.11.5

- Adds safety checks when removing all level definitions

0.11.4

- Expands DistanceScaleModifier to also work when applied to specific creatures

0.11.3

- Fixes character specific level settings not always overriding default level settings
- Provides a way to set force level control for specific creatures
   - Training dummy is default included in this
- Expanded caching of short term character entries to prevent constant recalculation
- Fixed tame level settings not being under the correct category

0.11.2

- Fixes spawn levels not being set for creatures created from loot table drops
- Fixed level not always being accounted for in loot table drop calculations
- Set default custom loot drops for Oozers (blobElite)
   - No longer spawns 2 blobs per level, now spawns up to 6 blobs, moderately scaling by level
   - Delete your CreatureLootSettings.yaml if you want the new default

0.11.1

- Fixes distance calculations for dungeons incorrectly accounting for height

0.11.0

- Adds Ring drawing for spawn distance modifiers for visualization
 - This is toggleable via config, and can be shown/hidden per player from the map itself
 - Color configuration for all rings
 - Rings are automatically redrawn when configuration changes
 - Retuned all of the default distance modifiers to allow slightly more regular difficulty increases, along with much higher star levels
   - Delete your config (LevelSettings.yaml) if you want the new default
- Fixes an error when trying to spawn null creatures
- Improves spawning not leveling up creatures from certain spawners

0.10.2

- Compatibility improvements for spawner level control when the cache can't be built
- Improves compatibility for mods that break or remove spawner effects

0.10.1

- Fixed a bug (from 0.10.0) which prevented many of the random world spawns from happening
- Tuned level up table to have more staggered steps towards the higher levels
- Disabled a few more optional debug logs
- Added back in default loot table modifications for greydwarves to drop greydwarf eyes
- "Fixed" a feature where extremely high level creatures with many modifiers would always spawn with splitter, and multiply on kills

0.10.0

- Adds night-time specific configuration
   - Disable certain spawns at night, per creature/biome (disable night spawns caused by boss kills etc)
   - Modify spawn rates at night, per creature/biome
   - Modify level scales at night, per creature/biome (higher or lower chances of high level creatures)
- Fixes a bug where creature items would be twice as big as intended
- Adds configuration options to controll which spawners SLS controls (now defaults manual spawns to not be controlled)
   - This improves support for mods which manually spawn creatures
- Updates default level scales to be more aggressive and increase weight further from center
- Disabled some optional debug logging
- Rebalances default level settings configuration

0.9.6

- Fixes lifelink always applying a damage reduction, now only applies damage reduction if there is a target to redirect damage to
- Adds: BiomeMinLevelOverride and CreatureMinLevelOverride, which will ensure creatures spawn at least at the specified level

0.9.5

- Colorization configuration (allow skipping colorization)
- API fix for colorization not applying correctly

0.9.4

- Improves configurability of local player damage and health scaling
- Fixes frost modifier effect for Linux
- Reduced default spawn rate config

0.9.3

- Limits the number of modifiers that can be applied due to star level for both modifier types, instead of individually
- Prevents global and per creature configuration from stacking health modifiers
- Per level damage modifications take the highest priority modifier only
- Retuned many of the damage modifers to be less aggressive in their damage increases

0.9.2

- Ensures manually spawned creatures get a fair chance of modifiers
- Fixes CreatureLootSettings.yaml not being live reloaded after edits
- Added a global exclusion list for modifiers that will apply to all creatures, defaults to just TWIG
   - Delete your config (Modifiers.yaml) if you want the new default
- Fixes modifier configuration not being reloaded on startup
- Removed the immediate explosion from FireNova, it now only has the 1 second delayed explosion

0.9.1

- Fixes NPE when no loot configuration is defined
- Fixes NPE when trying to add a modifier that does not exist
- Improves support for huge numbers of modifiers on creatures
- Adds API functions to add modifiers to creatures

0.9.0

- Partial API support, manipulation of creature levels, color, attributes, damage, damage recived
- Reduces spawn multiplier checks during race conditions
- Prevents UI errors when creatures have duplicated modifiers

0.8.4

- Compatibility improvements for mods with weaponless characters
- Adds a config option to limit the number of modifiers that a creature gets to its star level in addition to the max number of modifiers
- Updated name generation to always add available modifiers
- Added a config option to avoid spawn multiplying boss creatures

0.8.3

- Compatibility improvement with mods that manipulate or add star entries

0.8.2

- Fix for splitting tames not spawned tamed minions
- NPE fix for creatures death before setup
- Config spelling fix for LootDropCalculationType

0.8.1

- Adding incompatibility with CLLC
- Improving compatibility for spawned child creatures multiplied by biome multipliers
- Improving multiplier compatibility for spawn command and boss spawns
- Adding initial translations for 26 languages

0.8.0

- Public release