Files
spigot-heights/design/user-stories/us-004-configure-and-persist.md
T
dmg e802319f45
Release / release (push) Successful in 2m11s
CI / build (push) Successful in 1m32s
feat(commands): manage height bounds with tab completion
2026-09-06 19:53:19 -04:00

29 lines
1.5 KiB
Markdown

---
type: User Story
title: "US-004: Configure and persist stature behavior"
description: Give operators validated settings and durable UUID-keyed player scales.
status: done
---
# US-004: Configure and persist stature behavior
As a **server operator**, I want validated stature and launcher settings with durable state so that behavior remains safe and predictable.
## Acceptance criteria
- [x] Defaults are minimum `0.4`, maximum `2.0`, adjustment step `0.1`, launcher threshold `0.5`, speed `1.5`, and cooldown `20` ticks.
- [x] Configuration requires finite positive values, minimum no greater than maximum, and a launcher threshold within the supported scale range.
- [x] Invalid startup configuration disables the plugin with a clear error.
- [x] Player scales are stored by UUID using atomic file replacement where supported.
- [x] Updating known state preserves unknown forward-compatible YAML fields.
- [x] Missing state defaults safely to scale `1.0` clamped to the configured range.
- [x] Saved out-of-range state is clamped before it is applied, except exact scale `1.0`, which is preserved for restoration.
- [x] Configuration and state behavior have automated tests.
- [x] Approved min/max commands validate and persist changes before publishing live settings to gameplay listeners, without immediately resizing players.
## Related
- [User-story catalog](index.md)
- [US-007: Manage stature settings with commands](us-007-manage-settings-commands.md)
- [US-006: Restore default stature](us-006-restore-default-stature.md)