File Details
evercrops-neoforge-1.21.1-3.2.0.jar
- R
- May 1, 2026
- 175.04 KB
- 38
- 1.21.1
- NeoForge
File Name
evercrops-neoforge-1.21.1-3.2.0.jar
Supported Versions
- 1.21.1
Curse Maven Snippet
Changelog for Neoforge EverCrops 1.21.1
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[3.2.0] - 2026-4-27
Added
- Catch-up growth for sugar cane — AGE 0–15, spawns new cane above when AGE wraps, max column height 3, no light requirement.
- Catch-up growth for cactus — AGE 0–15, same wrapping pattern as sugar cane, max column height 3.
- Catch-up growth for kelp — AGE 0–25, each growth step places a new kelp head above (converting the old head to a kelp plant body), stops at AGE 25. Growth gated at ~14% per tick (mirroring vanilla probability).
ModEventsplacement/break tracking extended to cover sugar cane, cactus, and kelp.
[3.1.0] - 2026-4-26
Added
- Catch-up growth for sweet berry bushes — ages 0–3, requires light level ≥ 9 (matches vanilla).
- Catch-up growth for nether wart — ages 0–3, no light requirement.
- Catch-up growth for cocoa pods — ages 0–2, no light requirement.
- New
CropCatchUphelper class consolidating the timing/threshold/light-gating logic shared by the new mixins.
Changed
ModEventsplacement/break tracking generalized via a singleisTracked(BlockState)guard now covering crops, stems, sweet berry bushes, nether wart, and cocoa pods.
[3.0.0] - 2026-4-25
Added
/evercrops simulate <ticks>command — backdates all tracked crop entries in the current dimension by the given number of ticks, allowing offline-growth logic to be triggered immediately on the next random tick. Useful for testing./evercrops tick <radius>command — forces arandomTickon every tracked crop block within the given radius of the player, applying growth instantly without waiting for random tick scheduling./evercrops inspect [x y z]command — displays the storedCropStatefor a block position (defaults to the player's feet), including call/growth deltas and whether offline growth would trigger on the next tick.
Changed
- Replaced RocksDB persistence with Minecraft's built-in
SavedDatasystem. Crop state is now stored as NBT in<world>/data/evercrops.datper dimension — no native libraries, no manual lifecycle management, and no platform-specific binaries required.
Fixed
- Fixed crash (
IllegalArgumentException: Cannot get property age) caused by mods that extendCropBlockorStemBlockbut register blocks (e.g.minecraft:oxeye_daisy) whoseStateDefinitiondoes not include the standard age property. The mixin now guards all age-property access and skips incompatible blocks silently.

