You pick a material from the strip on the left, draw with it on the canvas and the simulation does the rest. Sand falls, piles up and rolls down its own slope until the heap sits at an angle of repose of roughly thirty-four degrees. Water falls, finds its way sideways and levels out. Oil keeps floating on top and sand sinks through it, because every material has a density taken from an ordinary reference book. Smoke and steam rise and mix with the air. Stone, wood, brick and steel stay where you put them until they melt or catch fire. There is no start screen: the canvas is already running when the page opens, with a trickle of sand, a tank of water and a small fire on a plank. Pause, single step and undo are in the bar at the top.
Every cell carries a temperature in kelvin, even an empty one. Heat flows from cell to cell with a conductivity per material: iron fast, wood slowly, air hardly at all. Put lava next to water and the water boils into steam while the lava solidifies into stone. Ice melts at zero degrees back into the water it came from, and salt water that freezes remembers that it was salty. Sand melts at well over seventeen hundred degrees into molten glass and solidifies into glass. Fire ignites wood, planks, oil and plants with a chance that differs per material, heats the air above it and goes out when it touches water. With the heating and cooling brushes you adjust the temperature of part of the world yourself, and with the pressure brush you give the air a push: the airflow that follows blows sand, water and smoke away.
This version counts 191 materials in eleven groups. Powders: sand, earth, clay, gravel, salt, sugar, flour, snow, ash, soot, charcoal, lime, cement, gypsum, sulphur, saltpetre, iron filings and glass powder. Flammable and explosive: gunpowder, thermite, magnesium and aluminium powder, dynamite, TNT, nitroglycerine, plastic explosive, napalm, fuse, fast fuse, percussion cap, firework star, cold fire and phosphorus. Liquids: water, salt water, distilled water, carbonated water, oil, petrol, diesel, alcohol, acetone, honey, mercury, acid, lye, soapy water, paint, glue, slime, tar, liquid nitrogen, lava, molten glass and molten metal. Gases: steam, smoke, vapour, mist, hydrogen, oxygen, nitrogen, helium, carbon dioxide, methane, propane, chlorine, ammonia, compressed air and vacuum. Building materials: stone, granite, sandstone, limestone, brick, concrete, reinforced concrete, asphalt, wood, plank, chipboard, paper, cardboard, cloth, rope, straw, cork, polystyrene, rubber, plastic, wax, ceramic, insulation wool, glass, toughened glass and coal. Metals: iron, steel, stainless steel, copper, aluminium, lead, gold, silver, titanium, tungsten, diamond, graphite, silicon, sodium, a magnet and a mirror. Heat and cold: fire, gas flame, plasma, glowing coal, a heat source, a cold source, a thermostat, ice, hoarfrost, lightning, dry ice and a spark. Nuclear and radiation: uranium, enriched uranium, plutonium, a fuel rod, a control rod, a moderator, a radiation shield, deuterium, tritium, fusion plasma, antimatter, radioactive waste, a black hole and a white hole, and the four fast particles neutron, proton, electron and photon. Electronics: wire, insulator, battery, switch, push button, lamp, resistor, fuse, P-semiconductor and N-semiconductor, clock, capacitor, heat sensor, pressure sensor, material sensor, transmitter, receiver and heating wire. Life and growth: seed, plant, grass, moss, mould, yeast, bacteria, virus, coral, three kinds of the game of life and three animals: ant, fish and bird. Machines: source, void, pipe (with inlet and outlet), pump, fan, piston, frame, heater, cooler, particle gun, storage cell, converter and a conveyor belt to the left or to the right. There are also seventeen materials you cannot pick but can make, such as rust, cinders, slaked lime, glass shards, dead yeast, soap bubbles, hardened glue, radioactive dust and broken electronics. Every material is one row in a table: density, melting and boiling point, flammability, how hot it burns and what it leaves behind, resistance to acid, what it emits, whether it conducts current and what a neutron or photon does to it. The reactions between neighbours are in a separate list: salt dissolves in water, acid eats metal and releases hydrogen, lye neutralises acid, sodium explodes in water, limestone fizzes in acid, cement becomes concrete, acetone dissolves polystyrene, iron rusts in salt water, yeast turns sugar into alcohol, mould eats wood, ants eat sugar. Explosives go off on heat or a pressure blast and really push matter away through the air; thermite burns through steel; a flour cloud explodes where a flour heap only burns on the outside. A black hole pulls sand, water and animals towards it and makes them disappear, a white hole spits them out, and glue sets and sticks powder together.
The canvas is a grid of cells that is computed sixty times per second, in a fixed step that is independent of your screen's refresh rate. The grid size is measured when the page opens rather than guessed: the page briefly runs a fixed test scene and picks the largest size this device can run smoothly. If it gets too heavy along the way, the pace drops to thirty steps per second and then the world goes one size smaller; that is shown in the small readout at the top right. Everything is computed in your own browser and nothing is sent to a server. The model is a game, not a laboratory: gravity is one cell per step, heat flows pairwise between neighbours and the air is a coarse grid of pressure and velocity. This genre is called falling sand; better-known examples of it exist. This is our own build, not a copy or port of anyone else's program.
With Ctrl+S (or the button with the down arrow) you save your world as a small file with the extension .dlz; with Ctrl+O, the folder button or by dragging the file onto the canvas you open it again. The file holds the materials, the temperature of every cell, the walls, the pressure and the wind, and it is compressed in your browser: a calm world is a few tens of kilobytes, a world full of noise after an explosion considerably more. If the world is small enough, you share it with the link button: the whole world is then inside the web address and still nothing goes to a server; if it is too large for a link, you get the same file as a download and the screen says so. A file is checked completely before it replaces your world. If the size is wrong, it contains a material this tool does not know, a temperature is nonsensical or the file ends halfway, your world stays as it is and the screen says why.
The tools are on the left. The brush draws round, square, as a line or as a rectangle, with the size on the slider or with [ and ]; fill fills an enclosed area or replaces a connected material; the eraser removes material, wall and colour; the pipette picks up the material under the pointer; decoration gives cells a colour that travels with the cell; heat and cool adjust the temperature; pressure blast and suction give the air a push; wind makes it blow in the direction you drag; the stamp copies a cut-out and places it elsewhere with a click; and properties shows the material, temperature, pressure, wind and lifetime of the cell under the pointer. Walls come in eight kinds: a solid wall, gas only, liquid only, powder only, heat-conducting, insulating, and portal in and portal out — whatever falls into the entrance comes out of the exit. You pick materials in three layers: a row with the eight you used last, the groups as tabs, and below them the materials of the chosen group. The / key searches by name, and whoever points at a material or presses it for a moment gets the material card: density, melting and boiling point, flammability and the materials it reacts with. Undo (Ctrl+Z) remembers one step per stroke, up to forty steps or forty-eight megabytes; redo is Ctrl+Y. Also: pause, one step forward, the speed from a quarter to four times, and five views with the keys 1 to 5: normal, heat, pressure, velocity and fire. Every key works without first clicking the canvas, except while you type in an input field.
A spark travels cell by cell through wire, copper, iron or water — distilled water does not conduct — with a short rest per cell, so it never bounces back: a single pulse passes each cell exactly once, and a loop of more than eight cells keeps circling forever. A battery sends a steady train of pulses, a clock ticks every thirty steps (warmer is faster), a lamp lights up and emits photons, a resistor gets warm, a fuse breaks when it overheats, a capacitor keeps a lamp on for a while when the current drops away, and a heat, pressure or material sensor powers the wire as soon as it senses something. You build gates with two semiconductors: the P-semiconductor is a control line that opens an N-semiconductor next to it, silences a battery or clock and flips a switch; the N-semiconductor conducts only while a P keeps it open. So an AND gate is an N with a P against it, a NOT gate a clock with a P against it, and an OR gate nothing more than two wires joined. Radiation: uranium, enriched uranium and plutonium emit neutrons by themselves, and a neutron that hits fissile material makes heat, pressure and two or three new neutrons — the chain reaction. A moderator slows neutrons (slow neutrons split more often), a control rod and a radiation shield absorb them, lead too. Deuterium and tritium fuse under extreme heat and pressure into fusion plasma. Photons fly through glass and water, bounce off a mirror and fan out into colours in glass; protons and electrons power a wire. There are never more than twenty thousand particles at once: above that nothing is added, and the little window at the top right says so. The game of life comes in three kinds, each with its own rule and pace, and it shares the world with the materials: you can set a glider on fire. Machines: a source lets whatever fell into it first stream out endlessly, a void makes everything disappear, a pipe carries from inlet to outlet, a pump and a fan blow, a piston slides away from its wire with current and pushes sand and a frame ahead of it, a heater and a cooler switch with current, a particle gun shoots, a storage cell saves and gives back with current, a converter turns everything into one material and a conveyor belt moves whatever lies on it sideways.