LevelDeath
A God Hand-inspired dynamic difficulty director for ULTRAKILL.
About this mod Author’s original text
Level Death
A God Hand-inspired dynamic difficulty mod for ULTRAKILL.
Level Death adds a performance-based difficulty director that reacts to how well you are playing. Stylish play raises the meter. Higher meter levels make enemy waves more dangerous through upgrades, replacements, duplicates, enrage, and radiance.
The goal is simple: What would ULTRAKILL be like if Hell was actively trying to kill you?
Features
Four Level Death phases
| Meter | Phase | What changes |
|---:|---|---|
| Level 1: Normal | 0-100% | Mostly vanilla |
| Level 2: Enraged | 100-200% | Enraged enemies can begin appearing |
| Level 3: Radiant | 200-300% | Tier-1 radiant enemies can begin appearing |
| Level Death | 300-400% | The director reaches maximum pressure |
Smart Director:
Level Death looks at enemy spawn waves instead of rolling randomly for single enemies. This keeps levels recognizable while still letting the game escalate when you are playing well.
Depending on your meter and settings, Level Death can:
- Enrage existing enemies
- Make enemies tier-1 radiant
- Replace some enemies with stronger enemies
- Duplicate safe enemies from the current wave
- Pull from a curated global enemy pool
Replacements are intended to be stronger than the enemy being replaced. The mod is designed to increase pressure, not act like a randomizer.
Curated global enemy pool
By default, Level Death can draw from a curated global pool of normal enemies. This allows stronger enemies to appear earlier when the meter is high enough.
Bosses, Idols, Prime Souls, major set-piece entities, and other special or unstable enemies are intentionally blocked.
Prefer a safer experience? Switch the enemy pool to Limited Enemy Pool, which focuses only on enemies that appear within the level.
Configgy support
Level Death supports Configgy for in-game configuration. It also generates a normal BepInEx config file after first launch:
ULTRAKILL/BepInEx/config/oai.ultrakill.leveldeath.cfg
Settings include:
- Enable or disable the mod
- Show or hide the meter
- Change the starting difficulty
- Choose Global Enemies or Limited Enemy Pool
- Tune rates of duplicates, replacements, and enemy upgrades
- Enable Cyber Grind-only mode
Note: changing the starting difficulty applies when a scene loads. Restart the current level or load another level after changing it.
Recent Changes:
0.8.1
- Fixed Strays and Filth not getting replaced by stronger enemies (Prelude is hard af now)
0.8.0
- Sentries, Insurrectionists, Mirror Reapers and Minotaurs can now appear.
- New Feature: 'Large Enemies', includes Hideous Masses, Insurrectionists, Mirror Reapers and Minotaurs. Large enemies require at least five non-Filth natural enemies in the wave, require ground below, cannot replace flying enemies, and reduce other spawns when one appears. Large enemies are also 50% less common and have a high cooldown.
- Added cooldowns to 'mini-boss' and 'boss' enemies. These don't prevent them from spawning, but make it less likely they'll be chosen.
- Increased damage meter loss by 30% by default through Meter -> DamagePenaltyMultiplier. (Felt like staying on 400% was too easy. Probably still is though)
- Added protection for softlock-prone arenas: if a natural spawn wave contains two or more Maurices, Level Death will not type-replace those Maurices. (For some reason, replacing Maurices was a common softlock)
- Retuned enemy rarity: Guttertanks are more common, Hideous Mass are rarer.
- Removed Very Cancerous Rodent and Puppets from the spawn pool.
- Optimized a bit
Installation
Mod manager
Install through Mod Manager or r2modman and launch ULTRAKILL through the manager.
Manual install
- Install BepInEx for ULTRAKILL.
- Install Configgy if you want the in-game config menu.
- Copy LevelDeath.dll into:
ULTRAKILL/BepInEx/plugins/
Compatibility and Known Bugs:
Any mod that deals with enemy replacements may cause soft locks. While a few efforts have been made to avoid them, starting at the ch
Install & use Install: BepInEx plugin
- The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
- Recommended: use a community mod manager (such as r2modman) — pick this game, import the mod, and the manager sets up BepInEx and its dependencies for you.
- Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
- Launch the game — the BepInEx console logs every plugin it loads; seeing this mod in the log means it is installed.
Mods with listed dependencies need those installed too, or they will not load. Options are usually changed in-game or in the plugin's config file.
Install these first, or the mod will not work: