feat(pocket-base): split hostile and passive mob spawning
This commit is contained in:
+3
-2
@@ -95,8 +95,9 @@ description: Chronological record of material decisions affecting the Spigot Bas
|
||||
## 2026-08-24 — Pocket Base mob-spawning control
|
||||
|
||||
- Disabled natural hostile and passive mob spawning by default in new and existing Pocket Bases without a saved preference.
|
||||
- Added the persisted owner setting `/basesettings pocket mobs enable|disable`, contextual autocomplete, and status reporting.
|
||||
- Reapplied saved spawn flags when Pocket Base worlds load and restored the prior world setting when persistence fails.
|
||||
- Added independent persisted owner settings through `/basesettings pocket mobs <hostile|passive> <enable|disable>`, contextual autocomplete, and status reporting.
|
||||
- Migrated each legacy combined mob-spawning preference to both categories to preserve existing behavior.
|
||||
- Reapplied both saved spawn flags when Pocket Base worlds load and restored both prior world settings when persistence fails.
|
||||
- Verified the feature with `./gradlew clean check jar`.
|
||||
|
||||
## 2026-08-24 — Relocatable Pocket Base return portals
|
||||
|
||||
@@ -1,25 +1,27 @@
|
||||
---
|
||||
type: User Story
|
||||
title: "US-018: Control Pocket Base mob spawning"
|
||||
description: Let Pocket Base owners control natural mob spawning in their private world, with spawning disabled by default.
|
||||
description: Let Pocket Base owners control hostile and passive natural mob spawning independently in their private world, with both disabled by default.
|
||||
status: done
|
||||
---
|
||||
|
||||
# US-018: Control Pocket Base mob spawning
|
||||
|
||||
As a **Pocket Base owner**, I want to enable or disable natural mob spawning in my Pocket Base so that I can choose whether the private world supports normal mob activity.
|
||||
As a **Pocket Base owner**, I want to enable or disable hostile and passive natural mob spawning independently in my Pocket Base so that I can choose which kinds of normal mob activity its private world supports.
|
||||
|
||||
## Acceptance criteria
|
||||
|
||||
- [x] Natural mob spawning is disabled by default in every new Pocket Base and in existing Pocket Bases that have no saved preference.
|
||||
- [x] A Pocket Base owner can use `/basesettings pocket mobs enable|disable` to control natural mob spawning in their own Pocket Base.
|
||||
- [x] The setting controls both hostile and passive natural spawning only in the owner's Pocket Base.
|
||||
- [x] The command is unavailable until Pocket Base I is unlocked.
|
||||
- [x] The command and its modes are offered through contextual autocomplete.
|
||||
- [x] `/basesettings status` displays the current Pocket Base mob-spawning setting.
|
||||
- [x] The preference persists across restarts and is reapplied when the Pocket Base world loads.
|
||||
- [x] Disabling natural spawning does not remove existing mobs or prevent explicitly spawned or summoned mobs.
|
||||
- [x] Persistence or world-application failures produce a clear failure message without reporting a successful change.
|
||||
- [x] Hostile and passive natural mob spawning are both disabled by default in every new Pocket Base and in existing Pocket Bases that have no saved preference.
|
||||
- [x] A Pocket Base owner can use `/basesettings pocket mobs hostile enable|disable` to control hostile natural mob spawning in their own Pocket Base.
|
||||
- [x] A Pocket Base owner can use `/basesettings pocket mobs passive enable|disable` to control passive natural mob spawning in their own Pocket Base.
|
||||
- [x] Changing one mob category does not change the other category.
|
||||
- [x] The commands are unavailable until Pocket Base I is unlocked.
|
||||
- [x] The commands, categories, and modes are offered through contextual autocomplete.
|
||||
- [x] `/basesettings status` displays the current hostile and passive Pocket Base mob-spawning settings.
|
||||
- [x] Both preferences persist across restarts and are reapplied when the Pocket Base world loads.
|
||||
- [x] Existing saved `mob-spawning-enabled` values migrate to both category preferences, preserving prior behavior.
|
||||
- [x] Disabling either natural-spawning category does not remove existing mobs or prevent explicitly spawned or summoned mobs.
|
||||
- [x] Persistence or world-application failures produce a clear failure message, restore both prior world flags, and do not report a successful change.
|
||||
|
||||
## Related
|
||||
|
||||
|
||||
Reference in New Issue
Block a user