Files
spigot-base/design/user-stories/us-008-unlock-visitor-access.md
T
dmg 3be3e43072
Release / release (push) Successful in 2m28s
CI / build (push) Successful in 1m3s
fix(teleport): enforce visitor warm-up
2026-08-21 22:28:34 -04:00

2.8 KiB

type, title, description, status
type title description status
User Story US-008: Unlock Base IV visitor access Let players spend diamonds to permit controlled, cooldown-limited visitor teleports to their base. done

US-008: Unlock Base IV visitor access

As a player with Base III, I want to open my base to visitors so that other players can conveniently join me there under my control.

Acceptance criteria

  • Base IV requires Base III and an established base.
  • /basesettings upgrade offers the Base IV purchase for a configurable price that defaults to 128 diamonds, replacing /base upgrade and /home upgrade.
  • 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.
  • /basesettings visitors allowed permits visitor access idempotently for a Base IV owner, and /basesettings visitors blocked blocks it idempotently.
  • Invalid visitor arguments show command usage, and allowed and blocked are offered through autocomplete.
  • The visitor-access preference persists across reconnects and restarts.
  • /gotobase <owner> autocompletes bases that the requesting player is currently eligible to visit.
  • /visit <owner> aliases /gotobase <owner> with identical autocomplete, including eligible bases whose owners are offline.
  • Enabled bases remain visitable while their owners are offline.
  • A visitor teleport uses the destination owner's current warm-up tier, but always requires at least a one-second stationary warm-up; /visit and /gotobase never teleport instantly.
  • 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.