Problem / Motivation
Experience-authored world_preset.toml currently appears to require or encourage a fixed seed.
That is useful for deterministic examples, repros, tests, and curated modpacks, but it is not ideal for normal player-facing world creation.
In most sandbox games, creating a new world without manually entering a seed gives a random seed. If the user wants determinism, they can explicitly provide a seed.
For Freven, a better long-term contract would be:
- seed present: use that deterministic seed
- seed omitted: generate a random seed when creating world_bootstrap.toml
- persisted world_bootstrap.toml then stores the resolved seed forever
This would let examples and games choose between reproducible worlds and normal random new-world UX.
Proposed solution
Allow the seed field in world_preset.toml to be optional.
Example deterministic preset:
[world_preset]
world_id = "example_world"
seed = 1234
primary_dimension_id = "overworld"
Example random-new-world preset:
[world_preset]
world_id = "example_world"
primary_dimension_id = "overworld"
Expected behavior when seed is omitted:
- on first world creation, DevKit/runtime generates a random seed
- the generated seed is written into world_bootstrap.toml
- future launches of the same world reuse the persisted bootstrap seed
- logs clearly show the resolved seed
- deterministic behavior remains available when seed is explicitly specified
This keeps authored presets reusable while avoiding fixed-seed behavior for normal player-facing new worlds.
Alternatives considered
-
Always require seed in world_preset.toml
Good for reproducibility, but poor default UX for player-created worlds.
-
Make mod authors/scripts rewrite seed before launch
Works for development, but it is not a platform-level solution and does not scale to normal users or launchers.
Problem / Motivation
Experience-authored world_preset.toml currently appears to require or encourage a fixed seed.
That is useful for deterministic examples, repros, tests, and curated modpacks, but it is not ideal for normal player-facing world creation.
In most sandbox games, creating a new world without manually entering a seed gives a random seed. If the user wants determinism, they can explicitly provide a seed.
For Freven, a better long-term contract would be:
This would let examples and games choose between reproducible worlds and normal random new-world UX.
Proposed solution
Allow the seed field in world_preset.toml to be optional.
Example deterministic preset:
[world_preset]
world_id = "example_world"
seed = 1234
primary_dimension_id = "overworld"
Example random-new-world preset:
[world_preset]
world_id = "example_world"
primary_dimension_id = "overworld"
Expected behavior when seed is omitted:
This keeps authored presets reusable while avoiding fixed-seed behavior for normal player-facing new worlds.
Alternatives considered
Always require seed in world_preset.toml
Good for reproducibility, but poor default UX for player-created worlds.
Make mod authors/scripts rewrite seed before launch
Works for development, but it is not a platform-level solution and does not scale to normal users or launchers.