Files
spigot-leaf/design/user-stories/us-001-opt-into-leaf-protection.md
T
dmg 320c8ce193
Release / release (push) Successful in 2m7s
CI / build (push) Successful in 1m1s
fix(protection): restore cleared Leaf effects
2026-08-10 23:09:54 -04:00

1.9 KiB

type, title, description, status
type title description status
User Story US-001: Opt into Leaf protection Let players voluntarily receive and relinquish a persistent Resistance boost. done

US-001: Opt into Leaf protection

As a player, I want to opt into Leaf protection so that I can receive a modest defensive boost while playing on a hard server.

Acceptance criteria

  • Players with the leaf.use permission, granted by default, can use /leaf on, /leaf off, and /leaf status.
  • /leaf on records the player's opt-in choice and grants Resistance I while Leaf is globally enabled.
  • Resistance remains continuously effective without distracting expiry or renewal messages or particles.
  • /leaf off records the player's opt-out choice and immediately removes only the Resistance effect managed by Leaf.
  • /leaf status clearly distinguishes the player's saved choice, active protection, administrative lock, and global Leaf state.
  • Repeating an already-satisfied on or off command is safe and explains that no change was needed.
  • Opt-in choices are keyed by UUID and survive logout and server restart.
  • A player who joins while opted in regains protection when Leaf is enabled.
  • Player-command autocomplete suggests only valid next arguments available to the sender.
  • Opted-in players receive quiet Strength I alongside Resistance I by default.
  • Player status reports active protection only when both configured Leaf effects are effective.
  • Missing Leaf effects are restored for opted-in online players within approximately one second after death, milk, commands, or plugins clear them.
  • Recovery remains suppressed while Leaf is globally disabled or the player is opted out.