2.6 KiB
2.6 KiB
type, title, description
| type | title | description |
|---|---|---|
| Log | Spigot Harvest Design Log | Chronological record of material decisions affecting the Spigot Harvest design. |
Spigot Harvest Design Log
2026-08-14 — Initial harvesting progression design
- Initial crop support includes wheat, carrots, potatoes, and beetroot, with an independent Level 0–X progression path for each crop.
- Normal crop breaking triggers auto-harvest, while sneaking bypasses auto-harvest without preventing the manually broken mature crop from contributing progress.
- Connected crops may be adjacent in any of the eight horizontal directions and differ by no more than one Y level for each connection.
- The total operation cap includes the triggering crop and doubles from 4 at Level I through 2,048 at Level X.
- Level requirements are incremental rather than cumulative and are based on the preceding level's harvest cap: a multiplier of 100 through Level V, 200 for Levels VI–VIII, 300 for Level IX, and 400 for Level X.
- Automated harvests contribute progression, execute at one crop per server tick by default, and permit only one active auto-harvest operation per player.
- Qualifying progress displays a player-toggleable boss bar that is enabled by default, persists its preference, and remains visible for five seconds after its latest update by default.
- Harvested crops are automatically replanted, remaining drops go to the player's inventory, and inventory overflow drops near the player.
- The project and delivery pipeline will follow the neighboring Spigot Base project where applicable.
2026-08-14 — Build and release foundation completed
- Added the Java 17 Gradle/Spigot foundation, strict compiler linting, JUnit 5 lifecycle, plugin metadata, and initial documentation.
- Added Gitea CI and semantic-release workflows with development and versioned JAR artifacts.
- Verified the foundation with
./gradlew clean check jar.
2026-08-14 — Initial plugin scope completed
- Implemented independent Level 0–X progression for wheat, carrots, potatoes, and beetroot with validated configuration and atomic UUID-keyed YAML state.
- Implemented deterministic connected-crop traversal, one-operation-per-player scheduling, one-crop-per-tick harvesting, protection-event checks, automatic replanting, inventory delivery, and overflow drops.
- Added player status and boss-bar controls, five-second idle progress presentation, unlock titles, administrative inspection and mutations, offline-player lookup, and safe confirmed resets.
- Developed the progression, traversal, drops, persistence, settings, status, and administration behavior through failing-first automated tests.