Skip to content

Passive Freezing

TheDeathlyCow edited this page Dec 12, 2023 · 11 revisions

Passive freezing is the primary survival mechanic of the mod. It can be disabled by setting the gamerule frostiful.doPassiveFreezing to false, or by disabling it in the config. Passive freezing only applies to "natural" dimensions like the Overworld, and not the Nether or The End.

Biome Temperature

Each biome in the game is automatically sorted into one of five different temperature categories. These categories are never frozen, freezing, cold, cold at night, and normal. Each biome has an "internal temperature" that is utilized by vanilla to determine if the biome is snowy, and what colour the grass should be. Frositful uses this, along with a system of tags to automatically determine how cold a biome is. A biome's category is chosen by which set of conditions it achieves FIRST from the following list:

  1. If a biome has the tag #frostiful:freezing_blacklist_biomes, it will be unaffected by freezing forever.
  2. Otherwise, if a biome has the tag #frostiful:freezing_biomes, it will have a daytime temperature change of -3, and a nighttime change of -4.
  3. Otherwise, if a biome has an internal temperature of 0.15 or less (ie, the biome is snowy), OR if the biome has the tag #frostiful:cold_biomes, it will have a daytime temperature change of -1, and a nighttime change of -2.
  4. Otherwise, if a biome has an internal temperature of 0.3 or less (ie, as cold as a taiga), OR if the biome has the tag #frostiful:cool_biomes, it will have a daytime temperature change of 0, and a nighttime change of -1.
    • If doDryBiomeNightFreezing is enabled in config and the biome has the tag #frostiful:dry_biomes, then the biome will also belong to this category. This tag includes deserts, badlands, savannas, and other biomes where it does not rain. This is to mimic a real life effect of how cold deserts get at night, but it can be disabled.
  5. Finally, if a biome meets none of the above conditions, it is considered "normal" and is never cold.

An important note is that the cold and cool biome tags are empty by default. This is to allow Seasons mods to sort biomes into potentially warmer categories during the Summer/Dry Season. Only the dry and freezing biome tags are not empty by default.

If you want to know the ambient temperature change at a particular location, you can use the command /thermoo environment checktemperature ~ ~ ~.

Wetness

Entities can also become wet. It has a minimum value of 0 and a maximum value of 600. However, it is mainly used as a 0-1 percentage scale. When out in the rain, this increases by 1 per tick. When touching, but not submerged in, water this increases by 5 per tick. When submerged in water, it will max out immediately.

Entities that are not exposed to water will have their wetness value decreased by 1 per tick. Being near light sources also speeds this up somewhat.

The formula for drying is as follows:

drying = -(1 + block_light_level // 4)

Block Light

Any source of artificial light (aka block light) provides warmth each tick per level of light according to the following formula:

warmth = warmth_per_light_level * (light_level - min_light_level_for_warmth)