Configuration
Every Tribulation setting, organized by section. Tune values by hand or reload them live without a restart.
File Location & Reload
The config file is auto-generated with defaults on first launch at:
.minecraft/config/tribulation.json
Server operators can apply changes without a restart with:
/tribulation reload
Out-of-range numeric values are clamped on load — hand-edited typos are silently corrected. Newly spawned mobs use the updated values; existing mobs keep their current modifiers until they despawn.
general
Core settings that control the overall scaling system.
| Key | Type | Default | Description |
|---|---|---|---|
maxLevel | int | 250 | Maximum player difficulty level |
levelUpTicks | int | 72000 | Ticks of playtime per level (72000 = 1 hour) |
mobDetectionRange | double | 32.0 | Range (blocks) to find the player(s) that drive a mob's scaling |
scalingMode | enum | NEAREST | Which player level drives a mob when several are in range: NEAREST, AVERAGE, or MAX |
excludedEntities | string[] | ["the_bumblezone:cosmic_crystal_entity"] | Entity IDs exempt from all scaling |
notifyLevelUp | boolean | true | Show chat message on level up |
notifyLevelUpShowTier | boolean | true | Include tier info in level-up notification |
{
"general": {
"maxLevel": 250,
"levelUpTicks": 72000,
"mobDetectionRange": 32.0,
"scalingMode": "NEAREST",
"excludedEntities": ["the_bumblezone:cosmic_crystal_entity"],
"notifyLevelUp": true,
"notifyLevelUpShowTier": true
}
}
timeScaling
Toggle for the time/level scaling axis.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | true | Whether player level affects mob stats |
distanceScaling
Controls how horizontal distance from world spawn boosts mob stats.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | true | Enable distance scaling axis |
startingDistance | double | 1000 | Blocks from spawn before scaling begins |
increasingDistance | double | 300 | Blocks per additional factor step |
distanceFactor | double | 0.1 | Factor added per step |
maxDistanceFactor | double | 1.5 | Maximum distance factor |
excludeInOtherDimensions | boolean | true | Only apply in the Overworld |
{
"distanceScaling": {
"enabled": true,
"startingDistance": 1000,
"increasingDistance": 300,
"distanceFactor": 0.1,
"maxDistanceFactor": 1.5,
"excludeInOtherDimensions": true
}
}
heightScaling
Controls how Y-level deviation from sea level boosts mob stats.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | true | Enable height scaling axis |
startingHeight | double | 62 | Y-level baseline (sea level) |
heightDistance | double | 30 | Blocks of Y deviation per step |
heightFactor | double | 0.1 | Factor added per step |
maxHeightFactor | double | 0.5 | Maximum height factor |
positiveHeightScaling | boolean | true | Scale mobs above baseline |
negativeHeightScaling | boolean | true | Scale mobs below baseline |
excludeInOtherDimensions | boolean | true | Only apply in the Overworld |
moonPhaseScaling
Controls the nighttime moon-phase threat bonus. A triangle curve peaks at the full moon and tapers to zero at the new moon, applied to the position-scaled combat stats (health, damage, armor, toughness) on Overworld-type nights.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | true | Enable moon-phase scaling axis |
maxBonus | double | 0.1 | Bonus factor at the full moon (0 disables the axis) |
surfaceOnly | boolean | false | Only apply to mobs at or above surfaceY |
surfaceY | double | 63 | Minimum Y for the bonus when surfaceOnly is on |
The axis applies only at night and only in dimensions with a daylight cycle (sky light, no ceiling). It never affects time-only stats like speed and follow range.
{
"moonPhaseScaling": {
"enabled": true,
"maxBonus": 0.1,
"surfaceOnly": false,
"surfaceY": 63
}
}
bloodMoon
Rare full-moon nights of heightened danger, with a red sky and denser spawns.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | true | Enable Blood Moon events |
chance | double | 0.25 | Probability that a full-moon night becomes a Blood Moon (0.0–1.0) |
moonBonusMultiplier | double | 3.0 | Multiplier applied to the moon-phase scaling bonus during a Blood Moon |
spawnCapMultiplier | double | 2.0 | Multiplier applied to the hostile mob spawn cap during a Blood Moon |
blockSleep | boolean | true | Prevent players from sleeping through a Blood Moon |
clientEffects | boolean | true | Show the red sky tint and play the warning sound when a Blood Moon rises |
dimensionOffsets
A flat level offset per dimension, added to the effective level used for mob stat scaling and tier-gated abilities in that dimension. The Nether and End only receive the time axis (distance and height are Overworld-only), so a baseline offset restores the intended difficulty escalation there. The offset never touches the player's stored level, HUD readout, tier notifications, or death penalties.
| Key | Type | Default | Description |
|---|---|---|---|
minecraft:the_nether | integer | 25 | Levels added to mobs in the Nether |
minecraft:the_end | integer | 40 | Levels added to mobs in the End |
Keys are dimension ResourceLocation strings, so modded dimensions can be tuned too. Values are non-negative integers (negatives are clamped to 0 on load); set an entry to 0 to disable its offset. The effective level after the offset is still capped by general.maxLevel.
{
"dimensionOffsets": {
"minecraft:the_nether": 25,
"minecraft:the_end": 40
}
}
biomeOffsets
A flat level offset per biome, added to the effective level used for mob stat scaling and tier-gated abilities — the biome counterpart to dimensionOffsets, and the two stack additively. Keys are biome IDs or #-prefixed biome tags; an exact biome-ID entry wins over tags, and among overlapping tags the largest offset applies. Like the dimension offset, it never touches the player's stored level, HUD readout, tier notifications, or death penalties.
| Key | Type | Default | Description |
|---|---|---|---|
minecraft:deep_dark | integer | 30 | Levels added to mobs spawning in the Deep Dark |
Keys are biome ResourceLocation strings (minecraft:deep_dark) or biome tags (#c:is_swamp), so modded biomes and whole categories can be tuned too. Values are non-negative integers (negatives are clamped to 0 on load); invalid keys warn and are skipped. The effective level after the offsets is still capped by general.maxLevel, and /tribulation debug reports the active biome offset at the player's position.
{
"biomeOffsets": {
"minecraft:deep_dark": 30,
"terralith:haunted_forest": 20,
"#c:is_swamp": 10
}
}
structureBoosts
A flat level offset per lootable structure, added to the effective level used for mob stat scaling and tier-gated abilities — the structure counterpart to dimensionOffsets and biomeOffsets, stacking additively with both. A mob spawning inside a configured structure's overall bounding box (inflated by marginBlocks) uses the boosted level, so its stats, tier-ability rolls, and bonus XP all rise together. Only the spawn position counts — a mob that wanders in later is unaffected. Like the dimension and biome offsets, it never touches the player's stored level, HUD readout, tier notifications, or death penalties.
| Key | Type | Default | Description |
|---|---|---|---|
marginBlocks | int | 16 | Blocks the structure's bounding box is expanded by when testing membership. Clamped to 0–128 on load |
boosts | map | see below | Structure ID or #-tag → level offset. An empty map disables the feature entirely |
| boosts key | Type | Default | Description |
|---|---|---|---|
minecraft:fortress | integer | 20 | Levels added to mobs spawning in a Nether fortress |
minecraft:bastion_remnant | integer | 20 | Levels added to mobs spawning in a bastion remnant |
minecraft:monument | integer | 15 | Levels added to mobs spawning in an ocean monument |
minecraft:trial_chambers | integer | 15 | Levels added to mobs spawning in trial chambers |
minecraft:ancient_city | integer | 30 | Levels added to mobs spawning in an ancient city |
minecraft:end_city | integer | 25 | Levels added to mobs spawning in an end city |
Keys in boosts are structure ResourceLocation strings (minecraft:fortress) or #-prefixed structure tags, so modded structures and whole categories can be tuned too. An exact structure-ID entry wins over tags, and where boosted structures overlap the largest boost applies. Values are non-negative integers (negatives are clamped to 0 on load); invalid keys warn and are skipped. The effective level after the offsets is still capped by general.maxLevel, and /tribulation debug (or /tribulation inspect on a mob) reports the active boost and the structure granting it.
{
"structureBoosts": {
"marginBlocks": 16,
"boosts": {
"minecraft:fortress": 20,
"minecraft:bastion_remnant": 20,
"minecraft:monument": 15,
"minecraft:trial_chambers": 15,
"minecraft:ancient_city": 30,
"minecraft:end_city": 25
}
}
}
statCaps
Hard ceilings on the total scaling factor for each attribute (all axes combined).
| Key | Type | Default | Description |
|---|---|---|---|
maxFactorHealth | double | 4.0 | Max health multiplier |
maxFactorDamage | double | 4.5 | Max damage multiplier |
maxFactorSpeed | double | 0.5 | Max speed bonus |
maxFactorProtection | double | 2.0 | Max armor multiplier |
maxFactorFollowRange | double | 1.5 | Max follow range multiplier |
groupHealthBonus
Optional bonus health for mobs when several players are nearby.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | false | Grant mobs bonus health for each additional nearby player |
perPlayerBonus | double | 0.2 | Health factor added per extra player in range |
maxBonus | double | 1.0 | Maximum total group health bonus factor |
deathRelief
Level reduction on death acts as a natural difficulty rubber-band.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | true | Enable death level reduction |
amount | int | 2 | Levels lost per death |
cooldownTicks | int | 6000 | Ticks between reductions |
minimumLevel | int | 0 | Level floor (will not reduce below this) |
levelDecay
Optionally ease a player's difficulty level back down while they are offline.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | false | Reduce a player's difficulty level while they are offline |
graceDays | double | 7.0 | Days a player can stay offline before decay begins |
levelsPerDay | double | 2.0 | Levels lost per day offline beyond the grace period |
floor | int | 0 | Lowest level offline decay can reduce a player to |
ascension
Ascendant Shard configuration — the opt-in consumable that raises your difficulty level, capped at general.maxLevel.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | true | Allow Ascendant Shards to raise difficulty |
raisePower | int | 25 | Levels gained when consuming a shard (clamped at the maximum level) |
sideEffects | boolean | false | Grant a short Strength II / Resistance II buff on use |
hardcoreHearts
Permanent max-health reduction on death. Disabled by default.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | false | Enable hardcore hearts system |
heartsLostPerDeath | int | 2 | Half-hearts lost per death (1–20) |
minimumHearts | int | 2 | Minimum half-hearts (floor) |
heartsRestoredPerFragment | int | 2 | Half-hearts restored per Heart Fragment |
{
"hardcoreHearts": {
"enabled": false,
"heartsLostPerDeath": 2,
"minimumHearts": 2,
"heartsRestoredPerFragment": 2
}
}
soulInventory
Inventory destruction on death. Disabled by default.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | false | Enable soul inventory system |
soulboundEnchantment | string | "tribulation:soulbound" | Enchantment ID that protects items |
destroyXp | boolean | false | Also destroy XP on death |
respectKeepInventory | boolean | true | Skip destruction if keepInventory is on |
totems
How a Totem of Undying interacts with the death penalties. By default a totem fully shields you from both.
| Key | Type | Default | Description |
|---|---|---|---|
countsAsDeathRelief | boolean | false | Apply Death Relief level loss when a totem saves you |
protectsHearts | boolean | true | Shield Hardcore Hearts loss when a totem saves you; set false to take the penalty anyway |
scaling
Per-mob scaling rates and caps. Keyed by mob path (e.g. zombie) or full ID (e.g. mymod:custom_mob).
| Key | Type | Default (Zombie) | Description |
|---|---|---|---|
healthRate | double | 0.010 | Health factor gained per level |
healthCap | double | 2.50 | Max time-axis health factor |
damageRate | double | 0.015 | Damage factor per level |
damageCap | double | 3.75 | Max time-axis damage factor |
speedRate | double | 0.0012 | Speed factor per level |
speedCap | double | 0.30 | Max time-axis speed factor |
followRangeRate | double | 0.010 | Follow range factor per level |
followRangeCap | double | 1.0 | Max time-axis follow range factor |
armorRate | double | 0.032 | Armor factor per level |
armorCap | double | 8.0 | Max armor factor |
toughnessRate | double | 0.024 | Toughness factor per level |
toughnessCap | double | 6.0 | Max toughness factor |
{
"scaling": {
"zombie": {
"healthRate": 0.010, "healthCap": 2.50,
"damageRate": 0.015, "damageCap": 3.75,
"speedRate": 0.0012, "speedCap": 0.30,
"armorRate": 0.032, "armorCap": 8.0
}
}
}
unlistedHostileMobs
Fallback scaling for modded mobs extending Monster that aren't in the scaling map.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | true | Apply fallback scaling |
excludedNamespaces | string[] | [] | Mod namespaces to exclude |
scaling | MobScaling | (zombie health+damage) | Scaling values for unlisted mobs |
{
"unlistedHostileMobs": {
"enabled": true,
"excludedNamespaces": ["bosses_of_mass_destruction"],
"scaling": {
"healthRate": 0.010, "healthCap": 2.50,
"damageRate": 0.015, "damageCap": 3.75,
"speedRate": 0.0, "speedCap": 0.0
}
}
}
specialZombies
Zombie variant spawn configuration.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | true | Enable zombie variants |
bigZombieChance | int | 10 | Percent chance for big variant |
bigZombieSize | double | 1.3 | Scale multiplier (model and hitbox) |
bigZombieBonusHealth | double | 10 | Flat health added to big variants |
bigZombieBonusDamage | double | 2 | Flat attack damage added to big variants |
bigZombieSlowness | double | 0.7 | Speed multiplier for big variants (below 1 = slower) |
speedZombieChance | int | 10 | Percent chance for speed variant |
speedZombieSpeedFactor | double | 1.3 | Speed multiplier for speed zombies |
speedZombieMalusHealth | double | 10 | Flat health subtracted from speed variants |
specialSkeletons
Skeleton variant spawn configuration. Applies to Skeleton, Stray, and Bogged (not Wither Skeleton).
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | true | Enable skeleton variants |
deadeyeSkeletonChance | int | 10 | Percent chance for deadeye variant |
deadeyeSkeletonAttackInterval | int | 20 | Ticks between deadeye shots (lower is faster) |
deadeyeSkeletonMalusHealth | double | 10 | Health subtracted from deadeyes |
bruteSkeletonChance | int | 10 | Percent chance for brute variant |
bruteSkeletonAttackInterval | int | 60 | Ticks between brute shots (higher is slower) |
bruteSkeletonBonusHealth | double | 10 | Health added to brutes |
bruteSkeletonBonusKnockbackResistance | double | 0.5 | Knockback resistance [0,1] for brutes |
bruteSkeletonSize | double | 1.3 | Scale multiplier for brutes |
bosses
Boss mob scaling uses a separate, gentler formula.
| Key | Type | Default | Description |
|---|---|---|---|
affectBosses | boolean | true | Enable boss scaling |
bossMaxFactor | double | 3.0 | Maximum total factor for bosses |
bossDistanceFactor | double | 0.1 | Distance scaling rate for bosses |
bossTimeFactor | double | 0.3 | Time scaling rate for bosses |
champions
Rare elite mobs with bonus stats and randomly rolled affixes.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | true | Enable champion mobs |
levelThreshold | int | 50 | Minimum player difficulty level before champions can spawn |
championChance | double | 0.05 | Probability an eligible mob spawns as a champion (0.0–1.0) |
maxAffixes | int | 2 | Maximum number of affixes a champion can roll |
healthMultiplier | double | 1.5 | Health multiplier applied on top of normal scaling |
damageMultiplier | double | 1.25 | Damage multiplier applied on top of normal scaling |
xpMultiplier | double | 3.0 | XP multiplier for killing a champion |
bonusLootRolls | int | 1 | Extra loot-table rolls granted on a champion's death |
showNameTag | boolean | true | Show the champion's generated name above its head |
particleAura | boolean | true | Emit an ambient particle aura around champions |
affixes.vampiric | boolean | true | Allow the Vampiric affix — heals the champion when it deals damage |
affixes.vampiricHealFraction | double | 0.5 | Fraction of damage dealt healed back by the Vampiric affix |
affixes.explosive | boolean | true | Allow the Explosive affix — the champion explodes on death |
affixes.explosivePower | double | 2.0 | Explosion power of the Explosive affix |
affixes.knockbackAura | boolean | true | Allow the Knockback Aura affix — periodically repels nearby players |
affixes.knockbackAuraStrength | double | 0.8 | Knockback strength of the Knockback Aura affix |
affixes.knockbackAuraRadius | double | 4.0 | Radius (blocks) of the Knockback Aura affix |
affixes.knockbackAuraIntervalTicks | int | 60 | Ticks between Knockback Aura pulses |
affixes.thorns | boolean | true | Allow the Thorns affix — reflects a fraction of melee damage |
affixes.thornsFraction | double | 0.3 | Fraction of incoming melee damage reflected by the Thorns affix |
affixes.regenerating | boolean | true | Allow the Regenerating affix — the champion steadily heals |
affixes.regenHealthPerSecond | double | 1.0 | Health regenerated per second by the Regenerating affix |
xp
Bonus XP for killing scaled mobs.
| Key | Type | Default | Description |
|---|---|---|---|
xpMultiplier | double | 1.0 | Bonus XP gain on mob difficulty: dropped XP = base × (1 + healthFactor × xpMultiplier). 0 disables the bonus |
tiers
Level thresholds for ability tiers.
| Key | Type | Default | Description |
|---|---|---|---|
tier1 | int | 50 | Level for Tier 1 abilities |
tier2 | int | 100 | Level for Tier 2 |
tier3 | int | 150 | Level for Tier 3 |
tier4 | int | 200 | Level for Tier 4 |
tier5 | int | 250 | Level for Tier 5 |
HUD
Client-side settings for the on-screen Level Badge. Stored locally per client and never synced.
| Key | Type | Default | Description |
|---|---|---|---|
enableTierHud | boolean | true | Show the level badge overlay |
hudAnchor | enum | TOP_LEFT | Screen corner: TOP_LEFT, TOP_RIGHT, BOTTOM_LEFT, BOTTOM_RIGHT |
hudOffsetX | int | 4 | Horizontal pixels from the anchored edge |
hudOffsetY | int | 4 | Vertical pixels from the anchored edge |
{
"enableTierHud": true,
"hudAnchor": "TOP_LEFT",
"hudOffsetX": 4,
"hudOffsetY": 4
}
threatParticles
Client-side threat-telegraphing particles on scaled hostiles. Read on the client but hot-reloadable via /tribulation reload; Big and Speed zombie cues show at any tier and ignore minimumTier.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | true | Emit threat particles |
minimumTier | int | 4 | Lowest tier that trails the generic cursed-mote cue (variant cues ignore this) |
particleFrequencyTicks | int | 40 | Average ticks between particle emissions per mob (higher is sparser) |
{
"threatParticles": {
"enabled": true,
"minimumTier": 4,
"particleFrequencyTicks": 40
}
}
mobToggles
Per-mob on/off switches. Set to false to completely disable scaling for a specific mob type.
{
"mobToggles": {
"zombie": true,
"skeleton": true,
"creeper": true,
"spider": true,
"cave_spider": true,
"endermite": true,
"silverfish": true,
"drowned": true,
"husk": true,
"stray": true,
"pillager": true,
"vindicator": true,
"witch": true,
"wither_skeleton": true,
"guardian": true,
"hoglin": true,
"zoglin": true,
"ravager": true,
"piglin": true,
"zombified_piglin": true,
"bogged": true
}
}
armorEquipment
Controls how mobs are equipped with armor based on their tier.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | true | Enable tier-driven armor equipment |
materialRollMode | enum | PER_MOB | Roll once per mob or once per slot: PER_MOB, PER_SLOT |
armorDropChance | double | 0.0 | Drop probability [0.0, 2.0]. 1.0+ is guaranteed and pristine. |
armorCeiling | double | 24.0 | Maximum armor points from Tribulation gear |
toughnessCeiling | double | 15.0 | Maximum toughness from Tribulation gear |
{
"armorEquipment": {
"enabled": true,
"materialRollMode": "PER_MOB",
"armorDropChance": 0.0,
"armorCeiling": 24.0,
"toughnessCeiling": 15.0,
"tiers": {
"tier1": {
"wearChancePercent": 12,
"slotCoveragePercent": 60,
"enchantChancePercent": 0,
"maxProtectionLevel": 0,
"materialWeights": { "leather": 80, "gold": 15, "chain": 5 }
}
}
}
}
weaponEquipment
Controls mob weapon upgrades and enchantments.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | true | Enable tier-driven weapon upgrades |
weaponDropChance | double | 0.0 | Drop probability [0.0, 2.0]. 1.0+ is guaranteed and pristine. |
damageCeiling | double | 20.0 | Maximum base damage from Tribulation weapons |
{
"weaponEquipment": {
"enabled": true,
"weaponDropChance": 0.0,
"damageCeiling": 20.0,
"tiers": {
"tier1": {
"wearChancePercent": 10,
"enchantChancePercent": 0,
"maxEnchantmentLevel": 0,
"materialWeights": { "wood": 80, "stone": 20 }
}
}
}
}
meridianEquipmentEnchants
Top-level toggle for the Meridian integration. When Meridian is installed, tier-4/5 mob weapons and armor draw a small bonus of enchants from Meridian's curated meridian:mob_equipment tag on top of their vanilla ones, clamped by the per-tier enchant caps and Meridian's own limits. No effect when Meridian is absent.
| Key | Type | Default | Description |
|---|---|---|---|
meridianEquipmentEnchants | boolean | true | Draw tier-4/5 mob enchants from Meridian's curated pool when Meridian is installed |
trialSpawner
Scales mobs spawned by trial spawners using the levels of the players the spawner has detected, rather than the proximity scan used for natural spawns. An optional, off-by-default ominous upgrade can turn high-tier spawners ominous without a Bad Omen effect.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | true | Apply Tribulation scaling (attributes, abilities, equipment) to trial-spawned mobs. When false, trial spawners behave exactly like vanilla. |
ominousUpgrade.enabled | boolean | false | Allow activated spawners to roll into ominous mode with no Bad Omen effect. |
ominousUpgrade.chance | float | 0.1 | Per-activation roll chance [0.0, 1.0] once the tier gate is met. |
ominousUpgrade.minimumTier | int | 3 | Lowest tier (from detected-player level) at which the upgrade can roll. |
{
"trialSpawner": {
"enabled": true,
"ominousUpgrade": {
"enabled": false,
"chance": 0.1,
"minimumTier": 3
}
}
}
raidScaling
Scales raid and pillager-patrol composition with the tier of the targeted player(s). Patrols gain extra members and high-tier raids run additional waves. Raider stats, armor, and weapons already flow through the normal spawn-scaling path, so this block governs only structural escalation — bells, Hero of the Village, and the raid bar behave normally.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | true | Master switch. When false, patrols and raids keep their vanilla size and wave count. |
patrolBonusRate | int | 2 | Tiers per extra patrol member: a captain adds tier / patrolBonusRate members (floored). 0 disables the patrol bonus. |
extraWaveTierThreshold | int | 4 | Lowest tier (from the raid's targeted players) at which extra waves are added. |
extraWaveCount | int | 1 | Number of extra waves added once the threshold tier is met. |
{
"raidScaling": {
"enabled": true,
"patrolBonusRate": 2,
"extraWaveTierThreshold": 4,
"extraWaveCount": 1
}
}
packTactics
Tier-gated pack tactics for the classic pack mobs. At or above the tier threshold, hurting an eligible mob alerts same-type mobs within the radius (line-of-sight to the victim required) onto the attacker, and natural spawn groups of eligible types grow by the configured bonus. Below the threshold behavior is fully vanilla.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | true | Master switch. When false, targeting and spawn group sizes stay fully vanilla. |
tierThreshold | int | 3 | Lowest tier at which pack tactics apply. Shared aggro uses the victim's frozen scaled tier; the spawn-group bonus uses the effective tier at the spawn position. |
alertRadius | double | 16.0 | Radius (blocks) around the hurt mob searched for same-type packmates. Clamped to [0, 64]; 0 disables shared aggro. |
groupSizeBonus | int | 2 | Extra members added to natural spawn groups of eligible types above the threshold. Clamped to [0, 16]; mob caps still apply. |
eligibleMobs | string list | zombie, skeleton, spider | Entity type IDs the feature applies to. Unknown IDs are logged and ignored. |
{
"packTactics": {
"enabled": true,
"tierThreshold": 3,
"alertRadius": 16.0,
"groupSizeBonus": 2,
"eligibleMobs": ["minecraft:zombie", "minecraft:skeleton", "minecraft:spider"]
}
}
environmentalPressure
Tier-gated pressure effects: debuff-on-hit strikes and darker, sharper-sensed nights.
| Key | Type | Default | Description |
|---|---|---|---|
enabled | boolean | false | Master switch for environmental pressure effects |
debilitatingStrikes.enabled | boolean | true | Enable Debilitating Strikes — high-tier mobs apply debuffs on hit |
debilitatingStrikes.tierThreshold | int | 3 | Lowest scaled tier at which Debilitating Strikes apply |
debilitatingStrikes.applyWeakness | boolean | true | Debilitating Strikes apply Weakness on hit |
debilitatingStrikes.weaknessDurationTicks | int | 100 | Duration (ticks) of the Weakness applied on hit |
debilitatingStrikes.weaknessAmplifier | int | 0 | Amplifier of the Weakness applied on hit (0 = level I) |
debilitatingStrikes.applySlowness | boolean | false | Debilitating Strikes apply Slowness on hit |
debilitatingStrikes.slownessDurationTicks | int | 100 | Duration (ticks) of the Slowness applied on hit |
debilitatingStrikes.slownessAmplifier | int | 0 | Amplifier of the Slowness applied on hit (0 = level I) |
oppressiveNights.enabled | boolean | true | Enable Oppressive Nights — high-tier nights grow darker and sharpen mob senses |
oppressiveNights.tierThreshold | int | 4 | Lowest scaled tier at which Oppressive Nights take effect |
oppressiveNights.maxDarkness | double | 0.25 | Strength of the night darkening effect (0.0–1.0) |
oppressiveNights.followRangeMultiplier | double | 1.5 | Follow-range multiplier applied to mobs on oppressive nights |
oppressiveNights.clientEnabled | boolean | true | Show the night darkening overlay on this client |
abilities
Toggle individual tier-gated abilities on or off. All default to true.
| Key | Mob | Behavior |
|---|---|---|
zombieReinforcements | Zombie | Call nearby zombies when hit |
zombieDoorBreaking | Zombie | Break wooden doors |
zombieSprinting | Zombie | Sprint toward targets |
creeperShorterFuse | Creeper | Reduced detonation delay |
creeperCharged | Creeper | Spawn already charged |
skeletonSwordSwitch | Skeleton | Switch to melee at close range |
skeletonFlameArrows | Skeleton | Fire flaming arrows |
spiderWebPlacing | Spider | Place cobwebs near targets |
spiderCropTrample | Spider | Destroy crops while chasing |
spiderLeapAttack | Spider | Leap attack at range |
huskHunger | Husk | Apply hunger effect on hit |
witherSkeletonSprint | Wither Skeleton | Sprint toward targets |
witherSkeletonFireAspect | Wither Skeleton | Set targets on fire |
drownedTrident | Drowned | Always carry and throw trident |
hoglinKnockbackResist | Hoglin | Resist knockback |
zoglinFireResist | Zoglin | Resist fire damage |
vindicatorResistance | Vindicator | Damage resistance effect |
zombifiedPiglinAggro | Zombified Piglin | Always hostile |
piglinCrossbow | Piglin | Enhanced crossbow behavior |
straySlownessUpgrade | Stray | Upgrade arrows to Slowness II |
boggedPoisonUpgrade | Bogged | Upgrade arrows to Poison II |
witchLingeringPotions | Witch | Throw lingering potions instead of splash |
witchAggressiveHealing | Witch | Drink healing potions sooner and more often |
pillagerQuickCharge | Pillager | Quick Charge on the held crossbow |
pillagerMultishot | Pillager | Multishot on the held crossbow |
vindicatorDoorBreaking | Vindicator | Break wooden doors on any difficulty |
guardianFasterBeam | Guardian | Charge the attack beam faster |
ravagerRoarExpansion | Ravager | Wider roar knockback radius |
silverfishCallSleepers | Silverfish / Endermite | Summon silverfish from infested blocks when hurt |