Overview
Crop growth can consume nearby water and require water access.
Features
- Configure evaporation chance, search radius, and weighted replacement blocks.
- Optionally prevent growth when suitable water is absent.
FFUtilities is included in this mod JAR; no separate library download is needed.
How evaporation works
- When a crop successfully grows, there is a chance that a nearby water block is replaced with a block picked from a weighted table.
- Optionally (on by default), crops refuse to grow at all when no suitable water is found within range of their farmland.
- Set
trees.disable = falseto enable tree water requirements and evaporation. Trees use independent settings and search around the soil beneath the sapling; farmland is not required. Natural growth and bone meal are covered. Water evaporates only after successful tree formation, not stage advancement or failed attempts. Vanilla-style saplings are covered on every loader; fungi, mushrooms and azaleas are unaffected. - Splash particles show when water is replaced.
- Farmland and water are found through tags, so other mods and datapacks can opt in. See the Datapacks page.
- Crop coverage: on NeoForge and Forge, any crop that fires the loader's crop-grow events. On Fabric, vanilla-style crops and stems (wheat, carrots, potatoes, beetroots, torchflowers, melons, pumpkins, and modded crops built on them).
Default behaviour
The common config has separate [crops] and [trees] groups. Each starts with its master disable switch, which disables both water requirements and evaporation for that group. Crops are enabled by default; trees are disabled. All other parameter defaults match.
| Key in each group | Default | Effect |
|---|---|---|
disable | Crops: false; trees: true | Master disable switch, first inside each group |
preventDryGrowth | true | Block growth without suitable nearby water |
requireSourceForGrowth | false | When true, only source water satisfies this group's growth check |
evaporateChance | 0.15 | Base chance to replace water after successful growth |
replaceMode | BOTH | SOURCE, FLOWING or BOTH water states can be replaced |
replaceTable | Coarse dirt 5, rooted dirt 5, gravel 3, moss 1 | Independent weighted replacement blocks |
searchRadius | 6 | Horizontal search radius from the farmland or sapling soil |
searchYMin / searchYMax | 0 / 1 | Relative vertical search range from the farmland or soil |
Configuration
Settings live in config/ffcropevaporation-common.toml. Crop and tree values can be changed independently. Keep trees.disable = true to turn off all tree features. Setting preventDryGrowth = false in an enabled group removes its water requirement while keeping evaporation active.
Upgrading: the old [growth], [evaporation] and [search] settings are replaced. Reapply custom values under [crops] and, if desired, [trees]. Old settings are not migrated automatically.
Shared temperature settings
[temperature] remains separate and scales each group's own evaporation chance. Defaults: scaleByTemperature = true, coldTemp = 0.0, hotTemp = 2.0, coldMult = 0.4, hotMult = 1.75. The multiplier interpolates between the cold and hot anchors; the resulting chance is capped at 100%.
Weighted replacement table
Each group's replaceTable uses entries like "minecraft:coarse_dirt,5". Higher weights are more likely. The crop and tree tables are independent.
Requirements and source version
| Minecraft | Loader | Requires |
|---|---|---|
| 1.20.1 | Fabric | Fabric Loader 0.14.21 or newer and Fabric API |
| 1.20.1 | Forge | Forge 47.1 or newer |
| 1.20.6 | Fabric | Fabric Loader 0.15.11 or newer and Fabric API |
| 1.20.6 | NeoForge | NeoForge 20.6.141 or newer |
| 1.21.1 | Fabric | Fabric Loader 0.16.1 or newer and Fabric API |
| 1.21.1 | NeoForge | NeoForge 21.1.211 or newer |
| 1.21.11 | Fabric | Fabric Loader 0.18.0 or newer and Fabric API |
| 1.21.11 | NeoForge | NeoForge 21.11.45 or newer |
| 26.1 | Fabric | Fabric Loader 0.18.4 or newer, Fabric API and Java 25 |
| 26.1.1 | Fabric | Fabric Loader 0.18.5 or newer, Fabric API and Java 25 |
| 26.1.2 | Fabric | Fabric Loader 0.19.2 or newer, Fabric API and Java 25 |
| 26.1.2 | NeoForge | NeoForge 26.1.2.114 or newer and Java 25 |
| 26.2 | Fabric | Fabric Loader 0.19.3 or newer, Fabric API and Java 25 |
| 26.2 | NeoForge | NeoForge 26.2.0.88 or newer and Java 25 |
| 26.3 | Fabric | Fabric Loader 0.19.5 or newer, Fabric API and Java 25 |
Source version: 0.3.0. FFUtilities 0.2.15 is included in the 26.x jars and 0.2.8 in the others.
The Modrinth button is enabled only when a published project link is configured. The source version above may be newer than the latest published file.