Falling Hazard
Last updated Sep 18, 2026
Falling Hazard
Optional room-wide descending particle plane. Off by default on new rooms.
Settings live on each room YAML under falling-hazard (not in config.yml). Configure from the wand hotbar Falling Hazard item (magma cream).
Behavior
- Starts when a floor begins. If start mode is After delay, the delay runs on every floor (not only floor 1).
hazard.warningis sent when a delay starts.hazard.startedis sent when the plane first activates on floor 1.- A short grace period (~2 seconds) lets players settle before damage.
- A particle plane descends across the current floor’s block bounds.
- Above, in plane, and below use the modes you set.
- Pauses while a cleared floor’s countdown runs and during drop/paste.
- Resumes at the same world Y it paused at (does not snap to the next ceiling).
- If the plane is far above the current floor, it speeds up to catch up, then returns to normal speed when near that floor’s ceiling.
- Stops when it reaches the current floor bottom (no lingering damage pool).
- Paste failures clear the pause so the hazard is not stuck off for the rest of the run.
Damage uses normal player.damage, so anti-cheese.death-behavior still applies (kick, spectate, or respawn on the current floor). Slice damage ticks about twice per second.
Creative and spectator players are ignored. Invulnerable players (including a short post-respawn window) are ignored.
Editor
Right-click Falling Hazard (magma cream):
| GUI | Effect |
|---|---|
| On | Opens the Falling Hazard menu |
| Off | Toggles enabled / disabled |
Main menu
| Control | Action |
|---|---|
| Enable | On / off for this room |
| Start | Floor start or After delay (+ delay seconds) |
| Fall interval | Ticks between drops (left −10 · right +10 · shift ±40) |
| In plane / Above | Hit modes |
| Damage | Amount when a damage mode is active |
| Particle | Left next · right previous presets. Shift-click to type any Bukkit particle name in chat (clickable suggestions; type cancel to abort) |
| Color | When the particle supports color (left / right) |
| Advanced | Density, spread, slice height, size, render interval |
Blocks dropped each tick interval still come from speed in the room YAML (default 1.0). Catch-up multiplies that step when the plane is far above.
Room YAML
falling-hazard:
enabled: false
start-mode: floor_start # floor_start | after_delay
start-delay-seconds: 0 # 0–60; used when start-mode is after_delay
speed: 1.0 # Blocks dropped each fall-interval (catch-up may multiply)
fall-interval: 100 # Ticks between drops (100 = 5s). Edited in the GUI.
slice-height: 1.0 # Thickness of the hit plane
above-mode: instant_kill # safe | damage | instant_kill
hit-mode: damage # damage | instant_kill
damage: 2.0 # Half-hearts when a damage mode hits
particle: DUST # Any Bukkit Particle name
color: "#FF3300" # Hex; used by color particles (e.g. DUST)
particle-size: 1.5
particle-density: 30
particles-per-point: 5
spread-horizontal: 0.8
spread-vertical: 0.3
render-interval: 4 # Ticks between particle refreshes
Missing falling-hazard on older rooms means disabled.
Messages
In messages.yml:
| Key | When |
|---|---|
hazard.warning |
Start delay begins |
hazard.started |
Plane activates (floor 1) |
editor.hazard-enabled / editor.hazard-disabled |
GUI-off toggle feedback |
editor.particle-input-* |
Shift-click particle chat flow |
Tips
- Instant kill above the plane pairs well with
death-behavior: respawnfor retries, orkickfor hard fails. - Lower density and particles-per-point if the plane causes lag.
- Keep floor bounds accurate; the plane covers the pasted schematic’s block box.
- Use a lower
fall-interval(faster ticks) for tighter pressure; catch-up handles deep multi-floor gaps automatically.