User:Ha3/MAtmos Illustrated Documentation

TODO: cut this image in pieces and assemble them together

What MAtmos does when Minecraft runs
When Minecraft runs, MAtmos gathers various kinds of data.

Some of this data has a straightforward meaning. This data is gathered instantaneously. Some of the data is directly dependent on the player actions (motion, action, inventory, position) and some are almost not (world seed, weather, is in multiplayer mode). This data is called Instants, because they can be figured out instantaneously or very quickly.
 * Weather
 * Time
 * Biome
 * World seed
 * Player position in the world
 * Player health
 * Selected inventory slot number
 * Selected inventory item ID
 * and more others...

Some other data is directly linked to the world composition. In fact, the other data is calculated by counting the number of each block around the player.

There are two major scales. The Small scale tells what blocks there are close to the player, about 10 meters around the player (8 blocks around the player). The Large scale tells what blocks there are about 40 meters around the players (32 blocks around the player).

The two scales have benefits for analysis. The Small scale is great to describe in which structure is the player in (like in a house, or near a lake of lava, or in a warehouse with lots of chests). The Large scale is great to describe in which environment the player is in (like on a mountain, inside a cave, in a forest, in a desert).

How MAtmos transforms this data into usable things
After that data is gathered, MAtmos gives it meaning and life using expansions. An expansion is made of various simple things.

We begin using conditions. The conditions have the simplest form. We give each condition a human-readable name.
 * Is it raining? -> Is raining
 * Is the player altitude over 40? -> Player above layer 40
 * Are there more than 5 chests in the Small scale? -> Storage room
 * Is the selected item in the inventory a tool? -> Tool is selected

Then, we assemble the conditions together to let them be more meaningful. Assembling conditions together form sets.
 * "Lots of logs" and "Lots of leaves" together form "A forest"
 * "Daylight can reach the player" and "6 A.M. to 8 P.M." and not "Is raining" together form "Sunshine"
 * "Selected a new slot" and "Is holding a tool" together form "Selected a tool"

TODO