How Seed climate lookup was built

Raw game files read

Processing

This tool is different from the other pages: the climate numbers are not read from a game data file, because the game computes them in C# at world-generation time. apps/vs-wiki/site/assets/climate.js is a port of that code, written against the game's own source (vsessentialsmod Systems/WorldGen/Standard/ChunkGen/0.GenMaps/ and vsapi Common/Climate.cs, read from local reference clones that are not part of the build). The only game data it uses is the set of wild-patch, tree and fruit-tree climate bands the rest of the wiki already extracted, to say what grows at the computed climate.

What is ported

What is not ported

The results are approximate.

How it was checked

No running game was available, so there is no comparison against real worlds. Instead test/climate.test.ts checks the port against an independent re-implementation of the same C# arithmetic (64-bit wraparound, signed shifts, float rounding) on several seeds, and checks properties such as the spawn temperature landing in the chosen starting-climate range. This catches arithmetic mistakes, not a misreading of the C#. Comparing a few readouts from a real save would be the best further validation.

Pipeline code