--- type: User Story title: "US-020: Control a base through a dialog UI" description: Let players inspect and control their base through Minecraft's native dialog interface. status: done --- # US-020: Control a base through a dialog UI As a **player**, I want a dialog-based base dashboard so that I can inspect progression and manage my base without remembering command arguments. ## Acceptance criteria - [x] `/basesettings` and `/basesettings ui` open the base-control dialog. - [x] `/homesettings` and `/homesettings ui` behave identically. - [x] `/basesettings status` retains the chat-based progression report. - [x] The dialog summarizes current Base and Pocket Base progression. - [x] Dialog controls cover visitors, navigation, flight, border, spawnable overlay, boss bar, Pocket Base mob spawning, upgrades, and biome selection when applicable. - [x] Controls indicate their current or locked state. - [x] Purchases require confirmation and continue using existing validation, payment, and persistence logic. - [x] `ui` is offered through command autocomplete. - [x] Non-player execution remains safely rejected. - [x] Automated tests verify dialog routing and generated controls. - [x] Fixed dialog commands use Purpur static run-command actions rather than macro templates. - [x] A rendering regression test verifies fixed command buttons do not throw `No variables in macro`. - [x] The dialog uses Purpur's supported Paper dialog API and opens on the production Purpur 26.2 runtime without missing-class or command exceptions. ## Related - [US-008: Unlock Base IV visitor access](us-008-unlock-visitor-access.md) - [US-009: View progression and unlock notifications](us-009-view-progression-and-notifications.md) - [US-015: Unlock a Pocket Base](us-015-unlock-a-pocket-base.md) - [US-018: Control Pocket Base mob spawning](us-018-control-pocket-base-mob-spawning.md) - [US-019: Change a Pocket Base biome](us-019-change-a-pocket-base-biome.md)