Gameplay Guide
Last updated Jul 6, 2026
Gameplay Guide
How a dungeon run flows from join to victory.
Session flow
Join room → Waiting timer → Room locks → Weakness vote → Countdown → Floor 1 → Clear mobs → Floor drops → ... → Victory
Joining
| Method | Command / action |
|---|---|
| Direct join | /sf room <room_id> |
| List rooms | /sf room list |
| GUI | /sf menu → Room Browser or Quick Join |
| Leave | /sf room leave |
On join, players teleport to the entry point (or starter center if unset). Gamemode may switch to survival if anti-cheese.force-survival is true.
Waiting lobby
When auto-start-enabled is true and a player is first to join:
- Waiting timer starts (
waiting-timer-seconds, default 30). - More players can join until the room locks or max players is reached.
- If
min-playersis above the current count, the timer holds. - When the timer ends, the room locks. Party scaling snapshots player count.
Messages show player count and time remaining.
Weakness vote
If weaknesses.yml has enabled: true, players vote before the countdown. See Weaknesses and Rewards.
Players click chat options or run /sf vote <number>.
Countdown
Plays in the starter room. Default 10 seconds (countdown-seconds). Debug mode can skip this.
At GO, the starter floor is removed and floor 1 schematic is pasted. Players drop to the first challenge floor.
Floor loop
For each floor:
- Mobs spawn at configured locations.
- Mob counter shows on actionbar, chat, or bossbar.
- When all mobs die, a clear message plays.
- After
floor-drop-delayseconds, the current floor schematic is removed. - Next floor pastes below. Falling hazard resets if enabled.
- Repeat until all floors are cleared.
Party scaling
With more players:
- More mobs spawn
- Mobs gain extra health (vanilla and Mythic)
- Reward rolls get a multiplier
Scaling locks when the waiting timer ends. Disable globally in config.yml or per room in room settings.
Death and failure
| Event | Result |
|---|---|
Fall below void-y-level |
Run failed, removed from session |
Death with death-behavior: kick |
Removed from dungeon |
Death with death-behavior: spectate |
Spectator mode |
Death with death-behavior: respawn |
Respawn on current floor |
dont-drop-inventory: false means vanilla death drops apply unless you change it.
Victory
When the last floor is cleared:
- Victory title, sound, and particles play.
- Stats are saved (time, kills, floors).
victory.reward-commandsrun from console.- Room reward table rolls if assigned via
/sf setreward. - After
teleport-delay, players teleport to spawn (if enabled).
Difficulty labels
Shown in room list and welcome message:
| Floors | Label |
|---|---|
| 1-3 | Easy |
| 4-7 | Medium |
| 8-12 | Hard |
| 13-20 | Extreme |
| 21+ | Nightmare |
Join in progress
allow-join-in-progress: false by default. When true, late joiners teleport to the current floor center.
Anti-cheese
Inside sessions (admins exempt):
- No elytra, pearls, chorus fruit, or flight
- Blacklisted items cannot be used
- Block break/place blocked (unless
soapsfloor.bypass.protection) - PvP off unless
pvp-enabled: true
Stats and leaderboards
/sf statsopens personal stats GUI- Main hub → Leaderboards shows per-room best time and kills
Leaderboard cache refreshes every 60 seconds and invalidates on game completion.