Skip to content

Configuration

Pavel Erokhin edited this page Oct 25, 2026 · 3 revisions

Every file lives in plugins/MoBosses/, and every file explains its keys in comments. This page tells you which file holds what, how changes apply, and which settings servers change most.

How changes apply

  1. Edit a file.
  2. Run /mobosses reload. Every config and language file loads again, and bosses keep fighting.

Every key has a default, so you can delete the ones you don’t change. A value that doesn’t fit, like a word where a number goes, costs only itself: the log names it, and it takes its default. Game ids take the namespaced form (minecraft:diamond_sword) or the old enum names (DIAMOND_SWORD); a bad one logs a warning and drops out.

A file you delete comes back from the jar, with the bundled values, on the next start or /mobosses reload.

A file you never changed follows the plugin: when a new version ships a different copy, the plugin swaps yours for it on start and logs updated to this version’s. A file you edited stays as it is, so it keeps your values but not the new defaults; delete it to take them. Before 2.8.0 the plugin copied each file once and never again, so servers that started on an older version kept its loot, classes, and texts.

The files

File What it holds More
config.yml Languages, spawning, player levels, the stat formulas, glow and particles, boss bars, loot durability, announcements, the database, protection, and CoreProtect below
classes.yml The six classes: multipliers, colors, weights, and the level each ability starts at Bosses and classes
bosses.yml Which mobs become bosses, their spawn chance, gear by level, particles, and sounds Bosses and classes
abilities.yml Each ability’s switch, cooldown, and numbers by level Abilities
minions.yml What each boss type summons Minions
loottable.yml Loot by class and level, with amounts, weights, enchantments, and names Loot and rewards
rewards.yml Potion effects and absorption hearts by class, and the wait for the next ones Loot and rewards
lang/*.yml Messages and names, one file per language Languages
player-languages.yml Languages players picked for themselves; written by the plugin Languages

Settings servers change most

What you want Where
Bosses more or less often spawn_chance per type in bosses.yml; world_multipliers, time_multipliers, weather_multipliers under spawn
A type never to turn enabled: false under the type in bosses.yml
Rarer or more common classes chance per class in classes.yml
Bosses tougher or softer formula.health and formula.damage in config.yml
Bosses the same on every difficulty difficulty.enabled: false in config.yml; see Bosses and classes
Fewer bosses around farms spawn.player_cooldown_seconds, spawn.max_nearby
An ability off its is_…_enabled or enabled key in abilities.yml
Quieter chat the switches under broadcast in config.yml
The plugin paused enabled: false in config.yml: no new bosses or abilities; bosses already around stay
More detail in the log debug: true

Changing a formula moves every boss. ./gradlew balance --args=path/to/plugins/MoBosses prints the curves for your files before you commit to them; see Building from source.

Database

Players’ levels live in bosses.db, an SQLite file, out of the box. To share levels between servers:

  1. Set database.type to mysql (for MySQL or MariaDB) or postgres.
  2. Fill in its section: host, port, database, username, password, ssl.
  3. Run /mobosses reload. The plugin creates its tables on the first connection.

A database that can’t be reached doesn’t stop the plugin: levels then last until each player leaves. Queries never run on the server thread. The MariaDB and PostgreSQL drivers come inside the jar, about 2 MB together, so the plugin works on servers without internet access; Paper ships SQLite’s.

Looks and sounds

  • effects.particles, effects.glow: particles around a boss and a glow in its class color, shown only with a player within effects.visibility_radius.
  • name_tags.per_player: names over bosses in each player’s language. Off, the game’s name tag shows the default language to everyone, as 1.x did.
  • boss_bar.style: PROGRESS, NOTCHED_6, NOTCHED_10, NOTCHED_12, or NOTCHED_20.
  • kill_sound: the sound after a kill.

Clone this wiki locally