abilities.yml defines the 9 combat abilities that make elites more than just stat-boosted mobs. Each ability has its own activation rules, cooldowns, and per-tier scaling.
Common Fields
Every ability shares these settings:| Field | What it does |
|---|---|
isEnabled | Master toggle for the ability. |
chancePerTier | Probability that an elite of each tier gets this ability when it spawns. 1.0 = guaranteed. |
cooldownSecondsPerTier | Minimum time between uses for each tier. |
gate | Weapon category restrictions. Only mobs holding weapons from the allowed categories can use this ability. |
Ability Gating
The ability gating system controls which elites can use each ability. When a mob spawns as an elite, RPGMobs checks three conditions before granting an ability:- Linked mob rule keys — the elite’s matched mob rule key must appear in the ability’s
linkedMobRuleKeyslist. - Per-entry tier enablement — each linked entry has its own per-tier toggle array. The entry’s tier toggle must be enabled for the elite’s tier.
- Weapon category gate — the elite’s equipped weapon must belong to one of the ability’s
allowedWeaponCategories.
linkedMobRuleKeysaccepts both individual mob rule keys (e.g."Goblin_Duke") and category keys (e.g."category:Skeletons"). A category key includes all mob rules within that category.excludeLinkedMobRuleKeysremoves specific mob rule keys that would otherwise be included by a category. For example,"Skeleton_Incandescent_Head"is excluded from Charge Leap even though theSkeletonscategory is linked.allowedWeaponCategoriesrestricts the ability to mobs wielding weapons from the listed categories. This prevents ranged mobs from using melee-only abilities like Charge Leap.
Per-World Overlays
Abilities can be configured per-world viaabilityOverlays in the overlay system. Each world can define its own set of linked mob entries with independent per-tier toggles, allowing you to enable or disable abilities for specific mobs on a per-world basis without changing the base configuration.
Charge Leap
A physics-based attack where the elite launches itself at a nearby player, dealing slam damage on impact.| Setting | What it does |
|---|---|
minRange / maxRange | The elite will only leap if the target is within this distance range. |
faceTarget | Whether the mob turns to face the player before leaping. |
slamBaseDamagePerTier | Flat damage dealt on impact for each tier. |
applyForcePerTier | Launch velocity force. Higher values mean faster, longer leaps. |
slamRangePerTier | Area-of-effect radius for the slam damage. |
knockbackLiftPerTier | Upward knockback applied to nearby players on landing. |
knockbackPushAwayPerTier | Horizontal knockback (positive values pull inward). |
knockbackForcePerTier | Overall knockback strength. |
Heal Potion
Allows the elite to drink a healing potion when its health drops below a threshold. Players can interrupt the heal by dealing enough hits during the drinking animation.| Setting | What it does |
|---|---|
minHealthTriggerPercent / maxHealthTriggerPercent | The health threshold range at which the heal triggers. A random value between min and max is chosen once when the elite spawns. 0.50 means the elite tries to heal at 50% HP. |
instantHealChance | Chance to use an instant heal (restores health immediately) vs. regeneration over time. 1.0 = always instant. |
instantHealAmountPerTier | Fraction of max health restored by instant heal. 0.25 = heals 25% of max HP. |
npcDrinkDurationSeconds | How long the drinking animation lasts. Players have this window to interrupt it. |
npcDrinkItemId | The item the mob visually holds while drinking. |
Undead Summon
Allows elites to summon reinforcement minions during combat. By default, undead elites summon undead minions (skeleton archers, zombies, wraiths), Goblin_Duke summons goblins, and Trork_Shaman summons trorks. When the summoner dies, all its minions despawn.| Setting | What it does |
|---|---|
maxAliveMinionsPerSummoner | Maximum number of summoned minions alive at once per summoner. Capped at 0-50. |
skeletonArcherWeight | Weight for skeleton archers in the summon pool. Higher = more likely. |
zombieWeight | Weight for zombie minions. |
wraithWeight | Weight for wraith minions. |
aberrantWeight | Weight for aberrant zombies in the zombie summon pool. |
excludeFromSummonPool | Roles excluded from the auto-generated summon pool. Prevents summoners from summoning themselves (e.g., Trork_Shaman won’t summon other Shamans). |
roleIdentifiers | List of role name fragments used to pick which variant of minion gets summoned. The summoner’s own role is checked against this list to pick a matching variant. For example, a Goblin_Duke matches "Goblin_" and will summon other goblin NPCs. |
Role-Based Summoning
The summon system automatically builds per-role summon pools from the mob rules. When a summoner’s role matches aroleIdentifier, only NPCs matching that same identifier are added to its summon pool:
- Undead summoners (skeletons, zombies, wraiths) summon other undead variants
- Goblin_Duke summons other goblins (matching
"Goblin_") - Trork_Shaman summons other trorks (matching
"Trork_"), excluding itself viaexcludeFromSummonPool
linkedMobRuleKeys to undead mobs, Goblin_Duke, and Trork_Shaman by default. To allow other mob types to summon, add them to the ability’s linkedMobRuleKeys (either individually or via a category) and add an appropriate prefix to roleIdentifiers so the summon system knows which pool to build for them.
Dodge Roll
A reactive and preemptive defensive ability. When a nearby player starts attacking, the elite has a chance to dodge sideways with a brief invulnerability window. Charged attacks give a boosted dodge chance. Detected byRPGMobsPlayerAttackDetectionSystem which reads player attack interactions in a cone.
| Setting | What it does |
|---|---|
dodgeChancePerTier | Probability that the elite dodges when triggered. Charged player attacks boost this chance. |
dodgeForce | Lateral dash velocity. Higher values mean faster, longer dodges. |
invulnerabilityDurationPerTier | Duration in seconds of the invulnerability window during the dodge. |
Multi Slash Short
Quick 1-2 hit strikes with 3 random variations per weapon type. The fastest of the Multi Slash abilities, designed for interrupting player actions. Available to all tiers.Multi Slash Medium
2-4 hit combos with 2 random variations per weapon type. A balance of damage and recovery time. Available T2+.Multi Slash Long
4-6 hit full combos with 1 variation per weapon type. High damage output but long wind-up and recovery times give players counter windows. Available T3+.Weapon Variants
All three Multi Slash abilities support 8 weapon variants, each with unique animations, sounds, trails, and timing:| Variant | Short (hits) | Medium (hits) | Long (hits) | Signature moves |
|---|---|---|---|---|
| Swords | 1-2 | 3 | 6 | Spins and overhead jump finisher |
| Longswords | 1-2 | 3 | 4 | Wide sweeps and stab finisher |
| Daggers | 1-2 | 3 | 4 | Razor strikes and kick finisher |
| Battleaxes | 1 | 2 | 3 | Whirlwind and downstrike finisher |
| Axes | 1-2 | 3 | 4 | Charged swings and upswing finisher |
| Maces | 1-2 | 2 | 3 | Uppercut and falling slam finisher |
| Clubs | 1-2 | 2 | 3 | Side bashes and overhead slam |
| Spears | 1-2 | 3 | 5 | Stab and spin sweep finisher |
Enrage
A berserk transformation where the elite drops its weapon and enters a 20-second rapid punch chain. The mob cycles through 3 random variation patterns of light and heavy punches, then dies from exhaustion with normal loot and XP drops. Available T2+.| Setting | What it does |
|---|---|
triggerHealthPercentPerTier | Health threshold below which enrage can trigger. 0.30 means 30% HP. |
lightPunchDamagePerTier | Damage per light punch (0.45s each, 2.0 range). |
heavyPunchDamagePerTier | Damage per heavy punch (0.65s each, 2.5 range, with visual trails). |
enraged flag persists across chunk unload/reload).
Volley
A ranged projectile burst for mobs wielding bows, crossbows, or guns. The mob aims upward briefly, then fires a spread of projectiles. Available T3+.| Setting | What it does |
|---|---|
volleyTriggerChancePerTier | Probability of triggering per combat tick evaluation. |
minRange / maxRange | Target must be within this distance range. |
projectileCountPerTier | Number of projectiles fired in the burst. |
spreadAnglePerTier | Spread angle in degrees between projectiles. |
baseDamagePerProjectilePerTier | Damage per individual projectile. |
Global Ability Cooldown
After any ability completes, a random cooldown of 1-3 seconds prevents the next ability from triggering. This prevents ability spam in group combat.Ability Gating Summary
Abilities are no longer filtered by combat personality. Instead, each ability uses the linked mob rule system with per-entry per-tier toggles. This gives full control over which mobs can use which abilities at which tiers, configured through the Admin UI or theabilityOverlays in per-world overlays.
Abilities are evaluated in feature registration order - the first ability whose gate passes wins. A global cooldown (1-3 seconds, configurable) prevents immediate ability chaining after any ability completes.