Worldgen interopVintage Story · 1.22.x

A shared seam for world generation.

WorldgenLib is a server-side C# API for modders who want their world-generation changes to coexist instead of competing for the same vanilla pass.

Server-side only MIT licensed Clients do not need the library
WORLDGENLIB / PIPELINE shared contract
01
Map hooksregion stages
02
Terrain seamscolumns + voxels
03
Late passeslayers + cleanup
Map.Register(
  "my-mod:climate",
  order: 40);

// one seam, no takeover
Library typeAPI library
Compatibility1.22.0 to 1.22.7
Install footprintServer only
LicenseMIT

WorldgenLib is infrastructure, not a terrain overhaul. It adds no blocks, items, biomes, or world shape by itself. A consumer mod chooses the hook points it needs and keeps ownership of its own algorithm.

The contract

Build the feature. Share the pipeline.

Use the smallest seam that expresses the change. The library orders registered hooks, carries typed request state, and makes replacement boundaries explicit.

MAP / 01

Ordered map hooks

Wrap generators, adjust padding, forward force requests, or finalize region data after the map chain.

Explore map hooks
TERRAIN / 02

Terrain seams

Change border preparation, octave construction, distortion, water selection, thresholds, or columns.

Explore terrain hooks
STATE / 03

Explicit request state

Use typed region, chunk, and column contexts with namespaced data instead of private engine fields.

Explore contexts
LATE / 04

Late-pass adapters

Keep post-process cleanup and BlockLayers work separate from terrain hooks, with scalar and terminal seams.

Explore late passes
Two ways in

Start from what you need to do.

The same library serves the person installing a compatible mod and the person building one.

For modders

Find your seam.

Read the getting-started guide, choose a hook boundary, and keep your worldgen algorithm inside your own mod.

Open the modder guide
For server owners

Install once. Compose more.

Place the release in the server Mods folder. Clients do not need WorldgenLib when a consumer mod declares it server-side.

View releases
Compatibility

Evidence with clear limits.

WorldgenLib has server lifecycle evidence across the supported Vintage Story range. Read the boundaries before pairing it with a full worldgen replacement.

Verified range

Vintage Story 1.22.0 through 1.22.7

Canonical parity checks cover the documented map-region and terrain probe boundaries. They do not claim byte-identical persisted saves, entity state, lighting, or every foreign Harmony or IL patch.

Read status and limits
1.22.01.22.11.22.21.22.31.22.41.22.51.22.61.22.7
Install path

From release ZIP to shared worldgen.

Three small steps for server owners and consumer-mod authors.

Read getting started
  1. 01
    Place the release

    Put the WorldgenLib ZIP in the server Mods folder.

  2. 02
    Install a consumer

    Choose a worldgen mod that declares the library dependency.

  3. 03
    Read its contract

    Check that mod's hook and version instructions before generating.

Keep the boundary visible

Give your worldgen mod a place in the shared pipeline.