Begin milestone 3 age persistence
Build / build (push) Canceled after 0s

This commit is contained in:
dnorberg committed 2026-09-21 14:16:32 -04:00
1 parent b1d563fb84
commit a17083309d
7 files changed
+218 -14

No files matched your search

+25 -7
View File
@@ -12,10 +12,20 @@ split into independently testable milestones.
2. **Books and linking** — descriptive/linking book data components, lectern-like
interaction, safe teleportation, and return links. **Complete.**
3. **Ages** — dimension definitions backed by data packs, deterministic seeds,
lifecycle management, and persistence.
lifecycle management, and persistence. Make the legacy-style animated
linking panel the built-in destination preview. Provide optional
Create/Ponder and Immersive Portals integrations as alternative rotating-
snapshot renderers. The configurable preview modes are `AUTO`,
`IMMERSIVE_PORTALS`, `PONDER`, and `LEGACY`; `AUTO` prefers Immersive
Portals when it is installed, then Create/Ponder, and finally the built-in
legacy animation.
4. **Writing system** — pages, symbols, notebooks, desks, and book assembly.
5. **Age grammar** — translate symbol combinations into modern biome, noise,
dimension-type, and worldgen configuration.
dimension-type, and worldgen configuration. Optional integrations with
TerraBlender provide composable biome-region generation, while Serene
Seasons and Ecliptic Seasons allow Age generation to participate in their
respective seasonal systems. None of these integrations are required for
Rivencraft's core world generation.
6. **Instability** — deterministic validation and effects with server-safe
behavior.
7. **Structures and polish** — libraries, crystals, portals, recipes, models,
@@ -174,20 +184,28 @@ Return Link only for that initial arrival.
Version 0.2.8 makes Return Link creation a server setting: `ON_CREATION`
(default), `ALWAYS`, or `DISABLED`.
Version 0.2.9.0 begins Milestone 3 with a server-owned, world-persistent Age
registry. Each Age UUID resolves exactly once to an immutable random seed,
generation profile, generation-version marker, canonical name, and creation
time. The temporary vanilla-dimension adapter remains in place until runtime
Age dimensions are introduced by a later release slice.
The preview code is separated behind a renderer interface and uses an isolated
Ponder level populated from server-authoritative destination snapshots.
## Version policy
Versions follow `x.y.z`:
Versions follow `x.y.z.b`:
- `x`: major release point.
- `y`: number of completed milestones.
- `z`: iteration within the active milestone, including bug-fix releases.
- `z`: release slice within the active milestone.
- `b`: bug-fix and additional-work iteration within that release slice.
Starting work on a milestone increments `z`. Completing it increments `y` and
resets `z` to zero. The first milestone-2 slice is therefore `0.1.1`, and
milestone 2 completion will be `0.2.0`.
Starting a release slice increments `z` and resets `b` to zero. Completing a
milestone increments `y` and resets both `z` and `b` to zero. The first
milestone-2 slice is therefore `0.1.1.0`; a fix on that slice is `0.1.1.1`;
and milestone 2 completion is `0.2.0.0`.
## Milestone 1 acceptance record