Blame
|
1 | # Roadmap and Scope |
||||||
| 2 | ||||||||
| 3 | ||||||||
| 4 | > **Documentation baseline:** VoxelCore `main` at `452b569` · 14 September 2026. |
|||||||
| 5 | > **Repository:** [https://github.com/VoxelHorizons/VoxelCore](https://github.com/VoxelHorizons/VoxelCore) |
|||||||
| 6 | ||||||||
| 7 | ||||||||
| 8 | This page separates what the wider VoxelCore rebuild **plans** to become from what the current item/content MVP already supports. |
|||||||
| 9 | ||||||||
| 10 | ## Current completed foundation |
|||||||
| 11 | ||||||||
| 12 | The present implementation has realised several early roadmap principles: |
|||||||
| 13 | ||||||||
| 14 | - deterministic content discovery and bounded YAML parsing; |
|||||||
| 15 | - explicit single-parent inheritance with cycle/missing-parent validation; |
|||||||
| 16 | - immutable compiled definitions; |
|||||||
| 17 | - atomic runtime snapshot publication and failed-reload preservation; |
|||||||
| 18 | - stable ContentID separate from rendering identifiers; |
|||||||
| 19 | - shared persistent render-allocation authority; |
|||||||
| 20 | - deterministic Java resource-pack compilation; |
|||||||
| 21 | - explicit version adapters and exact pack profiles; |
|||||||
| 22 | - real-server CI behaviour checks instead of enable-line-only CI; |
|||||||
| 23 | - non-destructive config schema migration. |
|||||||
| 24 | ||||||||
| 25 | ## Next system classes |
|||||||
| 26 | ||||||||
| 27 | The broader migration roadmap still calls for systems beyond this MVP. Current README/source explicitly leaves these outside the supported item milestone: |
|||||||
| 28 | ||||||||
| 29 | - placed custom blocks; |
|||||||
| 30 | - furniture, seats, storage, light and display-entity lifecycle; |
|||||||
| 31 | - vehicles/input/simulation; |
|||||||
| 32 | - crops and bounded growth scheduling; |
|||||||
| 33 | - GUI/menu framework and session lifecycle; |
|||||||
| 34 | - Bedrock/Geyser frontend mappings and presentation; |
|||||||
| 35 | - richer version-aware item metadata; |
|||||||
| 36 | - legacy HavenCore import/compatibility paths. |
|||||||
| 37 | ||||||||
| 38 | ## Architectural direction from the migration roadmap |
|||||||
| 39 | ||||||||
| 40 | The planning document recommends maintaining a distinction between: |
|||||||
| 41 | ||||||||
| 42 | - immutable **content definitions**; |
|||||||
| 43 | - individual **item instance state**; |
|||||||
| 44 | - persistent **world placement state**; |
|||||||
| 45 | - replaceable **render handles**. |
|||||||
| 46 | ||||||||
| 47 | It also proposes keeping gameplay addons dependent on stable services/API contracts rather than importing one another's mutable registries, and treating the pack builder as a deterministic compiler rather than a ZIP utility. |
|||||||
| 48 | ||||||||
| 49 | These are planning constraints and design direction, not a claim that all proposed modules/services already exist in `main`. |
|||||||
| 50 | ||||||||
| 51 | ## Compatibility policy |
|||||||
| 52 | ||||||||
| 53 | The roadmap's most important rule is already visible in implementation: compatibility must be explicit. 1.21.4 no longer claims unvalidated future versions, and Minecraft/Paper 26.2 received a dedicated adapter, Java target, pack profile and smoke row. Future releases should follow that pattern. |
|||||||
| 54 | ||||||||
| 55 | ## Documentation rule for future milestones |
|||||||
| 56 | ||||||||
| 57 | When a roadmap item is merged, move its behavioural contract into dedicated reference pages and remove it from the “not implemented” list. Do not make this roadmap page the only documentation for a completed subsystem. |
|||||||