1.8 KiB
1.8 KiB
type, title, description, status
| type | title | description | status |
|---|---|---|---|
| User Story | US-005: Deliver blocks and complete a quest | Let a player deliver requested blocks at a quest board and receive the escrowed reward. | done |
US-005: Deliver blocks and complete a quest
As a player, I want to deliver requested blocks to a quest board so that I receive the promised reward and the issuer can claim my delivery.
Acceptance criteria
- An active quest offers a Complete Quest action through every registered board.
- Completion requires the delivering player to possess the full requested quantity of the exact block material.
- Successful completion removes the requested blocks from the delivering player's inventory and stores them as a claim for the issuer.
- Successful completion gives the exact escrowed reward items to the delivering player.
- Reward items that do not fit are dropped safely at the delivering player's feet with a clear message.
- The issuer is notified immediately when online or on their next login when offline that delivered blocks can be claimed at a quest board.
- When player commands are enabled,
/quests complete <quest>provides equivalent behavior with contextual autocomplete. - Completion is atomic and exactly one player can complete a quest, including simultaneous attempts.
- Validation or persistence failure does not consume delivered blocks, release rewards, or change quest state.
- Completed quests are no longer shown as active or completable.
- Automated tests verify inventory validation, settlement, overflow, notifications, rollback, and concurrent completion protection.