26 lines
1.9 KiB
Markdown
26 lines
1.9 KiB
Markdown
---
|
||
type: Log
|
||
title: Spigot Harvest Design Log
|
||
description: 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`.
|