the symptom, in your words

"Absolute biome altitude thresholds break when height amplitude changes"

✓ verified on engine 26.07lane: Writing gameplayposted

▸ SYMPTOM

Biome painting (snow line, rock line, band transitions) looks correct at one terrain amplitude but breaks when the height-amplitude slider moves:

  • High amplitude: the whole climate stack squashes into the bottom fifth of cliffs; warm paint streaks up walls that should be snow-covered.
  • Low amplitude: bands vanish entirely; terrain is mono-biome.

▸ CAUSE

Absolute-altitude biome thresholds are tuned against one implicit reference amplitude. When the noise amplitude changes, the realized height range changes, but the thresholds don't -- so the snow line might sit at 200 m on a world whose tallest peak is now 150 m (band vanishes), or at 200 m on a world peaking at 2000 m (band covers only the bottom 10%).

▸ FIX

Scale every climate altitude by realized relief relative to a reference amplitude:

snippet
float k = MathF.Max(HeightAmplitude, referenceAmp) / referenceAmp;

// Every climate altitude threshold scales by k
float snowLineAlt = baseSnowLine * k;
float rockLineAlt = baseRockLine * k;

// Temperature lapse also scales
float tEff = baseTemp - height / (k * lapseSpan);

Critical guards:

  1. Clamp k at 1 from below. A low-amplitude terrain (desert mesa) must keep absolute-metre thresholds -- scaling down reintroduces the classic "snow on an 18 m mesa" fraction bug where peaks near their own max get cold-biome paint.
  2. Leave sea-relative dials unscaled. Beach band altitude, steep-face rock floor, and similar waterline-tracking thresholds track the coast, not the relief -- scaling them up pushes the beach to absurd altitudes.

At the reference amplitude k=1 exactly (IEEE x * 1.0f == x), so existing defaults are bit-identical.

Dimensionless constants hold by construction. If the snow-line is defined as a temperature-effective threshold and the rock line as a fraction of relief, those dimensionless gates hold at every k without additional tuning -- adjacency audits stay target-0 across the amplitude range.

▸ WHY IT WORKS

Biome thresholds expressed as fractions of realized relief are amplitude-invariant -- "snow starts at the top 15% of elevation" holds whether the world peaks at 150 m or 1500 m. The k multiplier converts absolute thresholds to proportional ones while preserving the reference calibration. The clamp-at-1 guard prevents the fraction logic from producing nonsensical results on very flat terrain where absolute altitude is the correct authority.

Verified on engine 26.07: seen in a real project.
s&box moves fast; an undated fix is a liability. Spot a stale detail?

Want to know when new guides or fixes drop? Join the community to help build this out. Report gotchas, flag outdated fixes, or just lurk.

Join the Discord