Performance Guide

Performance Guide

BusyMining's everyday work is light: a few checks per block broken, and database reads and writes off the main thread. The settings below are the ones that matter as your player count grows.

Minions

Each minion scans a cube of (2 × MinionRadius + 1)³ blocks every MinionMineSpeed ticks. At the defaults (radius 3, every 100 ticks) that's 343 blocks every 5 seconds per minion. Across hundreds of minions it adds up.

  • Keep MinionRadius at 3 or below. Radius 5 scans 1,331 blocks per minion.
  • Raise MinionMineSpeed on busy servers; 200 (10 seconds) halves the cost.
  • Cap MaxMinionsPerPlayer to what your server can handle across every player.

Minions only tick while their chunk is loaded.

Enchantment extra-breaks

Every extra block from Explosive, Vein Miner or Sonic fires its own block-break event, which every protection and logging plugin on the server processes:

Enchantment Extra blocks per trigger
Explosive I-III up to 26
Explosive IV-V up to 124
Vein Miner III up to 29
Sonic 1

If block logging (CoreProtect and similar) or claim checks are heavy on your server, keep high-level Explosive tomes rare. Tome levels come from artifact tier and gemstone quality; see Refinery.

Custom mobs

Rune Guardians, Wraiths, Oracles, Thralls and Vessel bosses despawn on their own and aren't saved with the chunk. /mine cullmobs removes all of them at once if a fight gets out of hand.

Thralls are the most frequent: Vessels.Thralls.ChanceToSpawn (7% per block) with a CooldownSeconds (120) limit per player. Raise the cooldown if many players run trials at once.

Database

  • SQLite is fine for a single server. Every read and write runs off the main thread.
  • MySQL suits networks and very large player counts. pool-size: 10 is plenty for most servers.
  • Settings.AutoSaveSeconds (300) sets how often online players are saved. Lower values mean less loss on a crash and more writes.

The Artifact Identifier reads its slots from the database each time the menu opens, so a slow MySQL connection shows up there first.

Checklist for large servers

  1. Tune minion radius, speed and cap as above.
  2. List lobby, spawn and event worlds under DisabledWorlds and DisableCustomMobWorlds.
  3. Use MySQL on networks.
  4. Keep an eye on Explosive IV-V if you run block logging.