Botz Mob Leveling

Configurable mob leveling for Forge 1.20.1. Mobs scale by distance from spawn, structures, and datapack rules.

File Details

botzmobleveling-1.0.7.jar

  • R
  • Jun 29, 2026
  • 184.87 KB
  • 49
  • 1.20.1
  • Forge

File Name

botzmobleveling-1.0.7.jar

Supported Versions

  • 1.20.1

Curse Maven Snippet

Forge

implementation fg.deobf("curse.maven:botz-mob-leveling-1454441:8338286")
Curse Maven does not yet support mods that have disabled 3rd party sharing

Learn more about Curse Maven

🏮 BotzMobLeveling 1.0.7 — Read the Level (API & Commands)

A small, additive update aimed at pack devs and tinkerers: the mod can now tell you the area level — the level a mob would spawn at for your position — even when no mobs are around. This is the hook you need for a custom HUD, loot scripts, or level-gated content.


✨ New: Read levels from datapacks, KubeJS, or other mods

  • New commands: /botzmobleveling arealevel [pos] and /botzmobleveling moblevel <entity>.
  • Silent by default — they return the value but print nothing, so a datapack can poll them every tick with no chat spam. Add print on the end to echo the value to chat.
  • Each command returns its value as the command result, so datapacks can capture it with execute store result score ....
  • Public Java API for KubeJS / mod authors: com.botzlabz.mobleveling.api.BotzMobLevelingAPIgetAreaLevel(level, pos), getMobLevel(mob), getMobBaseLevel(mob), getMobKillLevel(mob).

🧩 Reading a mob's level

A mob's level lives in its NBT: botzmobleveling_Level (spawn level) + botzmobleveling_KillLevel (kill levels) = total.

// KubeJS
const BML = Java.loadClass('com.botzlabz.mobleveling.api.BotzMobLevelingAPI')
let area = BML.getAreaLevel(player.level, player.blockPosition())

📖 Examples

Full datapack HUD and KubeJS examples are on the wiki: Reading Levels (API & Commands)github.com/DepthDrako/BotzMobLeveling/wiki/Reading-Levels-API

Note: this is purely additive — it doesn't change balance on its own unless a pack wires the readouts into a HUD, loot script, or quest gate. arealevel reflects base distance scaling, so set defaultMinLevel / defaultMaxLevel to match your base rule for an accurate HUD.


🔁 Recently, in 1.0.6

  • Boss level field actually applies now; boss bars survive reloads; particle_effect implemented.
  • Per-mob level_bonus stacks on top of distance scaling; global level cap and mob filters are respected by adaptive difficulty.
  • Ranged mobs earn kill XP; cap-exempt mobs keep their stats after reload; guide book no longer duplicates on death.
  • Optional level-based loot scaling ([lootScaling]) and percentage-based example scaling for high-HP modded bosses.

Requires: Minecraft 1.20.1 · Forge 47+