Home›Java›Mods›DifficultyEx
DifficultyEx
ModsJava

DifficultyEx

Java mod listed for Minecraft 1.20. Downloads from the MC Java Mods app on Android.

by bibireden · on CurseForge

Which build do you need?

This mod ships a separate file for every mod loader and every version of the game. Pick both, then download — the wrong build installs fine and then does nothing in the game.

Mod loader

Minecraft version

⬇ Download for 1.20.1 · Fabric⬇ Download for 1.20.1 · Quilt
I don't know my version or loader
Open the Minecraft launcher and look at the profile you play on — it names both, like fabric-loader-1.21.4. The version also shows in the bottom-right corner of the game's main menu.
No loader in the profile name? Then it's plain Minecraft, and these mods won't run — you need Fabric or NeoForge installed first.
DifficultyEx — screenshot 1DifficultyEx — screenshot 2

DifficultyEx

“Because the game shouldn’t get easier just because you got better.”

DifficultyEx is a Fabric 1.20.1 dynamic difficulty system built around PlayerEx: Director’s Cut and Data Attributes: Director’s Cut.

Instead of every zombie, skeleton, or custom boss feeling identical in every world, DifficultyEx assigns each mob its own level, then scales its health, damage, armor, and XP rewards based on:

On top of that, it adds configurable RPG-style mob nameplates that show level and health above mobs’ heads, with support for both vanilla and Geckolib-rendered entities and optional integration with Traveler’s Titles.


🔹 Short Summary

DifficultyEx adds configurable, level-based mob scaling tied to PlayerEx, with biome/dimension/structure rules, XP/damage/armor/health scaling, and RPG-style mob nameplates.


✨ Core Features

🔧 Level-based mob scaling

Every time a mob is loaded into the world, DifficultyEx:

  1. Looks at all nearby players in a configurable radius.
  2. Reads their PlayerEx level.
  3. Runs those levels through a configurable formula (x by default, via Crunch/exp4j).
  4. Averages the result and applies a small random adjustment.
  5. Clamps the final mob level using:
    • Global max & min
    • Dimension-specific min/max
    • Biome-specific min/max
    • Structure-specific min/max (nearest configured structure)
    • Per-entity min/max rules (by ID or regex)

📈 Scaled stats (health, damage, armor, XP)

Using mixins on vanilla logic, DifficultyEx scales several stats per mob level using configurable percentages:

All of these are controlled under scalingLevelSettings in the config:

There’s also:


🌍 Dimension, biome & structure rules

DifficultyEx lets you shape where things are dangerous:

Per-dimension settings

dimensionSettings:

Per-biome settings

biomeScalingSettings:

Per-structure settings

structureScalingSettings:

The mod uses the nearest configured structure within the configured radius to clamp mob level, so you can make, for example:


👁️ RPG-style mob nameplates

DifficultyEx includes a full nameplate system rendered through mixins into:

Features (all configurable):

These options live under client_settings.visualSettings in the config.


🧭 Traveler’s Titles integration (optional)

If Traveler’s Titles is installed, DifficultyEx adds a small compatibility layer:

This is fully optional; if Traveler’s Titles is absent, the compat mixins simply never apply.


⚙️ Configuration

DifficultyEx uses owo-config with a generated config class:

global_settings.dimensionSettings

Map from dimension ID to:

Example:

"dimensionSettings": {
  "minecraft:overworld": {
    "startingLevels": 1,
    "maximumLevels": 50
  },
  "minecraft:the_nether": {
    "startingLevels": 10,
    "maximumLevels": 80
  }
}
Quick facts

Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.

File checked by MCModsHub

These come from our own check of the pack file, not from the source page.

Explore more