This repository currently targets Forge 1.20.1 on the active branch.
Environmental Expansion adds weather-driven outdoor water behavior on top of the base WPO fluid simulation.
The current add-on includes:
- rain barrels and cisterns for passive collection
- roof collectors, ground basins, and intake grate collectors
- rain-fed puddle growth
- distant rain catch-up for newly visited areas
- terrain absorption and later release
- evaporation and snowmelt
- drought tracking
- seasonal multipliers
- biome-based climate profiling for vanilla and modded biomes
The placeable content in this module is built around collector-style storage blocks:
Rain BarrelCisternRoof CollectorGround BasinIntake Grate Collector
These blocks either collect rain directly, drain nearby surface water, push stored water downward, or combine those roles depending on their configured collector profile.
The environmental ticker samples outdoor columns around active players on a fixed interval and can apply several systems:
- rain accumulation into cauldrons and WPO surface water
- flood amplification during thunderstorms
- evaporation from exposed surface water
- absorption of surface water into suitable terrain
- release of stored water back to the surface under the right conditions
- snow and snow-block melt into WPO water
- ambient wetness memory so unloaded rainy areas can still materialize puddles later
The main world state persisted by the add-on includes drought score, ambient wetness, and absorbed ground water.
Environmental Expansion applies biome climate profiles on top of the global config values.
- Each biome resolves into one of these archetypes:
arid droughtdry highlandsvolcaniccold highlandstropical monsoonriparian wetlandboreal wettemperate highlandssnowmelt alpinecoastal fluvialtundra steppebalanced temperate
- On server or overworld load, missing biome entries are generated from registered biome information such as biome id naming and climate-related values.
- Generated and refined results are stored in:
config/wpo_environmental_expansion/biome-profiles.json
- The mod ships curated biome compatibility presets for major biome packs including
Terralith,Biomes O' Plenty,Oh The Biomes We've Gone,Regions Unexplored, andWilliam Wythers' Overhauled Overworld. - Curated preset biomes are treated as locked compatibility profiles. They do not collect live scout samples or drift away from their shipped archetype.
- Unknown modded biomes still fall back to generated climate signals, terrain sampling, and biome-name keyword scoring.
- During play, uncovered modded biomes can refine their profile using real observed surface blocks.
- Refinement is capped. After a biome reaches its observation limit, it stops collecting additional live samples and uses the stored profile it already has.
Base generation uses climate and biome-name hints. Live refinement uses block signals like:
snow,ice, and similar names for colder and more frozen behaviorsand,red_sand,terracotta,cactus, and similar names for hotter and drier behaviormud,moss,mangrove,clay,seagrass, and similar names for wetter and more retentive behaviorjungleandbamboofor hotter and wetter behaviorspruce,podzol, andfernfor cooler and wetter behavior
Those archetypes act as multipliers on the existing environmental systems rather than replacing them.
They currently affect:
- rain buildup and puddle chance
- thunder flood amplification
- evaporation strength
- soil absorption and release behavior
- snowmelt runoff
- collector rain capture rate
- ambient wetness catch-up and dry-down
The common config is stored at:
config/wpo_environmental_expansion/common.toml
The in-game config screen exposes the main systems and tuning values for:
- update interval and sampling radius
- rain chance and intensity
- storm intensity
- evaporation and absorption
- distant rain catch-up
- drought behavior
- season length and seasonal multipliers
- collector/storage values
It also includes a Clear Modded Biome Samples action so any non-curated modded biome observations can be wiped before running a fresh scout pass.
The add-on includes a server-side biome scout command set:
/wpo scoutbiomes [delaySeconds] [startIndex]/wpo scoutstatus/wpo scoutstop
The scout uses findClosestBiome3d, teleports to a sky-visible surface spot, samples the biome, then advances after the configured delay.
- locate startup delay is
12s - default sampling window is
10s - biomes that already have locked compatibility coverage or in-person sample coverage are skipped automatically
- Pipez is the recommended companion mod for external fluid transport when using the WPO add-ons.
- This add-on depends on both
SKDS-CoreandWater-Physics-Overhaulin the local workspace.
- Original Water Physics Overhaul work:
Sasai_Kudasai_BM - 1.18.2 work used in the porting path:
Felicis - 1.20.1 port and repository maintenance:
dev-willbird1936
For local source builds, clone these repositories next to this one so the folder layout is:
../SKDS-Core
../Water-Physics-Overhaul
../WPO-Environmental-Expansion
Typical local build:
.\gradlew.bat buildExplicit version build:
.\gradlew.bat build -PmcVersion=1.20.1Stage the release jar into the workspace release folder:
.\gradlew.bat stageRelease -PmcVersion=1.20.1Version-specific Minecraft and release values now live in versions/<mcVersion>.properties. Keep release tags in the form v1.20.1-<mod-version>, and branch by Minecraft version when the code stops being cleanly shared.
- Stable repository name, without the Minecraft version in the repo title
mainfor the current maintained linemc/<minecraft-version>branches when code starts to diverge between game versions- release tags in the form
v<minecraft-version>-<mod-version>