feat(admin): complete configurable progression
Release / release (push) Successful in 3m57s
CI / build (push) Successful in 54s

This commit is contained in:
dmg
2026-08-09 15:12:04 -04:00
parent c87d923cad
commit 8b1064b971
41 changed files with 924 additions and 626 deletions
@@ -2,7 +2,7 @@
type: User Story
title: "US-008: Unlock Base IV visitor access"
description: Let players spend diamonds to permit controlled, cooldown-limited visitor teleports to their base.
status: in-progress
status: done
---
# US-008: Unlock Base IV visitor access
@@ -11,23 +11,23 @@ As a **player with Base III**, I want to open my base to visitors so that other
## Acceptance criteria
- [ ] Base IV requires Base III and an established base.
- [ ] `/base upgrade` offers the Base IV purchase for a configurable price that defaults to 128 diamonds.
- [ ] A successful purchase removes the complete price atomically from the player's direct inventory.
- [ ] Insufficient funds, an invalid state, or a failed persistence operation does not consume any diamonds or grant Base IV.
- [ ] `/basevisitors` lets a Base IV owner toggle visitor access on and off.
- [ ] The visitor-access preference persists across reconnects and restarts.
- [ ] `/gotobase <owner>` autocompletes bases that the requesting player is currently eligible to visit.
- [ ] Enabled bases remain visitable while their owners are offline.
- [ ] A visitor teleport uses the destination owner's current warm-up tier.
- [ ] Looking around is permitted, while movement between block coordinates, damage, teleportation, world change, death, logout, or a conflicting teleport cancels the visitor warm-up.
- [ ] Cancellation or destination failure does not consume a visitor cooldown.
- [ ] A safe destination is resolved at or near the owner's recorded base center.
- [ ] Each visitor has an independent cooldown for each destination owner.
- [ ] On successful teleport, the visitor cooldown duration is captured from the destination owner's current cooldown tier.
- [ ] A later owner cooldown upgrade applies to future visits without rewriting a cooldown already in progress.
- [ ] Visiting another base does not consume or modify the owner's personal `/base` cooldown or the visitor's personal `/base` cooldown.
- [ ] Disabling visits prevents new requests but does not interrupt a teleport that has already completed.
- [x] Base IV requires Base III and an established base.
- [x] `/base upgrade` offers the Base IV purchase for a configurable price that defaults to 128 diamonds.
- [x] A successful purchase removes the complete price atomically from the player's direct inventory.
- [x] Insufficient funds, an invalid state, or a failed persistence operation does not consume any diamonds or grant Base IV.
- [x] `/basevisitors` lets a Base IV owner toggle visitor access on and off.
- [x] The visitor-access preference persists across reconnects and restarts.
- [x] `/gotobase <owner>` autocompletes bases that the requesting player is currently eligible to visit.
- [x] Enabled bases remain visitable while their owners are offline.
- [x] A visitor teleport uses the destination owner's current warm-up tier.
- [x] Looking around is permitted, while movement between block coordinates, damage, teleportation, world change, death, logout, or a conflicting teleport cancels the visitor warm-up.
- [x] Cancellation or destination failure does not consume a visitor cooldown.
- [x] A safe destination is resolved at or near the owner's recorded base center.
- [x] Each visitor has an independent cooldown for each destination owner.
- [x] On successful teleport, the visitor cooldown duration is captured from the destination owner's current cooldown tier.
- [x] A later owner cooldown upgrade applies to future visits without rewriting a cooldown already in progress.
- [x] Visiting another base does not consume or modify the owner's personal `/base` cooldown or the visitor's personal `/base` cooldown.
- [x] Disabling visits prevents new requests but does not interrupt a teleport that has already completed.
## Related