2.6 KiB
type, title, description, status
| type | title | description | status |
|---|---|---|---|
| User Story | US-023: Craft and use a Pocket Base Keystone | Let Pocket Base owners craft a reusable item for instant round-trip travel between their current location and their private dimension. | done |
US-023: Craft and use a Pocket Base Keystone
As a Pocket Base owner, I want to craft a reusable keystone that instantly takes me into my Pocket Base and back so that I can access my private dimension without finding a portal.
Acceptance criteria
-
The Pocket Base Keystone is a distinct Recovery Compass identified by persistent item metadata rather than its display name alone.
-
Keystone creation accepts the valid generic item metadata supplied for Recovery Compasses by the supported Purpur runtime.
-
Its shaped recipe places an Ender Pearl in the center, Netherite Ingots on the four cardinal slots, and Obsidian in the four corners.
-
Only a player who has unlocked Pocket Base I can complete the recipe or use a keystone.
-
Right-clicking a keystone outside a Pocket Base instantly teleports the player to their own Pocket Base arrival point.
-
Entering records the player's exact prior world, position, yaw, and pitch as the return destination.
-
Right-clicking a keystone inside the player's own Pocket Base returns them safely to the recorded destination.
-
Return destinations persist across logout and server restart.
-
Missing worlds and unsafe destinations fail safely without replacing or discarding the recorded return destination.
-
A keystone is reusable, has no warm-up or cooldown, and always accesses the user's own unlocked Pocket Base even when transferred between players.
-
Keystone travel clears accumulated fall distance and does not change existing portal travel behavior.
-
Automated tests cover recipe shape, crafting and use eligibility, metadata authentication, entry, return, persistence, and unavailable or unsafe destinations.
-
Keystone entry and return work when right-clicking air or blocks, regardless of facing direction.
-
Vanilla no-action events are handled without bypassing explicit item-use restrictions.
-
Regression tests cover air and block interactions for entry and return, and denied item use.
Verification
./gradlew clean check jarpasses, including event-dispatch regression coverage for air/block entry and return and explicit item-use denial.- Live-server verification remains pending deployment.