Overview

Crop growth can consume nearby water and require water access.

Wide daytime shot of a large wheat farm beside an irrigation channel where several of the water blocks have already turned into coarse dirt, rooted dirt, gravel and moss.

Features

FFUtilities is included in this mod JAR; no separate library download is needed.

How evaporation works

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 groupDefaultEffect
disableCrops: false; trees: trueMaster disable switch, first inside each group
preventDryGrowthtrueBlock growth without suitable nearby water
requireSourceForGrowthfalseWhen true, only source water satisfies this group's growth check
evaporateChance0.15Base chance to replace water after successful growth
replaceModeBOTHSOURCE, FLOWING or BOTH water states can be replaced
replaceTableCoarse dirt 5, rooted dirt 5, gravel 3, moss 1Independent weighted replacement blocks
searchRadius6Horizontal search radius from the farmland or sapling soil
searchYMin / searchYMax0 / 1Relative 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

MinecraftLoaderRequires
1.20.1FabricFabric Loader 0.14.21 or newer and Fabric API
1.20.1ForgeForge 47.1 or newer
1.20.6FabricFabric Loader 0.15.11 or newer and Fabric API
1.20.6NeoForgeNeoForge 20.6.141 or newer
1.21.1FabricFabric Loader 0.16.1 or newer and Fabric API
1.21.1NeoForgeNeoForge 21.1.211 or newer
1.21.11FabricFabric Loader 0.18.0 or newer and Fabric API
1.21.11NeoForgeNeoForge 21.11.45 or newer
26.1FabricFabric Loader 0.18.4 or newer, Fabric API and Java 25
26.1.1FabricFabric Loader 0.18.5 or newer, Fabric API and Java 25
26.1.2FabricFabric Loader 0.19.2 or newer, Fabric API and Java 25
26.1.2NeoForgeNeoForge 26.1.2.114 or newer and Java 25
26.2FabricFabric Loader 0.19.3 or newer, Fabric API and Java 25
26.2NeoForgeNeoForge 26.2.0.88 or newer and Java 25
26.3FabricFabric 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.