Files
spigot-base/design/user-stories/us-008-unlock-visitor-access.md
T
dmg 28dd5422d5
Release / release (push) Successful in 2m56s
CI / build (push) Successful in 1m35s
feat(teleport): add warmup particles and fading departure clouds
2026-09-06 21:11:24 -04:00

3.5 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

  • Visitor warm-ups share the nearby-visible, progressively denser floating particles used by home teleports.

  • Successful visitor teleports leave a two-second fading departure cloud; cancellation or failure stops emission without a departure cloud.

  • Effects are bounded and cleaned up on shutdown, with regression coverage preserving visitor timing, safety, and cooldowns.

  • 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.

  • /visit and /gotobase require the visitor to be in the destination base's recorded world; cross-dimension requests are rejected before warm-up with a clear message and without consuming cooldown.

  • 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.