feat(progress): count creeper explosion encounters

This commit is contained in:
dmg
2026-08-08 14:18:45 -04:00
parent c9e0a5d121
commit d1535bbf26
6 changed files with 143 additions and 0 deletions
+2
View File
@@ -30,6 +30,8 @@ Player progress is loaded into an online cache before synchronous aura decisions
A creeper death is attributed to a player when the player directly dealt the final damage or is attributable through a projectile or owned tameable. The progression service deduplicates a creeper death and records one point.
A self-destructing creeper also awards one point to every player its explosion would have hit. Explosion awards are deduplicated independently for each creeper and player, count before armor or aura mitigation, and use the same feedback as credited kills.
For explosions, player damage events establish whether an unlocked player would have been hit before armor mitigation. Each protected player receives their own rank multiplier. If any aura activates, the corresponding creeper explosion's affected block list is cleared for everyone. Rank VI cancels the player's damage event entirely.
## Commands and configuration
+1
View File
@@ -16,3 +16,4 @@ description: Chronological record of material changes to the Spigot Creeper Fear
- Completed US-001 with asynchronous SQLite current-tier progress, direct and indirect kill attribution, bounded death deduplication, and automated tests.
- Completed US-002 with per-tier rank advancement, online aura state, creeper block protection, rank damage multipliers, and rank VI cancellation.
- Completed US-003 with temporary configurable boss bars, current-tier progress presentation, full-screen rank-up titles, and maximum-rank hiding.
- Extended US-001 so a self-destructing creeper awards deduplicated progress and normal feedback to every player its explosion hits.
@@ -14,6 +14,9 @@ As a **player**, I want my qualifying creeper kills recorded so that my Creeper
- [x] A creeper kill attributable to a player adds one point to that player's current-tier progress.
- [x] Direct melee kills and indirect kills attributable to the player, including projectiles and the player's tamed wolves, count.
- [x] A single creeper death cannot award progress more than once.
- [x] A creeper explosion awards one point to every player the explosion would have hit, including when armor or aura immunity reduces final damage to zero.
- [x] Each affected player receives at most one point from a given creeper explosion, while multiple affected players can each receive a point.
- [x] Explosion-earned progress produces the same progress and rank-up feedback as a credited kill.
- [x] Progress is stored using the player's UUID rather than their mutable name.
- [x] The player's current rank and current-tier progress are persisted separately.
- [x] Lifetime creeper-kill totals are not retained.