Double Jump

A velocity-boost double jump — not actual flight — triggered by double-tapping space in the air.


Configuration

yaml
double-jump:
  enabled: true
  velocity: 1.2
  cooldown-seconds: 2.0
Setting Description
enabled Master switch. Also controls whether players are granted allow-flight at all.
velocity Vertical boost applied on a successful double jump, in blocks/tick.
cooldown-seconds Minimum time between boosts, per player.

How it's implemented

BusyHub grants every non-creative, non-spectator player allow-flight on join (and whenever double-jump.enabled changes via /busyhub reload), and re-grants it on the player's next movement whenever something else has taken it away (a game mode change, a respawn, another plugin's join handling). That's what makes the client offer the double-tap-space "start flying" gesture at all — but instead of letting it actually enable flight, BusyHub intercepts that request, cancels it, immediately sets the player back to not-flying, and applies a one-time velocity boost instead: velocity straight up, plus a small forward push (0.4 blocks/tick) in whatever horizontal direction the player is facing.

Creative and spectator players are left alone entirely — their real flight isn't touched.


Cooldown

cooldown-seconds is tracked per player from the last successful boost. Attempting to double-jump again before it expires does nothing (no boost, no sound) but still cancels the flight-toggle request either way, so the player never actually starts flying.


Interaction with wall-tunneling protection

A double-jump boost arms the same tunneling guard described in Launch Pads: for a short window after the boost, if the resulting movement would carry the player through a solid block, they're stopped and their velocity is zeroed instead. The default velocity (1.2, plus 0.4 horizontal) is well under the range where this matters in practice, but it's the same mechanism protecting against it either way.