Enemies Balancer

v0.0.1·Updated 2026-03-29

This is a library for balancing enemies with Mods Communicator. Create rules that changes worlds enemies stats.

About this mod Author’s original text

Outward Enemies Balancer

Outward mod that allows you to modify enemy stats (health, damage, resistances, etc.) and change enemy factions using Mods Communicator to send events.

Deeper Explanation

This mod hooks into the SL.OnSceneLoaded method and evaluates the

BalancingRules and FactionRules. These rules

determine whether your stat modifications should be applied to an enemy.

The mod acts as a central Enemies Balancer that stores simple,

abstracted logic and handles more complex game mechanics internally. Its state

can be saved or loaded using XML.

When you publish an event, the rules are applied immediately to all

matching enemies in the current scene.

Multiple matching rules stack and are all applied to the same enemy.

By default (without specific targeting), rules apply to all regular enemies (non-boss,

non-unique). Use isForBosses, isForBossPawns,

isForStoryBosses, isForUniqueArenaBosses, or

isForUniqueEnemies to target special enemy types.

Other mods can inspect, modify, or react to the BalancingRuleRegistryManager's

dynamic state and see how different mods interact with it.

How to use it

Firstly, install [Mods

Communicator](

After that, you can publish and subscribe to Enemies Balancer events.

All events are registered and visible in Mods Communicator's logging system.

However, it is still recommended to read the event descriptions below and

review the examples. Many event fields are optional and give you extra control,

but they are not required.

Value Modifier Types

ValueModifierType determines how the stat modification is applied:

Direct - Sets stat to exact value

Scale - Multiplies stat (1.5 = 150%)

Add - Adds value to current stat

Default: Scale when using dictionary approach

Stat Types

Vital Stats

Stat Name

Description

MaxHealthMaximum health

MaxStaminaMaximum stamina

MaxManaMaximum mana

HealthRegenHealth regeneration rate

StaminaRegenStamina regeneration rate

ManaRegenMana regeneration rate

Damage Types

Stat Name

Description

PhysicalDamagePhysical damage output

EtherealDamageEthereal damage output

DecayDamageDecay damage output

ElectricDamageElectric damage output

FrostDamageFrost damage output

FireDamageFire damage output

RawDamageRaw damage output

Resistances

Stat Name

Description

PhysicalResistancePhysical resistance (%)

EtherealResistanceEthereal resistance (%)

DecayResistanceDecay resistance (%)

ElectricResistanceElectric resistance (%)

FrostResistanceFrost resistance (%)

FireResistanceFire resistance (%)

Protections

Stat Name

Description

PhysicalProtectionPhysical protection (flat)

EtherealProtectionEthereal protection (flat)

DecayProtectionDecay protection (flat)

ElectricProtectionElectric protection (flat)

FrostProtectionFrost protection (flat)

FireProtectionFire protection (flat)

Environmental Stats

Stat Name

Description

ColdProtectionCold temperature protection

HeatProtectionHeat temperature protection

ColdRegenRateCold regeneration rate

HeatRegenRateHeat regeneration rate

CorruptionProtectionCorruption protection

WaterproofWaterproof rating

Combat Stats

Stat Name

Description

ImpactImpact damage

ImpactResistanceImpact resistance

MovementSpeedMovement speed

AttackSpeedAttack speed

SkillCooldownModifierSkill cooldown modifier

DodgeInvulnerabilityModifierDodge invulnerability modifier

GlobalStatusResistanceGlobal status resistance

Events

Check the parameter tables to understand which values are required. Event

descriptions below are intentionally abstract — always refer to the tables for

the exact field requirements.

Publish

Mod Namespace: gymmed.enemies_balancer_*

Make sure to publish only after Enemies Balancer has initialized. I

recommend adding it as a dependency in your mod, or publishing it before/after

ResourcesPrefabManager.Load has finished.

Add Balance Rule

Event Name: AddBalanceRule

Full balancing rule with all targeting options and stat modification

Install & use Install: BepInEx plugin

  1. The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
  2. 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.
  3. Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
  4. 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.

Dependencies

Install these first, or the mod will not work:

GymMed-Mods_Communicatorsinai-dev-SideLoaderBepInEx-BepInExPack_Outward

File & checksum

Filename
Enemies_Balancer-0.0.1.zip
File size
179.1 KiB