Settlements, paths and vegetation on generated terrain, and drawing height in 3/4 oblique pixel art

Notes compiled 2026-11-04 for Elsewhere and the Tycho engine report. Target: plain JavaScript on a phone, tile grids of roughly 40x25 to 256x256 cells, deterministic from a seed, painted into palette-indexed buffers. Sibling notes cover overlapping ground: world_generation.md (Watabou, Parish & Müller, Bridson, autotiling), plants_trees_flowers.md (drawing the plants themselves) and styles_resolution_perspective.md (projections). This file covers where things go and how height reads.

Note on sourcing: the three Galin/Emilien papers, Deussen 1998, Cordonnier 2017, Gain 2017 and Bridson 2007 were downloaded and read in full text (PDF to text with mutool). The Merryfolk game was read from local source. Other items come from fetched web pages or, where marked “(search summary)”, from search-result summaries only; treat those as less certain.

Settlement siting: what real people weighed

Takeaway

Historical siting is a small set of local “site” factors (a reliable water source, flood-free dry ground, sun-facing and sheltered aspect, gentle arable slope, defensibility) plus “situation” factors (fords, bridging points, junctions). The best single heuristics for a generator are the spring line (settle at the foot of a slope where water emerges, above the floodplain) and the adret rule (settle and farm the sun-facing slope, leave the shaded slope wooded).

Cited Findings

Inferences

Gaps

Settlement siting: how games and generators score sites

Takeaway

Emilien et al. 2012 is the one fully documented scoring model, and it fits a phone: random candidate positions, each scored by weighted interest functions in [−1, 1] with a hard veto, then accepted with probability proportional to the score. New roads update the score maps, so houses and roads grow together. Watabou’s village generator puts the village at a high-density point on a highway, around a distorted circle that becomes the square. Dwarf Fortress and the city-builders document their siting only loosely.

Cited Findings

Inferences

Gaps

How a village grows along a road or round a green, and how buildings are oriented

Takeaway

Real and generated villages share three regularities: houses join the road network as they appear (and roads attract houses), parcels have one side on the road with two sides roughly perpendicular to it, and buildings face the nearest road. Emilien et al. encode all three and validate parcel statistics against a real village.

Cited Findings

Inferences

Gaps

Paths: desire paths, least-cost paths, roads, fords and bridges, switchbacks

Takeaway

Three families cover everything. (1) Least-cost A* over a cost grid with slope cost (Tobler for walkers; capped slope and curvature costs for roads), using larger neighbor masks to escape 45° artifacts. (2) Reinforcement models (Helbing’s active walker) where use lowers future cost and disuse decays it, which produces desire paths and trunk trails. (3) Network building: connect settlements with least-cost paths, prune with a proximity-graph rule, merge parallel roads, and make existing roads cheap.

Cited Findings

Inferences

Gaps

Vegetation placement: ecological rules

Takeaway

Every documented system reduces to per-cell abiotic maps (elevation-derived temperature, sun exposure from aspect and shadow, soil moisture from flow and slope, soil depth from slope) fed into per-species tolerance curves combined by the minimum (Liebig’s law). Then come clearings around people and denser bands at edges. Cordonnier and Gain give exact formulas; Merryfolk shows a phone-scale version.

Cited Findings

Inferences

Gaps

Competition, spacing, and Poisson-disk with habitat-weighted density and species mixes

Takeaway

Spacing comes from either a circle-competition simulation (Deussen 1998, following Firbank & Watkinson: overlapping circles fight, the weaker dies) or direct sampling with a variable-radius Poisson disk. On a phone, do variable-radius dart throwing over a shuffled cell order (Merryfolk) or Bridson with a per-species radius. Run a few thinning steps only if size variety matters.

Cited Findings

Inferences

Gaps

How Merryfolk places oaks on loam, birches on thin soil and willows by water

Takeaway

Merryfolk (local) computes soil from height, slope, water distance and wetness, then uses per-species weight tables per soil class. Willows are placed by a separate pass on grass tiles adjacent to water. It is a compact, phone-proven template.

Cited Findings (all from local source)

Inferences

Gaps

Drawing height in 3/4 oblique (top-down with front faces) pixel art

Takeaway

In 3/4 oblique, a raised area is drawn as its top surface shifted up the screen by height × (pixels per level), plus a front-facing vertical face below its southern edge. East and west edges get thin side faces or rims, and north edges get only a lip line, because the face points away. Height reads only with value contrast (lighter top, darker face, cast shadow on the ground at the foot), so a cliff is a stack of autotiled bands: lip, face rows, foot, shadow. Waterfalls are animated tiles that join an upper water edge to the cliff face and a lower pool. Caves are openings in south-facing faces leading to separate maps. True multi-level overlap (bridges you walk under) needs per-tile layer priority.

Cited Findings

Inferences (reasoning and general practice, not sourced above)

Gaps