Add Earth-scale tile streaming design
This commit is contained in:
@@ -242,11 +242,11 @@ Current tooling decisions:
|
||||
|
||||
## 0.3 Design Documentation
|
||||
|
||||
- [ ] Create game design document.
|
||||
- [ ] Create technical design document.
|
||||
- [ ] Create multiplayer/networking design document.
|
||||
- [ ] Create persistence design document.
|
||||
- [ ] Create Earth-scale terrain/tile streaming design document.
|
||||
- [x] Create game design document.
|
||||
- [x] Create technical design document.
|
||||
- [x] Create multiplayer/networking design document.
|
||||
- [x] Create persistence design document.
|
||||
- [x] Create Earth-scale terrain/tile streaming design document.
|
||||
- [x] Create tile registry/database design document.
|
||||
- [x] Create real-world terrain source data evaluation document.
|
||||
- [ ] Create economy and AGR design document.
|
||||
@@ -328,34 +328,34 @@ full Earth scale this implies roughly 510-520 million possible tiles, added over
|
||||
many years, streamed from servers, cached locally, scrubbed when unused, and
|
||||
redownloaded when a player returns to a region.
|
||||
|
||||
- [ ] Define canonical tile coordinate system for 1 km x 1 km world tiles.
|
||||
- [ ] Decide how latitude/longitude maps to Unreal coordinates and World Partition cells.
|
||||
- [ ] Decide how to handle projection distortion, poles, and dateline crossing.
|
||||
- [x] Define canonical tile coordinate system for 1 km x 1 km world tiles.
|
||||
- [x] Decide how latitude/longitude maps to Unreal coordinates and World Partition cells.
|
||||
- [x] Decide how to handle projection distortion, poles, and dateline crossing.
|
||||
- [x] Define authoritative tile manifest schema.
|
||||
- [x] Define tile status states: unknown, queued, source-data-found, generated, validated, packaged, published, deprecated.
|
||||
- [ ] Define tile adjacency and stitching rules.
|
||||
- [ ] Define tile versioning rules so terrain can improve without corrupting player state.
|
||||
- [ ] Define server-side tile delivery protocol.
|
||||
- [x] Define tile adjacency and stitching rules.
|
||||
- [x] Define tile versioning rules so terrain can improve without corrupting player state.
|
||||
- [x] Define server-side tile delivery protocol.
|
||||
- [x] Launch a near-term MVP tile-serving VM on Ubuntu or another Linux distro.
|
||||
- [x] Add repeatable static Ground Zero tile-delivery package and Ubuntu nginx bootstrap scripts.
|
||||
- [x] Publish a tiny Ground Zero tile manifest and package from the tile server.
|
||||
- [x] Prove client/server tile lookup, download, local cache, and redownload flow with the Ground Zero tile and immediate-neighbor metadata.
|
||||
- [x] Add tile-serving server cost controls and shutdown/runbook notes so MVP testing stays free or near-free.
|
||||
- [x] Move the MVP tile server into a dedicated `Agrarian-TileServer` VM on Unraid.
|
||||
- [ ] Decide whether public testing uses the LAN-hosted `Agrarian-TileServer` VM or an external cloud host.
|
||||
- [ ] Define client local tile cache layout.
|
||||
- [ ] Define local cache retention policy for old or unused tiles.
|
||||
- [ ] Define local cache redownload/revalidation behavior.
|
||||
- [x] Decide whether public testing uses the LAN-hosted `Agrarian-TileServer` VM or an external cloud host.
|
||||
- [x] Define client local tile cache layout.
|
||||
- [x] Define local cache retention policy for old or unused tiles.
|
||||
- [x] Define local cache redownload/revalidation behavior.
|
||||
- [x] Define minimum metadata per tile: coordinates, biome, elevation range, water coverage, source datasets, generation version, neighbors, and publish status.
|
||||
- [x] Evaluate real terrain/elevation data sources.
|
||||
- [x] Evaluate bathymetry/ocean-depth data sources.
|
||||
- [ ] Evaluate river, lake, coastline, road, and land-cover data sources.
|
||||
- [ ] Define automated terrain import pipeline for a single 1 km tile.
|
||||
- [ ] Define automated biome and natural resource inference pipeline.
|
||||
- [ ] Define QA checks for terrain seams, water edges, slope extremes, and missing source data.
|
||||
- [x] Evaluate river, lake, coastline, road, and land-cover data sources.
|
||||
- [x] Define automated terrain import pipeline for a single 1 km tile.
|
||||
- [x] Define automated biome and natural resource inference pipeline.
|
||||
- [x] Define QA checks for terrain seams, water edges, slope extremes, and missing source data.
|
||||
- [x] Build a small tile-tracking database prototype before scaling beyond MVP.
|
||||
- [x] Build an MVP tile registry table for the Ground Zero tile and immediate neighbors.
|
||||
- [ ] Keep World Partition compatibility as a hard requirement for all terrain decisions.
|
||||
- [x] Keep World Partition compatibility as a hard requirement for all terrain decisions.
|
||||
|
||||
# Phase 1 - Foundational Survival MVP
|
||||
|
||||
@@ -1433,7 +1433,7 @@ Earliest incomplete foundation items:
|
||||
- [x] Create the technical design document.
|
||||
- [x] Create the multiplayer/networking design document.
|
||||
- [x] Create the persistence design document.
|
||||
- [ ] Create the Earth-scale terrain/tile streaming design document.
|
||||
- [x] Create the Earth-scale terrain/tile streaming design document.
|
||||
- [x] Launch near-term MVP map-tile serving cloud VM and prove Ground Zero tile lookup/download/cache flow.
|
||||
- [ ] Create economy and AGR design document.
|
||||
- [ ] Create art direction, UX/HUD direction, coding standards, Blueprint standards, and asset/folder naming standards.
|
||||
@@ -1443,4 +1443,4 @@ Earliest incomplete foundation items:
|
||||
|
||||
Immediate next item:
|
||||
|
||||
- [ ] Create the Earth-scale terrain/tile streaming design document.
|
||||
- [ ] Create economy and AGR design document.
|
||||
|
||||
Reference in New Issue
Block a user