How the world is made

Back to HillClimb

Each day’s date becomes the seed, so everyone receives the same planet for that date. The map is 160 squares wide and 92 tall; its left and right edges join, while its top and bottom edges are the poles.

1. Shape the land

Generation begins with layered value noise, a smooth random field much like Perlin noise. Large, low-frequency layers rough out the continents; smaller, high-frequency layers cut in the bays, islands, valleys, and mountain passes. Each subsequent layer doubles in frequency and halves in strength. From 11 September 2026, every terrain frequency is multiplied by 1.25, which gives the same size map more separate landforms and makes a single dominant continent less common.

A second field uses ridged noise, which folds every smooth value back around its midpoint so that rounded blobs become long creases. From 11 September 2026, this field is independent of the broad continental height, so mountain ranges can appear across lowlands, beside coasts, or through the middle of continents. Its effect fades only within the narrow strip where land meets the sea, which prevents every coastline from becoming a wall. Earlier maps keep their original terrain.

shape=∑o=062−onoiseo crease=∑o=052−o(1−|2noiseo−1|)

Here o is the octave number: each octave doubles the frequency, halving the width of the features it draws, while the 2−o term halves how much it contributes.

2. Domain warping

Domain warping is the function composition of noise fields. Instead of reading the height field at a square’s own coordinates, the game first passes those coordinates through displacement noise, then feeds the displaced result into the height noise; in other words, one noise function supplies part of the input to another. Three further fields set the direction and strength of that shift from place to place.

h(r,c)=shape(r+kdy,c+kdx) k=40(0.25+0.75a)

dx and dy are the horizontal and vertical displacement fields. The variable a is also a (low frequency) noise field that decides how strongly any given area is warped.

3. Add the sea

Every height is sorted from lowest to highest, and the lowest 67% is then flooded, which leaves roughly a third of the planet as land whatever noise values the day happens to produce.

The broad height field is also lowered very slightly above 68 degrees north and south. The adjustment grows smoothly toward each pole, which makes polar land somewhat less common without forcing the polar rows to be ocean.

Most of what survives the flood lies low, and high ground grows steadily rarer the higher it climbs, which makes a true summit uncommon enough to be worth hunting for.

h←h−0.08clamp(|lat|−6822,0,1)2 metres=7700[0.55above+0.72shorecrease2.1]1.55

above is broad continental height above sea level scaled from 0 to 1, while shore rises quickly from 0 at the water’s edge to 1 farther inland. The exponent of 2.1 concentrates the ridged field into narrow ranges, and the final exponent of 1.55 keeps high peaks rarer than low ground.

4. Warm and cool the coasts

Ocean currents are simplified down to a warm side and a cool side for each basin: water along one coast is warmed, water along the opposite coast is cooled, and the split matters most in the latitudes lying between the equator and the poles.

Land inherits some of that warmth or chill from the sea beside it, so two coasts sitting at precisely the same latitude can end up with noticeably different climates.

ΔT=6.5e−(|lat|−3824)2east−westeast+west

The fraction compares how far away land lies on either side, while the exponential term fades the current’s influence out towards both the equator and the poles.

5. Set the temperature

The equator starts near 33°C and the poles near minus 21°C, while mountains shed about 6.3°C for every kilometre they rise.

A broad, gentle noise field then bends the temperature bands north and south. Without that wobble, every climate boundary on the planet would run along the same ruler-straight line.

T=33−54(|latitude|90)1.8−6.3upland1000+ΔTcoast+noise

upland is the average height of the surrounding land in metres rather than the height of a single square, so an entire mountain region cools together instead of throwing up a sharp temperature jump at every peak.

6. Move wind and rain

Wind direction depends on latitude: it blows west near the equator, east through the middle latitudes, and west once more near the poles.

Air crossing the sea gathers water and gives some of it back on reaching land, and rising ground wrings out more. This is why the windward face of a range is so often wet while the country behind it sits dry in a rain shadow.

Extra rain falls at the equator and through the middle latitudes, whereas the bands near 27° north and south are naturally dry, and that is where most of the planet’s deserts end up.

over sea:m←m+(1−m)(0.10+0.010T) over land:m←0.988m[1−min(1,0.07+0.42Δz)]

m is the moisture the air is carrying, and Δz the rise in ground height since the previous square, measured in kilometres.

7. Choose the biomes

Temperature, rain, height, and water depth decide every colour.

With temperature and rainfall settled, each square is tested against a set of biome thresholds. Nothing is placed by hand: forests and deserts simply appear wherever the local mixture of heat, moisture, height, and water depth happens to suit them.

ConditionsLikely biome
Very cold landice cap or tundra
Cold, high landbare mountain or snowfield
Cold, wetter landboreal forest
Mild, wet landtemperate forest
Mild, drier landgrassland, shrubland, or desert
Hot, wet landrainforest or seasonal forest
Hot, drier landsavannah or desert
Cold or shallow watersea ice or shallow sea

8. Pick challenges and a starting point

The finished map is searched for recognisable features such as continents, peninsulas, archipelagos, inland seas, volcanic islands, deserts, rainforests, mountain ranges, and ice caps. Connected regions are kept separate, which lets a challenge require three continents or two jungles rather than accepting the nearest matching square.

The planet is the same for everyone, but the starting point comes from a value stored in your browser. The game keeps the start a reasonable distance from the summit, then offers up to seven optional challenges in a roughly nearest-first order. It does not guarantee that every challenge can fit inside 28 moves, since clearing the full list is intended to be exceptional.

Footnote: sanity check by running these rules on Earth

Swap step 1 and 2 (heightmap generation) for NOAA’s measured elevations for Earth, and then run the biome generator. The result is pretty decent!