Map creation · Part 5 · About 8 minutes

Seeds, parameter files and reproducibility

A seed is not a map. It is one ingredient in a recipe of twenty, and it only means anything alongside the other nineteen and the version of the generator that read them. What you can actually share is the whole recipe.

The one-minute explanation

The generator is deterministic: identical inputs produce an identical world. The trap is in what counts as an input.

The seed
Selects the random pattern. On its own it guarantees nothing — the same seed with a different water coverage is a different country, not a variation on the same one.
Every other parameter
All of them participate. Area, terrain type, relief, density, provinces, neighbours — change any one and the map changes.
The generation version
The rules themselves are versioned, currently at 12. The same recipe read by a different version can produce a different map.

So "seed 42" is not a shareable map. The parameter file is.

Rolling the seed as a working method

Part 1 established the loop: there is no preview, so you generate, look, go back and try again — with your settings preserved. The discipline that makes this productive is holding everything still except the seed.

The reason is precise. Your parameters describe the kind of country you want; the seed picks one instance of that kind. If you change a parameter and the seed together, you have changed both the kind and the instance, and the map in front of you tells you nothing about either.

Changing the seedA different country of the same type

Same size, same water, same relief character, same settlement pattern rules — a different draw. This is how you shop.

Changing a parameterA different type of country

Even with the seed untouched. Parameters feed the generation itself, so nothing survives unchanged. This is how you steer.

Shop first, steer second. Roll seeds until the type is clearly wrong, then change one parameter and roll again.

The parameter file

Three buttons sit below the form: Import Parameters, Export Parameters and Restore Defaults. Export writes a small JSON file containing your entire configuration — every value on the screen, the terrain profile, the settlement distribution and the mountain layout, stamped with a format name and a version.

That file is the shareable unit. Hand it to someone else, they import it, and they generate the same country you did.

What an import will refuse

Imported files are checked rather than trusted, and the checks are the same rules the form enforces. A file is rejected if:

  • The format name or file version is not one this build understands.
  • Any numeric value falls outside its range — area outside 30,000–3,000,000 km², maximum elevation outside 10–8,000 m, provinces outside 2–30, neighbours outside 0–6, and so on.
  • Any option is not a recognised value for its field.
  • Water coverage is outside the band its terrain profile allows. A file claiming Inland with 50% water is not valid, because Inland permits 10–30%.
  • An Island profile carries a non-zero neighbour count. Island nations have no land neighbours, and the file must say so.

A rejected file leaves your current settings untouched and reports a parameter error. Unrecognised extra keys are ignored rather than treated as errors, so a file written by a slightly different build usually still imports.

What the file does not contain

Some values are computed rather than stored — the grid dimensions, and the continental shelf figure that Part 2 described as shifting with area. These are always recalculated from the parameters at generation time rather than read from the file. That is deliberate: it means a parameter file cannot carry a stale or inconsistent derived value into a new build.

Generation versions

The generator's rules are themselves versioned, and the current version is 12. Earlier versions are all still supported, and each stays reproducible on its own terms.

This produces one guarantee and one caveat, and they are easy to mix up:

Your saves are safe

A save records the generation version its world was built with, and replays under those rules. Updating the game does not reshape a country you have already built a network across.

Your seeds are not portable across versions

A parameter file generated on a newer build may produce a different map, because the rules that read it have changed. A shared recipe is reliable between players on the same version.

The changes between versions are real geography, not cosmetics — coastal relief, island structure, how the world continues past its edges, how isolated settlements are named. If a map you generated months ago no longer comes out the same, this is why, and the original is still intact inside its save.

Practical habits

  1. Export before you commit. Once you find a map worth playing, export the parameters. It costs one click and it is the only way back to that exact country.
  2. Share files, not seeds. A seed alone is not enough information for anyone to reproduce your map.
  3. Say which version. When you share a parameter file, say what game version you generated it on. It is the difference between a recipe and a rumour.
  4. Use Restore Defaults as a reset point. When a form has drifted through twenty adjustments and nothing is coming out right, restoring and starting over is usually faster than untangling it.
  5. Keep the seed as the last thing you touch. Everything else describes the country; the seed only picks one.

Common misconceptions

“Send me your seed and I'll get your map”

Only if every other parameter matches, and the generation version too. Send the exported parameter file instead.

“Same seed, slightly different water — should be nearly the same map”

It is not a variation. Water coverage decides where the sea level cuts through the height field, so the coastline, the land area and everything downstream of it change.

“Updating the game will change my country”

Not one you have already generated. Saves replay under the version they were built with. What may change is what a new map from the same parameters looks like.

“Exporting saves my map”

It saves the recipe, not the world. It is not a save file, and it does not preserve anything you have built — for that, save the game.

You now have the whole chain: what the creation screen decides and what it fixes forever, how land and water are produced, how relief becomes a price, how people are placed on it, and how to reproduce the result. What the map hands you next is a network problem — Building and operating the network is where that starts.

Rules status: This article describes seeds, parameter files and generation versioning in game version 0.2.0.

Authority: If the website conflicts with results from the corresponding game version, the game result is authoritative and the documentation or public data contract must be corrected.