docs(design): define spawn plugin user stories

This commit is contained in:
dmg
2026-08-08 13:03:11 -04:00
commit a01f36db86
11 changed files with 291 additions and 0 deletions
@@ -0,0 +1,37 @@
---
type: User Story
title: "US-002: Teleport safely to spawn"
description: Let eligible players teleport to a safe randomized location in their current world's spawn area after a stationary warm-up.
status: backlog
---
# US-002: Teleport safely to spawn
As an **eligible player**, I want `/spawn` to take me safely to my current world's spawn area so that I can return without exposing myself to an unsafe destination.
## Acceptance criteria
- [ ] `/spawn` is available after at least one qualifying unique enemy kill or an administrative grant.
- [ ] A player without access receives a message instructing them to defeat a Warden, Ender Dragon, or Wither and sees the colored progress checklist.
- [ ] A banned player cannot begin a spawn teleport.
- [ ] When an active cooldown prevents `/spawn`, the player is explicitly told that the command is unavailable and sees the remaining wait in a friendly duration format.
- [ ] Cooldowns use real elapsed time and therefore continue while the player is offline.
- [ ] An accepted teleport request starts a three-second on-screen countdown.
- [ ] The player may look around during the countdown without cancelling it.
- [ ] A change to the player's block X, Y, or Z coordinate cancels the countdown, including walking to another block, jumping, or falling.
- [ ] Teleportation or a world change during the countdown cancels it.
- [ ] The destination is sampled randomly within the circular spawn area configured for the player's current world.
- [ ] The destination provides non-hazardous solid ground, two blocks of clear headroom, and no immediate lava, fire, water, void, or other configured environmental hazard.
- [ ] Unsafe underwater, leaf-top, inaccessible Nether-roof, and void-exposed destinations are rejected.
- [ ] The safe search prefers a valid vertical position closest to the configured spawn center's elevation rather than automatically preferring the world's highest surface.
- [ ] The safe-location search uses a bounded number of attempts and reports failure clearly when no destination is found.
- [ ] Only a completed teleport starts the applicable cooldown.
- [ ] After a completed teleport, a player with unfinished boss progression is reminded that defeating each remaining unique boss permanently reduces the cooldown.
- [ ] A cancelled countdown or failed safe-location search does not consume the cooldown.
## Related
- [US-001: Earn progressive spawn access](us-001-earn-progressive-spawn-access.md)
- [US-003: Configure each world's spawn area](us-003-configure-world-spawn-area.md)
- [US-006: Configure plugin behavior](us-006-configure-plugin-behavior.md)
- [US-008: Reward and encourage spawn progression](us-008-reward-spawn-progression.md)