climora-fabric-1.21.1-0.1.jar
Curse Maven Snippet
What's new
## v0.1 - First Front
### Added
**Climate grid**
- The world is divided into weather cells of 128×128 blocks (8×8 chunks). Cells around players are built
from the biomes and terrain underneath them and simulated on the server without loading chunks.
- Every dimension with an open sky gets its own simulation — the Overworld and modded dimensions like it.
The Nether and the End have no weather.
- Values are blended between cell centres, so temperature, wind and rain have no steps at cell borders.
**Temperature**
- Air temperature in °C, from the biome, the elevation and the time of day. Roughly 3 °C colder per
100 blocks of altitude.
- Every vanilla Overworld biome has its own profile: a daily mean, a day/night swing and a humidity.
A desert reaches about +38 °C by day and drops to +14 °C at night, because dry air loses heat fast;
a jungle stays warm and humid around the clock with a swing of only ±5 °C; the sea barely changes at all.
- Mountain biomes are cold in their own right — their profile is defined at mountain height, so peaks are
not cooled twice.
- Neighbouring cells exchange heat, and clouds damp the day/night swing.
**Pressure and wind**
- Highs and lows a couple of kilometres across drift across the world. They depend on the world seed and
travel with the prevailing flow, taking about one in-game day to pass overhead.
- Wind is computed from the pressure gradient — out of highs, into lows — plus the steering flow that
carries the weather systems. Gusts pick up in thunderstorms.
- Wind carries moisture and clouds, so weather arrives from upwind.
- Rain leans and snow drifts with the wind.
**Moisture, clouds and precipitation**
- Air takes up moisture from the biome and from nearby water; rising air in a low collects it and lifts it.
- Cloud cover and rain grow out of moist rising air. Deserts almost never see rain, jungles often do.
- Rain falls only where the simulation puts it, and it has edges. The sky is always overcast where it rains.
- Clouds are drawn from the simulated cover instead of the vanilla texture: block-shaped like vanilla, but
only where there are clouds. Rain clouds sit lower and thicker, storm clouds grow into tall towers.
- Clouds drift with the weather systems and look the same for every player on a server.
- Rain or snow is decided by air temperature, not by the biome, so it snows above the freezing line in
mountains that would rain lower down.
**Thunderstorms**
- Storms form on their own where warm, very humid air is forced upwards, either by a low or by afternoon
heating. The sky darkens, clouds tower, wind turns gusty.
- Lightning strikes only inside storm cells and only where rain is falling. Lightning rods and target
selection work as in vanilla.
**Snow and ice**
- Snow builds up in layers while it is snowing.
- Still water freezes at the edges when the air is below −1 °C.
- Snow and ice melt anywhere warmer than +1 °C, **including in the dark**. Vanilla needs bright light to
melt, which is why snow in shade used to last forever.
**Weather vane**
- A block crafted from 4 copper ingots and an iron ingot. Its arrow turns to face the wind and sways in
the gusts.
- A comparator next to it reads the wind speed on the Beaufort scale as a signal of 0–15.
**Vanilla integration**
- Local weather drives the vanilla systems: mobs get wet, fires go out, cauldrons fill, snow settles.
- Vanilla `/weather clear|rain|thunder` turns on local weather within about 4 km of the player. This can
be switched off.
**Commands** (permission level 2)
- `/climora temperature [pos]` — air temperature at a position.
- `/climora cell [pos]` — the state of a weather cell: mean temperature, daily swing, pressure, humidity,
cloud cover, precipitation.
- `/climora weather clear|cloudy|rain|storm [radius] [seconds]` and `/climora weather auto`.
- `/climora stats` — cell counts and simulation load.
- `/climora resample [radius]` — rebuild cells from the terrain, needed after changing biomes with
`/fillbiome`.
- `/climora stress <radius>` — load test.
- `/climora reload` — reload the server config.
**Configuration**
- `config/climora.json` for the server, reloadable with `/climora reload`, and `config/climora-client.json`
for the client.
**Debug**
- An F3 overlay with the air temperature at the player, the cell's state and the simulation load. Works in
singleplayer and on servers running the mod.
### Technical notes
- Built for Minecraft 1.21.1 on Fabric and NeoForge from one codebase, through Architectury.
- Climate is stored per dimension in `data/climora_climate.dat`, data format version 4.
- The server sends each player the weather of the 7×7 cells around them once per second, about 500 bytes.
The client eases towards each update over a second.
- The simulation runs inside a 1 ms per tick budget and stays around 0.015 ms in practice. Cells are
updated round-robin, and the relaxation is exact for a step of any length, so a cell that has not been
touched for a while catches up in a single update.
- F3 data is only sent to players with the debug screen open, and never when `reducedDebugInfo` is set.
This mod has no additional files
