feat(progress): track persistent creeper kills

This commit is contained in:
dmg
2026-08-08 14:07:35 -04:00
parent f9ad2d9461
commit 0bde7a6ae2
30 changed files with 1142 additions and 38 deletions
@@ -1,7 +1,7 @@
---
type: User Story
title: "US-005: Administer player progression"
description: Let authorized administrators inspect and modify online or offline player progression.
description: Let authorized administrators inspect and modify online or offline player rank and tier progress.
status: backlog
---
@@ -11,13 +11,15 @@ As a **server administrator**, I want to inspect and modify player progress so t
## Acceptance criteria
- [ ] `/creeperaura progress <player>` reports another player's kills, rank, next threshold, and remaining kills.
- [ ] `/creeperaura set <player> <kills>` sets a non-negative lifetime kill total and reconciles the player's rank to that explicit administrative value.
- [ ] `/creeperaura add <player> <kills>` adjusts a player's kill total without allowing a negative result.
- [ ] `/creeperaura progress <player>` reports another player's rank, current-tier progress, next requirement, and remaining kills.
- [ ] `/creeperaura set <player> <progress>` sets a non-negative current-tier progress value without implicitly changing rank.
- [ ] `/creeperaura add <player> <progress>` adjusts current-tier progress without allowing a negative result.
- [ ] `/creeperaura rank <player> <locked|I|II|III|IV|V|VI>` explicitly changes rank and resets current-tier progress to zero.
- [ ] Rank VI never retains current-tier progress.
- [ ] Inspection and modification work for known offline players as well as online players.
- [ ] Players are resolved to stored UUIDs so name changes do not create duplicate progression records.
- [ ] Administrative changes are persisted immediately.
- [ ] An online affected player's boss bar and rank state are updated after a change.
- [ ] An online affected player's feedback and aura state are updated after a change.
- [ ] Administrative commands require distinct, documented permissions suitable for inspection and modification.
- [ ] Unauthorized use does not disclose another player's progression.
- [ ] Invalid player names, ambiguous identities, invalid numbers, and storage failures produce clear responses without partial changes.