
Vintage Story Mod DB · Vintage Story mod
WorldgenLib
WorldgenLib v0.1.0 targets Vintage Story 1.22.0 and has been rebuilt and exercised against Vintage Story 1.22.0 through 1.22.7. It is a server-side dependency for world-generation mods. Back up worlds before testing new worldgen combinations. Support Zaldaryo
Quick answer
Which WorldgenLib release should I use?
WorldgenLib 0.1.0 targets 1.22.0, 1.22.1, 1.22.2. Do not install it on the client. It must be installed on the dedicated server. No extra mods listed for this file.
Where it goes
Is WorldgenLib required on the client, server, or both?
Do not install it on the client. It must be installed on the dedicated server.
This Vintage Story file is marked server-only.
What else does WorldgenLib 0.1.0 need?
0.1.0. Change the file and its required mods may change too.
This file does not list any required mods. Do not add a library just because a different file uses it.
This file does not list any required or optional mods.
Before you install it
Add WorldgenLib without breaking your instance.
Built for WorldgenLib 0.1.0. Pick another file and the loader, install side or required mods may change.
- 01
Stick to this file
Use 0.1.0. It targets 1.22.0, 1.22.1, 1.22.2; another release may have different loader, side or dependency requirements.
- 02
Bring the mods it needs
This file does not list any required mods. Do not add a library just because a different file uses it.
- 03
Put it on the correct side
Do not install it on the client. It must be installed on the dedicated server.
- 04
Pick the file you checked
Use the “Get this file” button beside 0.1.0. It opens that exact file at the source.
About this project
What does WorldgenLib add?
WorldgenLib is a shared server-side API for Vintage Story modders. It helps world-generation mods compose compatible changes through ordered hook points around the map, terrain, post-process and BlockLayers passes, instead of competing to own the same vanilla generator. A consumer registers only the work it needs to change. WorldgenLib keeps the vanilla initialization state available, detects blocking takeovers, and isolates failing consumer hooks. It does not add blocks, items, biomes or terrain content by itself.
Share the seams instead of racing for the same method.
Each hook has an explicit order value. WorldgenLib runs enabled registrations in order, keeps terminal adapters available for non-decomposable consumers, and disables a consumer's registrations after a generation error so other hooks can continue. A blocking foreign takeover is reported instead of creating a second complete owner for the same pass.
Give worldgen authors a shared contract.
WorldgenLib runs on the server and is required on the server. Clients do not need it. Install it beside the consumer mods that use its API, then let each consumer register its own map or terrain behavior during server startup.
A documented API for composing world-generation changes at named stages, with order bands, typed contexts, terminal migration adapters, conflict diagnostics and version-aware step identifiers. The current implementation is WorldgenLib v0.1.0.
|
Map composition
Register changes for geoprovince, climate, forest, upheaval, ocean, beach, shrub, biome, landform and region finalization.
|
Terrain composition
Adjust the terrain pipeline at the seams that fit the algorithm, from water selection and threshold changes to full column edits.
|
Explicit state
Use request-local contexts and registries instead of copying private engine fields or sharing mutable buffers across parallel columns.
|
|
Late passes
Use the post-process and BlockLayers hosts for work that belongs after terrain generation or needs a complete pass.
|
Measured status
The unit suite has 102 passing tests. The versioned server lifecycle matrix has 24 passing checks across Vintage Story 1.22.0 through 1.22.7.
|
Canonical parity
Eight of eight seed-42 comparisons matched byte for byte at the canonical map-region and Terrain probe boundaries.
|
Good fit for
Authors of terrain, biome, climate, river and map-generation mods who need defined execution points and a shared server contract. It is also useful for server owners who want consumer mods to declare one worldgen dependency instead of silently replacing the same vanilla pass.
Compatibility and limits
WorldgenLib v0.1.0 declares Vintage Story 1.22.0 and has server evidence from 1.22.0 through 1.22.7. It does not prove compatibility with every foreign Harmony or IL patch. A blocking takeover can leave WorldgenLib hooks inactive, and the inline BlockLayers hooks require the expected method structure. The four analyzed external consumer mods have mapped seams, but no adapted consumer source or consumer-specific in-game result is included in this release.
The byte-level result covers the canonical probe boundaries. It is not a claim that complete persisted saves, entities, lighting or late process-sensitive decoration state will match byte for byte.
Place WorldgenLib-0.1.0.zip in the server Mods folder. WorldgenLib is server-side, so clients do not need to install it. Use a test world when changing world-generation combinations.
Project description from Vintage Story Mod DB.
Pick your setup
WorldgenLib releases for each Vintage Story version.
Choose the version and loader you play, then open the matching release.
1.22.6
1 loader build1.22.5
1 loader build1.22.4
1 loader build1.22.3
1 loader build1.22.2
1 loader build1.22.1
1 loader build1.22.0
1 loader buildCheck the dependencies, then try the file in a copied instance before changing a world you care about.
Recent files
WorldgenLib versions and loaders
0.1.0
WorldgenLib-0.1.0.zip
28 Aug 2026
Looking for an older file? The official Vintage Story Mod DB project page is in Resources.