Deathmatch
Deathmatch is a forced end-game system that teleports all surviving players into a compact, temporary arena to resolve the match.
Why Deathmatch exists
Deathmatch exists to end matches cleanly and predictably.
It forces a decisive conclusion when the mid-game drags on.
It adds tension with a dramatic transition and a short freeze countdown.
It improves fairness by removing positional advantages from the main map.
It protects server resources by ensuring matches always finish.
Lifecycle flow (end-of-match transition)
This is the exact sequence from trigger to cleanup.
A phase triggers Deathmatch via a phase action flag. This happens near endgame to guarantee resolution.
A template world copy is created and loaded as a temporary Deathmatch world. This world is isolated from the main match instance.
The world border is configured. It can optionally inherit the active phase border behavior.
All alive players are teleported to Deathmatch spawns. Eliminated players are not pulled in.
Players are frozen for a short countdown. The freeze is communicated via title/subtitle.
Freeze ends and combat becomes fully active. The fight continues until win conditions are met.
The match completes and a winner is determined. Results and end-of-match UX run as normal.
The temporary Deathmatch world is deleted and cleaned up. No Deathmatch terrain persists to the next match.
Deathmatch worlds are designed to be disposable. If cleanup fails, you’ll see extra world folders and higher memory use.
Spawn modes
Deathmatch supports two spawn selection behaviors.
RANDOM
Picks safe random locations within bounds. Spreads players out to reduce instant spawn fights.
CUSTOM
Uses admin-defined spawn points deterministically. Ensures consistent layouts across matches.
Spawn selection and the freeze window work together. The goal is a fair start, not a “surprise hit” during teleport.
Key behaviors and UX touches
Deathmatch is designed to feel like a “hard cut” into the finale.
Key behaviors:
Freeze period: movement is blocked during the countdown.
Title/subtitle cues: players get a clear “Deathmatch starting” moment.
Border pressure: the border can be aggressive to prevent stalling.
Fairness controls: neutral spawns + freeze remove rotational advantages.
Core components (what’s involved)
These are the moving pieces you’ll see in logs and integrations.
Phase trigger: decides when Deathmatch begins.
World instance manager: creates and loads the temporary world.
Border controller: applies Deathmatch border behavior.
Spawn selector: resolves RANDOM vs CUSTOM spawns.
Freeze controller: locks players, shows countdown, then releases.
Match resolver: determines winner and transitions to end state.
Cleanup worker: deletes the Deathmatch world after completion.
Interactions with other systems
Deathmatch is not a standalone feature.
It relies on core infrastructure that already powers arenas and phases.
Phase System
Triggers Deathmatch at a specific timeline moment. See Phases.
Auto World Restoration
Handles async world copying, loading, and deletion for the temporary Deathmatch world. See Auto World Restoration.
Scoreboards / Broadcasts / Stats
Use the active match world context for correct displays and event validation. See Scoreboard and Broadcasts.
Placeholder expansion
Exposes “current world / state” context when Deathmatch is active, so UI stays correct. See Placeholders.
When it runs
Deathmatch runs when a phase explicitly triggers it using the startDeathmatch phase action.
It is intended for endgame.
It exists to guarantee the match reaches a winner.
Last updated