World Protection

BusyHub blocks the usual ways a hub gets griefed or cluttered, without needing a separate protection plugin. This is split across two config groups that behave slightly differently from each other — worth knowing which is which.


Configuration

yaml
protection:
  invincible: true
  no-hunger: true
  block-place: true
  block-break: true
  block-item-drop: true
  block-item-pickup: true
  block-weather: true
  block-mob-spawn: true
  block-fire-spread: true
  block-leaf-decay: true
  block-interact: true
  hide-death-messages: true
  bypass-permission: busyhub.protection.bypass

disabled-worlds: []

antivoid:
  enabled: true

invincible / no-hunger — no bypass permission

These two apply to every player unconditionally when enabled, staff included, and respect disabled-worlds but nothing else. There's deliberately no permission that exempts an OP from them — nobody actually wants an admin taking fall damage or starving in the hub just because they're op. If you need a world where players genuinely take damage or get hungry, put that world in disabled-worlds rather than looking for a bypass permission that doesn't exist.


Everything else — busyhub.protection.bypass

Flag Blocks
block-place / block-break Placing / breaking blocks
block-item-drop Dropping items (Q, dragging out of inventory)
block-item-pickup Picking items up off the ground
block-weather Rain/thunder — also actively clears weather on world load
block-mob-spawn Natural mob spawning (/summon or plugin/custom spawn reasons still work)
block-fire-spread Fire burning blocks, ignition, and block-to-block spread
block-leaf-decay Leaves decaying
block-interact Right-clicking blocks/entities, armor stand manipulation — except stepping on a pressure plate, deliberately excluded so it doesn't break launch pads
hide-death-messages Suppresses the death message broadcast to chat

Players with busyhub.protection.bypass (default: op) skip all of these, and any world listed under disabled-worlds is exempt from all of them too — including invincible/no-hunger, since disabled-worlds is a blanket "protection doesn't apply here" list, not scoped to just this section.

Not blocked by block-interact: PvP. BusyHub already blocks all player damage (PvP included) via invincible, so block-interact deliberately doesn't duplicate that.


Anti-void

If a player takes void damage, BusyHub cancels the damage, zeroes their fall velocity, and teleports them back to spawn.location a tick later — instead of leaving them to fall forever once invincible has already stopped the damage from killing them. Skipped for spectators and in disabled-worlds. If no spawn has been set yet, this silently does nothing (the player just keeps falling) rather than teleporting them somewhere undefined.