Snow! Real Magic!

From the Fear Nightfall wiki · Snow! Real Magic!
Snow! Real Magic!

Snow! Real Magic! is a mod that rewrites the base game's snow layers, ice and precipitation. Snow layers can rest on almost any block, falling snow is simulated as moving blocks, snow builds up during storms and melts on a timer, and blocks under snow are stored as "snow-covered" variants that keep the original block inside them. The mod adds no items, mobs, biomes, structures, recipes or enchantments of its own. Its effect is on the existing snow, ice and weather systems, and on the plants, fences, stairs, slabs and walls that snow can cover.

In Fear Nightfall, the mod governs how snow sits on the terrain across the pack's cold biomes and how snow and ice behave during storms. Its covered blocks also change how fences, stairs and plants look in snowy areas. No pack-specific changes to the mod's settings are recorded, so the defaults described on this page apply in the pack.

Overview

The mod is built on the Kiwi framework library, which it requires. It also recognises several optional mods when they are installed: Jade, Diagonal Blocks, Diagonal Fences, Diagonal Walls, Farmer's Delight and Serene Seasons. With Serene Seasons present, the mod replaces that mod's weather and melting logic with its own.

The mod takes over vanilla precipitation. Its handler replaces the vanilla precipitation tick, and it disables the vanilla snow accumulation gamerule, so snow behaviour is controlled by the mod's configuration rather than by vanilla settings. Most of its behaviour can be changed in the common and client configuration screens provided by Kiwi.

Content

The mod registers no new items, mobs, recipes or enchantments. Its content is a set of blocks that imitate vanilla blocks, and one loot entry type.

Snow layers

The snow layer family consists of five blocks. Each shows as "Snow" in-game and is mapped to the vanilla Snow item, so players hold and place the vanilla item. The family covers:

  • ordinary snow layers, which store the block they sit on or the block they replaced;
  • a collision variant used for covered blocks that have a solid collision shape;
  • snow-covered plants, such as Tall Grass and other double plants.

Plants covered by snow include the vanilla flowers, grass and saplings, Sweet Berry Bush and Dead Bush. Plants added by other mods are included too, among them Regions Unexplored Plants, Regions Unexplored Flowers, Biomes O' Plenty Plants and Biomes O' Plenty Flowers.

Snow-covered blocks

Covered blocks are a second copy of several vanilla shapes:

When Farmer's Delight is installed, a snow-covered variant of its Rope fence is included, and a snow rope fence counts as the same fence as a snow fence gate.

Covered blocks break into the drops of the block they hide. A snow-covered flower drops the flower, and a snow layer drops the vanilla snowball when collected by hand (see below). The loot entry type that does this is custom to the mod, and the mod generates loot tables for every variant.

Snowballs

A snow layer can be collected by hand. Right-clicking it with a tool that is correct for snow, such as a shovel, removes one layer and drops a Snowball, and the tool loses durability unless the player is in creative mode. Sneaking and using any other item on a snow layer also gives a snowball, without using a tool.

Mobs

The mod adds no mobs. It does change which blocks vanilla animals can spawn on. Snow layers and every snow-covered variant count as valid spawn ground for wolves, foxes, mooshrooms, goats and rabbits, provided the layer count is within the spawn limit (see the Mechanics section).

Gamerules and commands

Two gamerules are added: snowrealmagic:blizzardStrength and snowrealmagic:blizzardFrequency. The in-game description marks them as a joke feature, and both are off by default. The vanilla snowAccumulationHeight gamerule has no effect, and the game shows a message saying so when it is used (see Gamerules and Commands).

Mechanics

Snow accumulation

During precipitation, the mod samples each column once per server tick. When it is cold enough to snow at the top of the column and the weather is raining, the top snow layer gains one layer, up to the accumulation.maxLayers setting. The default is 6, and the maximum setting of 9 means no limit.

Accumulation happens during thunderstorms by default. Plain rain or snowfall accumulates only if accumulatesDuringSnowfall is turned on, and it is off by default. With Serene Seasons installed, any rain counts as a snowstorm.

Smooth accumulation is on by default. It checks the eight neighbouring columns and places snow first in the one with the fewest layers. Snow does not accumulate on blocks in the cannot_accumulate_on tag, which includes hay bales and slabs.

Melting

Snow layers lose one layer each time they receive a random tick. Natural melting is on by default and requires sky light above 2, sampled above the top of an 8-layer stack. The snowPersistMaxLightLevel setting (default 11) controls the block-light threshold for melting. Snow in warm biomes melts only if accumulation.snowAndIceMeltInWarmBiomes is on, which is off by default. Setting snowNeverMelt to true stops snow from melting.

Ice

Vanilla ice melting is changed. When ice melts, snow layers of one to four above it are removed. Five or more layers stop the ice from melting at all.

Falling snow

With snowGravity on (the default), a snow layer or snow-covered block tagged as snow falls as a falling block when the block below cannot support it. Falling snow that lands in still water becomes Ice if snowMakingIce is on, which it is by default. Falling snow that lands in lava creates a smoke effect and is removed. Falling snow does not hurt entities.

Shape and collision

With thinnerBoundingBox on (the default), the collision box of a snow layer stack is shorter than its visual height. One layer has no collision, and eight layers form a full block. Standing in a stack of two or more layers gives the same view effect as Powder Snow.

Fall damage

With snowReduceFallDamage on (the default), landing on a snow-tagged block multiplies fall damage by 0.2. Landing on a snow layer multiplies it by 1 minus 0.1 for each layer, so eight layers reduce the damage to 0.2 of the vanilla amount. See Fall damage for the vanilla rules.

Covering blocks

With snow-cover.placeSnowOnBlock on (the default), placing snow on a supported block stores the original block in the snow block entity. The mod picks the covered variant from the block type. Air becomes plain snow, and a slab top may become a snow block when fancySnowOnUpperSlab is on. Double plants, bottom slabs, bottom stairs, walls, fences, fence gates and plants each have their own variant, and other blocks with a collision shape become the collision variant.

Blocks with block entities, fluids and blocks in the not_containables tag cannot be covered. This tag includes leaves.

A covered block can show a "fancy" side overlay when fancySnowOnUpperSlab is on. Right-clicking with empty hands toggles it when rightClickToggleFancySnow is on, which it is by default.

Placement

With snowAlwaysReplaceable on (the default), any block can replace a snow layer placed on it, unless that position already holds eight layers. Each position holds up to eight layers, and any excess spills into the block above. Placing snow on a covered block adds layers to it.

Grass under snow

With sustainGrassIfLayerMoreThanOne on (the default), grass stays grass while a snow layer of two or more sits above it. Covered grass and plants count as snowy for grass decay.

Worldgen snow

With snow-cover.replaceWorldgenFeature on (the default), the vanilla snow-and-freeze feature places extra snow-covered blocks in cold biomes where vanilla would not place snow. The extra placement applies where the biome is not warm, block light is below 10, and snow can survive. See Biomes and World Generation.

Trees

Tree growth reads through snow layers. The grown tree keeps the layer counts of the snow that was on the sapling, so a tree grown under snow keeps its snow.

Blizzard

The blizzard gamerules add falling snow to the sky during rain. While it rains and snow gravity is on, each chunk tick has a blizzardFrequency / 10000 chance to drop a stack of snow layers from 64 blocks above the column. The layer count is random between one and blizzardStrength, which is capped at eight. Blizzards are off by default, because blizzardStrength is 0.

Changes to vanilla

The mod changes the base game in several ways that a player will notice. See Changes to Vanilla for the rest of the pack's changes.

  • Vanilla precipitation is replaced, and the vanilla snow accumulation gamerule is disabled.
  • Snow layers are placed and melted by the mod's own rules rather than vanilla's.
  • Snow layers have a thinner collision box, and falling snow falls as a block.
  • Fall damage on snow is reduced.
  • Ice melts differently when snow sits on it.
  • Vanilla mobs can spawn on snow-covered blocks and on snow layers up to eight layers high.
  • Grass under two or more snow layers does not decay.
  • Cold biomes receive extra snow-covered blocks during world generation.
  • With Serene Seasons installed, its weather and melting code is replaced.

In Fear Nightfall

The pack keeps the mod's defaults, so the gamerules and settings described above are the ones players will see. Snow accumulates during thunderstorms up to six layers, and plain snowfall does not add snow. The blizzard gamerules are off unless a server operator changes them. See Gamerules and Commands for how to change gamerules on a server.

Snow-covered blocks keep the shape and drops of the block they hide, so a covered fence, stair or plant still works as the vanilla block would. The covering changes appearance and collision, not function.

The mod's effects on terrain appear in the pack's cold biomes. For how the pack places structures and biomes, see Horror and Spooky Content, Biomes and World Generation. The mod is listed in the Mod List.