From e05444f708364a775731b150c75e0654c11a7cbc Mon Sep 17 00:00:00 2001 From: Jeroen Schweitzer Date: Tue, 24 Mar 2026 23:23:12 +0100 Subject: [PATCH] data(atlas): complete hop-2 body catalogs + corporations table MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Hop-2 systems authored: Tessera/Corvel (legal archive, 1.3B), Proxima/Ancora (first colony, Zheng He lore, 400M), Meridian/Provenance (boomtown, 150M), Barnard's Star/Verada (commuter town, 2B, wiki prose adjusted for surface-majority pop), Prometheus/Galen+Chiron+Site Anterior (longevity monopoly, 55K), Cygni B/Ferrath+Kihl Works (shipyards, 1.8B, 7 combines named), Cairn (the anomaly — 7 apertures, 2 garden planets, zero population). New: corporations table in systems.db schema. 20 records populated from wiki/corporations/ + DSMC + 7 Cygni B combines (Vethara, Kossler-Drun, Amberan Works, Talavec & Sons, Orren-Skel, Marhoud Fabrication, Drevast Extraction). Atlas CLI: fixed planet count defaults (6-8 minimum per star type, was 2-4). Miri added Zheng He lore to Proxima wiki. Co-Authored-By: Claude Opus 4.6 (1M context) --- docs/atlas/proposals/GJ3877.json | 149 +++++++++++++++ docs/atlas/proposals/GJ551.json | 109 +++++++++++ docs/atlas/proposals/GJ674.json | 149 +++++++++++++++ docs/atlas/proposals/GJ699.json | 180 ++++++++++++++++++ docs/atlas/proposals/GJ702B.json | 291 +++++++++++++++++++++++++++++ docs/atlas/proposals/GJ820B.json | 291 +++++++++++++++++++++++++++++ docs/atlas/proposals/GJ845.json | 289 ++++++++++++++++++++++++++++ server/data/systems-schema.sql | 17 ++ server/src/bin/atlas.rs | 31 +-- tooling/populate-corporations.sh | 34 ++++ wiki/star-systems/GJ-3877/index.md | 19 ++ wiki/star-systems/GJ-551/gttr.md | 2 +- wiki/star-systems/GJ-551/index.md | 19 +- wiki/star-systems/GJ-674/index.md | 19 ++ wiki/star-systems/GJ-699/gttr.md | 2 +- wiki/star-systems/GJ-699/index.md | 25 ++- wiki/star-systems/GJ-702B/index.md | 27 +++ wiki/star-systems/GJ-820B/index.md | 27 +++ wiki/star-systems/GJ-845/index.md | 26 +++ 19 files changed, 1686 insertions(+), 20 deletions(-) create mode 100644 docs/atlas/proposals/GJ3877.json create mode 100644 docs/atlas/proposals/GJ551.json create mode 100644 docs/atlas/proposals/GJ674.json create mode 100644 docs/atlas/proposals/GJ699.json create mode 100644 docs/atlas/proposals/GJ702B.json create mode 100644 docs/atlas/proposals/GJ820B.json create mode 100644 docs/atlas/proposals/GJ845.json create mode 100755 tooling/populate-corporations.sh diff --git a/docs/atlas/proposals/GJ3877.json b/docs/atlas/proposals/GJ3877.json new file mode 100644 index 000000000..c0396f0a8 --- /dev/null +++ b/docs/atlas/proposals/GJ3877.json @@ -0,0 +1,149 @@ +{ + "system_id": "GJ 3877", + "proper_name": "Tessera", + "star_type": "unusual", + "spectral_class": "K5V", + "wiki_data": { + "habitable_count": 1, + "inhabited_count": 1, + "has_gas_giant": false, + "has_asteroid_belt": false, + "has_horizon_station": true, + "raw_bodies_line": null + }, + "bodies": [ + { + "body_id": "GJ3877b", + "proper_name": null, + "body_type": "planet", + "orbit_index": 1, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.26, + "orbital_period_days": 18, + "rotation_period_hours": 440, + "atmosphere": "none", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "inner rocky" + }, + { + "body_id": "GJ3877c", + "proper_name": "Corvel", + "body_type": "planet", + "orbit_index": 2, + "parent_body_id": null, + "inhabited": true, + "population": 1300000000, + "mass_class": "terrestrial", + "surface_gravity": 0.80, + "orbital_period_days": 210, + "rotation_period_hours": 23.0, + "atmosphere": "breathable", + "biome_summary": "temperate", + "hydrosphere": "rivers", + "economic_role": "service_mixed", + "settlement_pattern": "urban_concentrated", + "industrial_corridor": null, + "notes": "Registry, legal professionals, archival access" + }, + { + "body_id": "GJ3877c-1", + "proper_name": null, + "body_type": "moon", + "orbit_index": 1, + "parent_body_id": "GJ3877c", + "inhabited": false, + "population": 0, + "mass_class": "dwarf", + "surface_gravity": 0.04, + "orbital_period_days": 10.0, + "rotation_period_hours": 240, + "atmosphere": "none", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ3877d", + "proper_name": null, + "body_type": "planet", + "orbit_index": 3, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.40, + "orbital_period_days": 520, + "rotation_period_hours": 17.0, + "atmosphere": "thin", + "biome_summary": "arid", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ3877e", + "proper_name": null, + "body_type": "planet", + "orbit_index": 4, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.35, + "orbital_period_days": 1000, + "rotation_period_hours": 19.5, + "atmosphere": "none", + "biome_summary": "frozen", + "hydrosphere": "ice", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "outer frozen" + }, + { + "body_id": "GJ3877-oort", + "proper_name": null, + "body_type": "oort_cloud", + "orbit_index": 5, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": null, + "surface_gravity": null, + "orbital_period_days": null, + "rotation_period_hours": null, + "atmosphere": null, + "biome_summary": null, + "hydrosphere": null, + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + } + ], + "stations": [ + { + "station_id": "GJ3877-oort-S1", + "proper_name": "Horizon Station", + "orbits_body_id": "GJ3877-oort", + "station_type": "horizon", + "population": 0, + "economic_role": "transit", + "docking_class": "major", + "has_gate_infrastructure": true, + "notes": "5 apertures" + } + ] +} diff --git a/docs/atlas/proposals/GJ551.json b/docs/atlas/proposals/GJ551.json new file mode 100644 index 000000000..78e57888c --- /dev/null +++ b/docs/atlas/proposals/GJ551.json @@ -0,0 +1,109 @@ +{ + "system_id": "GJ 551", + "proper_name": "Proxima", + "star_type": "M", + "spectral_class": "M5Ve", + "wiki_data": { + "habitable_count": 1, + "inhabited_count": 1, + "has_gas_giant": false, + "has_asteroid_belt": false, + "has_horizon_station": true, + "raw_bodies_line": null + }, + "bodies": [ + { + "body_id": "GJ551b", + "proper_name": "Ancora", + "body_type": "planet", + "orbit_index": 1, + "parent_body_id": null, + "inhabited": true, + "population": 400000000, + "mass_class": "terrestrial", + "surface_gravity": 0.90, + "orbital_period_days": 11.2, + "rotation_period_hours": 268.8, + "atmosphere": "breathable", + "biome_summary": "arid", + "hydrosphere": "rivers", + "economic_role": "service_mixed", + "settlement_pattern": "urban_concentrated", + "industrial_corridor": null, + "notes": "first human colony, tidally locked, Firstelder Archive, heritage tourism, colonized by STL ship Zheng He" + }, + { + "body_id": "GJ551c", + "proper_name": null, + "body_type": "planet", + "orbit_index": 2, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.35, + "orbital_period_days": 30, + "rotation_period_hours": 720, + "atmosphere": "none", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "inner rocky" + }, + { + "body_id": "GJ551d", + "proper_name": null, + "body_type": "planet", + "orbit_index": 3, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.28, + "orbital_period_days": 200, + "rotation_period_hours": 14.0, + "atmosphere": "thin", + "biome_summary": "frozen", + "hydrosphere": "ice", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "outer ice" + }, + { + "body_id": "GJ551-oort", + "proper_name": null, + "body_type": "oort_cloud", + "orbit_index": 4, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": null, + "surface_gravity": null, + "orbital_period_days": null, + "rotation_period_hours": null, + "atmosphere": null, + "biome_summary": null, + "hydrosphere": null, + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + } + ], + "stations": [ + { + "station_id": "GJ551-oort-S1", + "proper_name": "Horizon Station", + "orbits_body_id": "GJ551-oort", + "station_type": "horizon", + "population": 0, + "economic_role": "transit", + "docking_class": "major", + "has_gate_infrastructure": true, + "notes": "4 apertures" + } + ] +} diff --git a/docs/atlas/proposals/GJ674.json b/docs/atlas/proposals/GJ674.json new file mode 100644 index 000000000..8b152a9f6 --- /dev/null +++ b/docs/atlas/proposals/GJ674.json @@ -0,0 +1,149 @@ +{ + "system_id": "GJ 674", + "proper_name": "Meridian", + "star_type": "K", + "spectral_class": "K5", + "wiki_data": { + "habitable_count": 1, + "inhabited_count": 1, + "has_gas_giant": false, + "has_asteroid_belt": false, + "has_horizon_station": true, + "raw_bodies_line": null + }, + "bodies": [ + { + "body_id": "GJ674b", + "proper_name": null, + "body_type": "planet", + "orbit_index": 1, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.28, + "orbital_period_days": 20, + "rotation_period_hours": 480, + "atmosphere": "none", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "inner rocky" + }, + { + "body_id": "GJ674c", + "proper_name": "Provenance", + "body_type": "planet", + "orbit_index": 2, + "parent_body_id": null, + "inhabited": true, + "population": 150000000, + "mass_class": "terrestrial", + "surface_gravity": 0.86, + "orbital_period_days": 230, + "rotation_period_hours": 24.2, + "atmosphere": "breathable", + "biome_summary": "temperate", + "hydrosphere": "ocean", + "economic_role": "extraction", + "settlement_pattern": "dispersed_rural", + "industrial_corridor": null, + "notes": "garden-grade, early agricultural conversion, Groombridge-backed" + }, + { + "body_id": "GJ674c-1", + "proper_name": null, + "body_type": "moon", + "orbit_index": 1, + "parent_body_id": "GJ674c", + "inhabited": false, + "population": 0, + "mass_class": "dwarf", + "surface_gravity": 0.05, + "orbital_period_days": 12.0, + "rotation_period_hours": 288, + "atmosphere": "none", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ674d", + "proper_name": null, + "body_type": "planet", + "orbit_index": 3, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.42, + "orbital_period_days": 560, + "rotation_period_hours": 18.0, + "atmosphere": "thin", + "biome_summary": "arid", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ674e", + "proper_name": null, + "body_type": "planet", + "orbit_index": 4, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.33, + "orbital_period_days": 1100, + "rotation_period_hours": 16.5, + "atmosphere": "none", + "biome_summary": "frozen", + "hydrosphere": "ice", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "outer frozen" + }, + { + "body_id": "GJ674-oort", + "proper_name": null, + "body_type": "oort_cloud", + "orbit_index": 5, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": null, + "surface_gravity": null, + "orbital_period_days": null, + "rotation_period_hours": null, + "atmosphere": null, + "biome_summary": null, + "hydrosphere": null, + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + } + ], + "stations": [ + { + "station_id": "GJ674-oort-S1", + "proper_name": "Horizon Station", + "orbits_body_id": "GJ674-oort", + "station_type": "horizon", + "population": 0, + "economic_role": "transit", + "docking_class": "standard", + "has_gate_infrastructure": true, + "notes": "2 apertures" + } + ] +} diff --git a/docs/atlas/proposals/GJ699.json b/docs/atlas/proposals/GJ699.json new file mode 100644 index 000000000..535a8578b --- /dev/null +++ b/docs/atlas/proposals/GJ699.json @@ -0,0 +1,180 @@ +{ + "system_id": "GJ 699", + "proper_name": "Barnard's Star", + "star_type": "K", + "spectral_class": "sdM4", + "wiki_data": { + "habitable_count": 1, + "inhabited_count": 1, + "has_gas_giant": true, + "has_asteroid_belt": false, + "has_horizon_station": true, + "raw_bodies_line": null + }, + "bodies": [ + { + "body_id": "GJ699b", + "proper_name": "Verada", + "body_type": "planet", + "orbit_index": 1, + "parent_body_id": null, + "inhabited": true, + "population": 1900000000, + "mass_class": "terrestrial", + "surface_gravity": 0.75, + "orbital_period_days": 180, + "rotation_period_hours": 21.0, + "atmosphere": "breathable", + "biome_summary": "arid", + "hydrosphere": "rivers", + "economic_role": "service_mixed", + "settlement_pattern": "urban_concentrated", + "industrial_corridor": null, + "notes": "commuter sprawl, morning gate to Cygni B" + }, + { + "body_id": "GJ699b-1", + "proper_name": null, + "body_type": "moon", + "orbit_index": 1, + "parent_body_id": "GJ699b", + "inhabited": false, + "population": 0, + "mass_class": "dwarf", + "surface_gravity": 0.04, + "orbital_period_days": 8.0, + "rotation_period_hours": 192, + "atmosphere": "none", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ699c", + "proper_name": null, + "body_type": "planet", + "orbit_index": 2, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.32, + "orbital_period_days": 50, + "rotation_period_hours": 1200, + "atmosphere": "none", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "inner rocky, tidally locked" + }, + { + "body_id": "GJ699d", + "proper_name": null, + "body_type": "planet", + "orbit_index": 3, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.40, + "orbital_period_days": 400, + "rotation_period_hours": 15.0, + "atmosphere": "thin", + "biome_summary": "frozen", + "hydrosphere": "ice", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "outer frozen" + }, + { + "body_id": "GJ699e", + "proper_name": null, + "body_type": "gas_giant", + "orbit_index": 4, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "ice_giant", + "surface_gravity": null, + "orbital_period_days": 1500, + "rotation_period_hours": 13.5, + "atmosphere": "dense", + "biome_summary": null, + "hydrosphere": null, + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "small gas giant" + }, + { + "body_id": "GJ699e-1", + "proper_name": null, + "body_type": "moon", + "orbit_index": 1, + "parent_body_id": "GJ699e", + "inhabited": false, + "population": 0, + "mass_class": "dwarf", + "surface_gravity": 0.07, + "orbital_period_days": 3.5, + "rotation_period_hours": 84, + "atmosphere": "none", + "biome_summary": "frozen", + "hydrosphere": "ice", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ699-oort", + "proper_name": null, + "body_type": "oort_cloud", + "orbit_index": 5, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": null, + "surface_gravity": null, + "orbital_period_days": null, + "rotation_period_hours": null, + "atmosphere": null, + "biome_summary": null, + "hydrosphere": null, + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + } + ], + "stations": [ + { + "station_id": "GJ699b-S1", + "proper_name": null, + "orbits_body_id": "GJ699b", + "station_type": "transit", + "population": 100000000, + "economic_role": "transit", + "docking_class": "major", + "has_gate_infrastructure": false, + "notes": "orbital transit hub, commuter gateway to Cygni B" + }, + { + "station_id": "GJ699-oort-S1", + "proper_name": "Horizon Station", + "orbits_body_id": "GJ699-oort", + "station_type": "horizon", + "population": 0, + "economic_role": "transit", + "docking_class": "standard", + "has_gate_infrastructure": true, + "notes": "2 apertures" + } + ] +} diff --git a/docs/atlas/proposals/GJ702B.json b/docs/atlas/proposals/GJ702B.json new file mode 100644 index 000000000..369495604 --- /dev/null +++ b/docs/atlas/proposals/GJ702B.json @@ -0,0 +1,291 @@ +{ + "system_id": "GJ 702B", + "proper_name": "Prometheus", + "star_type": "G", + "spectral_class": "K5 Ve", + "wiki_data": { + "habitable_count": 0, + "inhabited_count": 0, + "has_gas_giant": true, + "has_asteroid_belt": true, + "has_horizon_station": true, + "raw_bodies_line": null + }, + "bodies": [ + { + "body_id": "GJ702Bb", + "proper_name": null, + "body_type": "planet", + "orbit_index": 1, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.22, + "orbital_period_days": 12, + "rotation_period_hours": 288, + "atmosphere": "none", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "inner scorched" + }, + { + "body_id": "GJ702Bc", + "proper_name": null, + "body_type": "planet", + "orbit_index": 2, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.60, + "orbital_period_days": 55, + "rotation_period_hours": 1320, + "atmosphere": "toxic", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "Venus-analog, dense atmosphere" + }, + { + "body_id": "GJ702Bd", + "proper_name": null, + "body_type": "planet", + "orbit_index": 3, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.45, + "orbital_period_days": 140, + "rotation_period_hours": 28.0, + "atmosphere": "thin", + "biome_summary": "arid", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "marginal rocky" + }, + { + "body_id": "GJ702Be", + "proper_name": "Galen", + "body_type": "planet", + "orbit_index": 4, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.82, + "orbital_period_days": 250, + "rotation_period_hours": 22.0, + "atmosphere": "breathable", + "biome_summary": "arid", + "hydrosphere": "rivers", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "habitable-zone, breathable — Prometheus chose not to colonize" + }, + { + "body_id": "GJ702Bf", + "proper_name": null, + "body_type": "planet", + "orbit_index": 5, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.50, + "orbital_period_days": 500, + "rotation_period_hours": 18.0, + "atmosphere": "thin", + "biome_summary": "frozen", + "hydrosphere": "rivers", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "cold rocky, subsurface ice" + }, + { + "body_id": "GJ702Bg", + "proper_name": null, + "body_type": "planet", + "orbit_index": 6, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.35, + "orbital_period_days": 900, + "rotation_period_hours": 15.0, + "atmosphere": "none", + "biome_summary": "frozen", + "hydrosphere": "ice", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "outer frozen" + }, + { + "body_id": "GJ702B-belt", + "proper_name": null, + "body_type": "asteroid_belt", + "orbit_index": 7, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": null, + "surface_gravity": null, + "orbital_period_days": null, + "rotation_period_hours": null, + "atmosphere": null, + "biome_summary": null, + "hydrosphere": null, + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "sparse" + }, + { + "body_id": "GJ702Bh", + "proper_name": null, + "body_type": "gas_giant", + "orbit_index": 8, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "gas_giant", + "surface_gravity": null, + "orbital_period_days": 2400, + "rotation_period_hours": 11.0, + "atmosphere": "dense", + "biome_summary": null, + "hydrosphere": null, + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ702Bh-1", + "proper_name": null, + "body_type": "moon", + "orbit_index": 1, + "parent_body_id": "GJ702Bh", + "inhabited": false, + "population": 0, + "mass_class": "dwarf", + "surface_gravity": 0.09, + "orbital_period_days": 3.5, + "rotation_period_hours": 84, + "atmosphere": "none", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ702Bh-2", + "proper_name": null, + "body_type": "moon", + "orbit_index": 2, + "parent_body_id": "GJ702Bh", + "inhabited": false, + "population": 0, + "mass_class": "dwarf", + "surface_gravity": 0.06, + "orbital_period_days": 8.0, + "rotation_period_hours": 192, + "atmosphere": "none", + "biome_summary": "frozen", + "hydrosphere": "ice", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ702Bh-3", + "proper_name": null, + "body_type": "moon", + "orbit_index": 3, + "parent_body_id": "GJ702Bh", + "inhabited": false, + "population": 0, + "mass_class": "dwarf", + "surface_gravity": 0.04, + "orbital_period_days": 14.0, + "rotation_period_hours": 336, + "atmosphere": "none", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ702B-oort", + "proper_name": null, + "body_type": "oort_cloud", + "orbit_index": 9, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": null, + "surface_gravity": null, + "orbital_period_days": null, + "rotation_period_hours": null, + "atmosphere": null, + "biome_summary": null, + "hydrosphere": null, + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + } + ], + "stations": [ + { + "station_id": "GJ702Bc-S1", + "proper_name": "Site Anterior", + "orbits_body_id": "GJ702Bc", + "station_type": "research", + "population": 5000, + "economic_role": "research", + "docking_class": "restricted", + "has_gate_infrastructure": false, + "notes": "restricted research complex, orbits Venus-analog" + }, + { + "station_id": "GJ702B-oort-S1", + "proper_name": "Horizon Station", + "orbits_body_id": "GJ702B-oort", + "station_type": "horizon", + "population": 0, + "economic_role": "transit", + "docking_class": "restricted", + "has_gate_infrastructure": true, + "notes": "single aperture, Prometheus security controlled" + }, + { + "station_id": "GJ702B-oort-S2", + "proper_name": "Chiron", + "orbits_body_id": "GJ702B-oort", + "station_type": "research", + "population": 50000, + "economic_role": "research", + "docking_class": "restricted", + "has_gate_infrastructure": false, + "notes": "client-facing treatment hub, near gate" + } + ] +} diff --git a/docs/atlas/proposals/GJ820B.json b/docs/atlas/proposals/GJ820B.json new file mode 100644 index 000000000..ec27d1ca1 --- /dev/null +++ b/docs/atlas/proposals/GJ820B.json @@ -0,0 +1,291 @@ +{ + "system_id": "GJ 820B", + "proper_name": "Cygni B", + "star_type": "K", + "spectral_class": "K7V", + "wiki_data": { + "habitable_count": 1, + "inhabited_count": 1, + "has_gas_giant": true, + "has_asteroid_belt": true, + "has_horizon_station": true, + "raw_bodies_line": "| **Bodies** | 1 habitable · 1 inhabited |" + }, + "bodies": [ + { + "body_id": "GJ820Bb", + "proper_name": null, + "body_type": "planet", + "orbit_index": 1, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.25, + "orbital_period_days": 15, + "rotation_period_hours": 360, + "atmosphere": "none", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "inner scorched" + }, + { + "body_id": "GJ820B-belt", + "proper_name": null, + "body_type": "asteroid_belt", + "orbit_index": 2, + "parent_body_id": null, + "inhabited": true, + "population": 15000000, + "mass_class": null, + "surface_gravity": null, + "orbital_period_days": null, + "rotation_period_hours": null, + "atmosphere": null, + "biome_summary": null, + "hydrosphere": null, + "economic_role": "extraction", + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "dense metallic asteroids, 580 years of industrial mining, Drevast operations" + }, + { + "body_id": "GJ820Bc", + "proper_name": "Ferrath", + "body_type": "planet", + "orbit_index": 3, + "parent_body_id": null, + "inhabited": true, + "population": 200000000, + "mass_class": "terrestrial", + "surface_gravity": 0.95, + "orbital_period_days": 180, + "rotation_period_hours": 20.5, + "atmosphere": "breathable", + "biome_summary": "arid", + "hydrosphere": "rivers", + "economic_role": "manufacturing", + "settlement_pattern": "urban_concentrated", + "industrial_corridor": null, + "notes": "dense high-iron world, industrial support hubs, supply depots" + }, + { + "body_id": "GJ820Bc-1", + "proper_name": null, + "body_type": "moon", + "orbit_index": 1, + "parent_body_id": "GJ820Bc", + "inhabited": false, + "population": 0, + "mass_class": "dwarf", + "surface_gravity": 0.06, + "orbital_period_days": 10.0, + "rotation_period_hours": 240, + "atmosphere": "none", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ820Bd", + "proper_name": null, + "body_type": "planet", + "orbit_index": 4, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.50, + "orbital_period_days": 400, + "rotation_period_hours": 17.0, + "atmosphere": "thin", + "biome_summary": "arid", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ820Be", + "proper_name": null, + "body_type": "planet", + "orbit_index": 5, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.42, + "orbital_period_days": 700, + "rotation_period_hours": 15.5, + "atmosphere": "thin", + "biome_summary": "frozen", + "hydrosphere": "ice", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ820Bf", + "proper_name": null, + "body_type": "planet", + "orbit_index": 6, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.35, + "orbital_period_days": 1200, + "rotation_period_hours": 19.0, + "atmosphere": "none", + "biome_summary": "frozen", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "outer dead" + }, + { + "body_id": "GJ820Bg", + "proper_name": null, + "body_type": "gas_giant", + "orbit_index": 7, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "gas_giant", + "surface_gravity": null, + "orbital_period_days": 2800, + "rotation_period_hours": 10.5, + "atmosphere": "dense", + "biome_summary": null, + "hydrosphere": null, + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ820Bg-1", + "proper_name": null, + "body_type": "moon", + "orbit_index": 1, + "parent_body_id": "GJ820Bg", + "inhabited": false, + "population": 0, + "mass_class": "dwarf", + "surface_gravity": 0.10, + "orbital_period_days": 4.0, + "rotation_period_hours": 96, + "atmosphere": "none", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ820Bg-2", + "proper_name": null, + "body_type": "moon", + "orbit_index": 2, + "parent_body_id": "GJ820Bg", + "inhabited": false, + "population": 0, + "mass_class": "dwarf", + "surface_gravity": 0.07, + "orbital_period_days": 9.0, + "rotation_period_hours": 216, + "atmosphere": "none", + "biome_summary": "frozen", + "hydrosphere": "ice", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ820Bg-3", + "proper_name": null, + "body_type": "moon", + "orbit_index": 3, + "parent_body_id": "GJ820Bg", + "inhabited": false, + "population": 0, + "mass_class": "dwarf", + "surface_gravity": 0.05, + "orbital_period_days": 15.0, + "rotation_period_hours": 360, + "atmosphere": "none", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ820B-oort", + "proper_name": null, + "body_type": "oort_cloud", + "orbit_index": 8, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": null, + "surface_gravity": null, + "orbital_period_days": null, + "rotation_period_hours": null, + "atmosphere": null, + "biome_summary": null, + "hydrosphere": null, + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + } + ], + "stations": [ + { + "station_id": "GJ820Bc-S1", + "proper_name": "Kihl Works", + "orbits_body_id": "GJ820Bc", + "station_type": "industrial", + "population": 1200000000, + "economic_role": "manufacturing", + "docking_class": "major", + "has_gate_infrastructure": false, + "notes": "primary shipyard complex, seven combines" + }, + { + "station_id": "GJ820Bc-S2", + "proper_name": null, + "orbits_body_id": "GJ820Bc", + "station_type": "industrial", + "population": 300000000, + "economic_role": "manufacturing", + "docking_class": "major", + "has_gate_infrastructure": false, + "notes": "secondary fabrication platforms" + }, + { + "station_id": "GJ820B-oort-S1", + "proper_name": "Horizon Station", + "orbits_body_id": "GJ820B-oort", + "station_type": "horizon", + "population": 0, + "economic_role": "transit", + "docking_class": "major", + "has_gate_infrastructure": true, + "notes": "5 apertures" + } + ] +} diff --git a/docs/atlas/proposals/GJ845.json b/docs/atlas/proposals/GJ845.json new file mode 100644 index 000000000..2053dfbff --- /dev/null +++ b/docs/atlas/proposals/GJ845.json @@ -0,0 +1,289 @@ +{ + "system_id": "GJ 845", + "proper_name": "Cairn", + "star_type": "M", + "spectral_class": "K5V", + "wiki_data": { + "habitable_count": 2, + "inhabited_count": 0, + "has_gas_giant": true, + "has_asteroid_belt": true, + "has_horizon_station": true, + "raw_bodies_line": null + }, + "bodies": [ + { + "body_id": "GJ845b", + "proper_name": null, + "body_type": "planet", + "orbit_index": 1, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.24, + "orbital_period_days": 14, + "rotation_period_hours": 340, + "atmosphere": "none", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "inner scorched" + }, + { + "body_id": "GJ845c", + "proper_name": null, + "body_type": "planet", + "orbit_index": 2, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.58, + "orbital_period_days": 60, + "rotation_period_hours": 1440, + "atmosphere": "toxic", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "Venus-analog" + }, + { + "body_id": "GJ845d", + "proper_name": null, + "body_type": "planet", + "orbit_index": 3, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.88, + "orbital_period_days": 200, + "rotation_period_hours": 23.0, + "atmosphere": "breathable", + "biome_summary": "temperate", + "hydrosphere": "ocean", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "habitable, garden-grade — nobody lives here" + }, + { + "body_id": "GJ845d-1", + "proper_name": null, + "body_type": "moon", + "orbit_index": 1, + "parent_body_id": "GJ845d", + "inhabited": false, + "population": 0, + "mass_class": "dwarf", + "surface_gravity": 0.07, + "orbital_period_days": 12.0, + "rotation_period_hours": 288, + "atmosphere": "none", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ845e", + "proper_name": null, + "body_type": "planet", + "orbit_index": 4, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.72, + "orbital_period_days": 380, + "rotation_period_hours": 20.0, + "atmosphere": "breathable", + "biome_summary": "temperate", + "hydrosphere": "rivers", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "second habitable — also empty" + }, + { + "body_id": "GJ845f", + "proper_name": null, + "body_type": "planet", + "orbit_index": 5, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.42, + "orbital_period_days": 700, + "rotation_period_hours": 16.5, + "atmosphere": "thin", + "biome_summary": "arid", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ845g", + "proper_name": null, + "body_type": "planet", + "orbit_index": 6, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "terrestrial", + "surface_gravity": 0.35, + "orbital_period_days": 1100, + "rotation_period_hours": 18.0, + "atmosphere": "none", + "biome_summary": "frozen", + "hydrosphere": "ice", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "outer frozen" + }, + { + "body_id": "GJ845-belt", + "proper_name": null, + "body_type": "asteroid_belt", + "orbit_index": 7, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": null, + "surface_gravity": null, + "orbital_period_days": null, + "rotation_period_hours": null, + "atmosphere": null, + "biome_summary": null, + "hydrosphere": null, + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ845h", + "proper_name": null, + "body_type": "gas_giant", + "orbit_index": 8, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": "gas_giant", + "surface_gravity": null, + "orbital_period_days": 3000, + "rotation_period_hours": 12.0, + "atmosphere": "dense", + "biome_summary": null, + "hydrosphere": null, + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ845h-1", + "proper_name": null, + "body_type": "moon", + "orbit_index": 1, + "parent_body_id": "GJ845h", + "inhabited": false, + "population": 0, + "mass_class": "dwarf", + "surface_gravity": 0.10, + "orbital_period_days": 4.0, + "rotation_period_hours": 96, + "atmosphere": "none", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ845h-2", + "proper_name": null, + "body_type": "moon", + "orbit_index": 2, + "parent_body_id": "GJ845h", + "inhabited": false, + "population": 0, + "mass_class": "dwarf", + "surface_gravity": 0.06, + "orbital_period_days": 9.0, + "rotation_period_hours": 216, + "atmosphere": "none", + "biome_summary": "frozen", + "hydrosphere": "ice", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ845h-3", + "proper_name": null, + "body_type": "moon", + "orbit_index": 3, + "parent_body_id": "GJ845h", + "inhabited": false, + "population": 0, + "mass_class": "dwarf", + "surface_gravity": 0.04, + "orbital_period_days": 16.0, + "rotation_period_hours": 384, + "atmosphere": "none", + "biome_summary": "barren", + "hydrosphere": "none", + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + }, + { + "body_id": "GJ845-oort", + "proper_name": null, + "body_type": "oort_cloud", + "orbit_index": 9, + "parent_body_id": null, + "inhabited": false, + "population": 0, + "mass_class": null, + "surface_gravity": null, + "orbital_period_days": null, + "rotation_period_hours": null, + "atmosphere": null, + "biome_summary": null, + "hydrosphere": null, + "economic_role": null, + "settlement_pattern": null, + "industrial_corridor": null, + "notes": "" + } + ], + "stations": [ + { + "station_id": "GJ845-oort-S1", + "proper_name": "Horizon Station", + "orbits_body_id": "GJ845-oort", + "station_type": "horizon", + "population": 0, + "economic_role": "transit", + "docking_class": "standard", + "has_gate_infrastructure": true, + "notes": "7 apertures, unmanned, most connected empty system in the Reach" + } + ] +} diff --git a/server/data/systems-schema.sql b/server/data/systems-schema.sql index be340511c..0c6f5cdc4 100644 --- a/server/data/systems-schema.sql +++ b/server/data/systems-schema.sql @@ -189,6 +189,21 @@ CREATE TABLE IF NOT EXISTS stations ( updated_at TEXT DEFAULT (datetime('now')) ); +-- Corporations, combines, and major economic entities +-- Source: wiki/corporations/ pages (canonical) +CREATE TABLE IF NOT EXISTS corporations ( + corp_id TEXT PRIMARY KEY, -- slug from wiki (e.g., "gate-corporation", "vethara") + proper_name TEXT NOT NULL, -- display name + corp_type TEXT NOT NULL, -- corporation, combine, syndic, institution, independent + scope TEXT, -- reach-wide, sector, system, local + headquarters_system TEXT REFERENCES star_systems(system_id), + headquarters_body TEXT, -- body_id or station_id + specialization TEXT, -- primary product/service + parent_corp TEXT REFERENCES corporations(corp_id), + notes TEXT, + updated_at TEXT DEFAULT (datetime('now')) +); + -- Indexes -- astronomical_id removed: system_id IS the GJ catalog number CREATE INDEX IF NOT EXISTS idx_star_systems_sector ON star_systems(geographic_sector); @@ -207,3 +222,5 @@ CREATE INDEX IF NOT EXISTS idx_bodies_inhabited ON bodies(inhabited); CREATE INDEX IF NOT EXISTS idx_stations_system ON stations(system_id); CREATE INDEX IF NOT EXISTS idx_stations_orbits ON stations(orbits_body_id); CREATE INDEX IF NOT EXISTS idx_stations_type ON stations(station_type); +CREATE INDEX IF NOT EXISTS idx_corps_system ON corporations(headquarters_system); +CREATE INDEX IF NOT EXISTS idx_corps_type ON corporations(corp_type); diff --git a/server/src/bin/atlas.rs b/server/src/bin/atlas.rs index 751e07325..66600c098 100644 --- a/server/src/bin/atlas.rs +++ b/server/src/bin/atlas.rs @@ -769,27 +769,28 @@ fn generate_body_matrix( .and_then(|s| s.chars().next()) .unwrap_or('M'); - // Base planet count by spectral type (realistic defaults) + // Base planet count by spectral type. + // Sol has 8. TRAPPIST-1 (M-dwarf) has 7. Minimum 6 for any star. let total_planets = if wiki_hab > 0 || wiki_inh > 0 { - // Wiki has data — use it as the inhabited/habitable core, add some barren ones + // Wiki has data — use it as the inhabited/habitable core, pad to realistic count let known = wiki_hab.max(wiki_inh); match spectral_char { - 'O' | 'B' | 'A' => known + 1, // hot stars, fewer planets - 'F' => known + 2, - 'G' => known + 2, // sol-like - 'K' => known + 1, - 'M' => known + 1, // red dwarfs, compact systems - _ => known + 1, + 'O' | 'B' | 'A' => (known + 4).max(6), // hot stars — fewer but still 6+ + 'F' => (known + 5).max(8), // bright — wide system, 8+ + 'G' => (known + 5).max(8), // sol-like — 8 is baseline + 'K' => (known + 4).max(7), // cooler — 7+ typical + 'M' => (known + 4).max(6), // compact but TRAPPIST-1 has 7 + _ => (known + 4).max(6), } } else { - // No wiki data — generate reasonable count + // No wiki data — generate realistic count match spectral_char { - 'O' | 'B' | 'A' => 2, - 'F' => 4, - 'G' => 4, - 'K' => 3, - 'M' => 3, - _ => 3, + 'O' | 'B' | 'A' => 6, + 'F' => 8, + 'G' => 8, + 'K' => 7, + 'M' => 6, + _ => 6, } }; diff --git a/tooling/populate-corporations.sh b/tooling/populate-corporations.sh new file mode 100755 index 000000000..17abd0ff3 --- /dev/null +++ b/tooling/populate-corporations.sh @@ -0,0 +1,34 @@ +#!/usr/bin/env bash +# Populate corporations table from wiki data + Cygni B combines + DSMC +set -euo pipefail +DB="$(cd "$(dirname "$0")/.." && pwd)/server/data/systems.db" + +sqlite3 "$DB" <<'SQL' +-- From wiki/corporations/ +INSERT OR IGNORE INTO corporations VALUES ('gate-corporation', 'Gate Corporation', 'corporation', 'reach-wide', 'GJ 251', NULL, 'Span gate infrastructure', NULL, NULL, NULL); +INSERT OR IGNORE INTO corporations VALUES ('mvg', 'Mastroianni Vehicle Group', 'corporation', 'reach-wide', 'GJ 764', NULL, 'Transit vehicles, trains, haulers', NULL, NULL, NULL); +INSERT OR IGNORE INTO corporations VALUES ('prometheus-labs', 'Prometheus Labs', 'corporation', 'reach-wide', 'GJ 702B', NULL, 'Longevity hardware, neural augmentation', NULL, NULL, NULL); +INSERT OR IGNORE INTO corporations VALUES ('adams-ford', 'Adams & Ford Publishing', 'corporation', 'reach-wide', 'GJ 280A', NULL, 'The Drifters Guide to the Reach', NULL, NULL, NULL); +INSERT OR IGNORE INTO corporations VALUES ('mercado-travessia', 'Mercado Travessia', 'corporation', 'sector', 'GJ 1156', NULL, 'Grocery and household goods', NULL, NULL, NULL); +INSERT OR IGNORE INTO corporations VALUES ('stalownia-kowalski', 'Stalownia Kowalski', 'corporation', 'reach-wide', 'GJ 896A', NULL, 'Heavy mining and construction equipment', NULL, NULL, NULL); +INSERT OR IGNORE INTO corporations VALUES ('ferreira-monteiro', 'Ferreira Monteiro', 'corporation', 'reach-wide', 'GJ 884', NULL, 'Trade arbitration and commercial law', NULL, NULL, NULL); +INSERT OR IGNORE INTO corporations VALUES ('calloway-distillery', 'Calloway Distillery', 'corporation', 'sector', 'GJ 3325', NULL, 'Single malt whisky', NULL, NULL, NULL); +INSERT OR IGNORE INTO corporations VALUES ('thrds', 'thrds', 'corporation', 'sector', 'GJ 475', NULL, 'Cold-weather technical clothing', NULL, NULL, NULL); +INSERT OR IGNORE INTO corporations VALUES ('nordmark-skog', 'Nordmark Skog', 'corporation', 'sector', 'GJ 534', NULL, 'Timber and structural panels', NULL, NULL, NULL); +INSERT OR IGNORE INTO corporations VALUES ('talbrau', 'Talbräu', 'corporation', 'local', 'GJ 798', NULL, 'Franconian farmhouse lager', NULL, NULL, NULL); +INSERT OR IGNORE INTO corporations VALUES ('vins-de-grand-vide', 'Vins de Grand Vide', 'corporation', 'sector', 'GJ 395', NULL, 'Negociant wine cooperative', NULL, NULL, NULL); + +-- DSMC from cultural-migration-pressure.md +INSERT OR IGNORE INTO corporations VALUES ('dsmc', 'Dorfhausen Sydney Mining Corporation', 'corporation', 'reach-wide', 'GJ 3522', NULL, 'Heavy extraction, mining infrastructure', NULL, NULL, NULL); + +-- Cygni B combines (7 majors) +INSERT OR IGNORE INTO corporations VALUES ('vethara', 'Vethara Combine', 'combine', 'reach-wide', 'GJ 820B', NULL, 'Primary hull fabrication, capital-class freight haulers', NULL, NULL, NULL); +INSERT OR IGNORE INTO corporations VALUES ('kossler-drun', 'Kossler-Drun', 'combine', 'reach-wide', 'GJ 820B', NULL, 'Station module construction, habitat segments, docking architecture', NULL, NULL, NULL); +INSERT OR IGNORE INTO corporations VALUES ('amberan', 'Amberan Works', 'combine', 'reach-wide', 'GJ 820B', NULL, 'Gate-adjacent platform fabrication', NULL, 'Deepest involvement in Institute design-rights dispute', NULL); +INSERT OR IGNORE INTO corporations VALUES ('talavec', 'Talavec & Sons', 'combine', 'reach-wide', 'GJ 820B', NULL, 'Drive systems and propulsion assemblies', NULL, NULL, NULL); +INSERT OR IGNORE INTO corporations VALUES ('orren-skel', 'Orren-Skel', 'combine', 'reach-wide', 'GJ 820B', NULL, 'Precision components and sensor integration', NULL, 'The combine everyone subcontracts to', NULL); +INSERT OR IGNORE INTO corporations VALUES ('marhoud', 'Marhoud Fabrication', 'combine', 'reach-wide', 'GJ 820B', NULL, 'Freight hauler production lines, volume manufacturing', NULL, NULL, NULL); +INSERT OR IGNORE INTO corporations VALUES ('drevast', 'Drevast Extraction & Processing', 'combine', 'system', 'GJ 820B', NULL, 'In-system ore extraction and feedstock processing', NULL, 'Controls feedstock supply the other six need', NULL); +SQL + +echo "Populated $(sqlite3 "$DB" 'SELECT COUNT(*) FROM corporations') corporations" diff --git a/wiki/star-systems/GJ-3877/index.md b/wiki/star-systems/GJ-3877/index.md index 6b433f9d8..2d2ae121f 100644 --- a/wiki/star-systems/GJ-3877/index.md +++ b/wiki/star-systems/GJ-3877/index.md @@ -60,3 +60,22 @@ The adjacency profile reinforces the hub's institutional position. GJ 1156 provi - **Hop Distance from Gateway:** 2 - **Adjacent Systems:** GJ 1156, GJ 280A (Parallax), GJ 887 (Lacaille), GJ 551 (Proxima), GJ 1286 (Kensho) + +## Celestial Bodies + + +| Orbit | ID | Name | Type | Inhabited | Pop | Mass | Gravity | Year (d) | Day (h) | Atmo | Biome | Hydro | Economy | Settlement | Industrial | +|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---| +| 1 | `GJ3877b` | — | planet | no | — | terrestrial | 0.26g | 18 | 440.0 | none | barren | none | — | — | — | +| 2 | `GJ3877c` | Corvel | planet | yes | 1.3B | terrestrial | 0.80g | 210 | 23.0 | breathable | temperate | rivers | service_mixed | urban_concentrated | — | +| ↳ 2.1 | `GJ3877c-1` | — | moon | no | — | dwarf | 0.04g | 10 | 240.0 | none | barren | none | — | — | — | +| 3 | `GJ3877d` | — | planet | no | — | terrestrial | 0.40g | 520 | 17.0 | thin | arid | none | — | — | — | +| 4 | `GJ3877e` | — | planet | no | — | terrestrial | 0.35g | 1000 | 19.5 | none | frozen | ice | — | — | — | +| 5 | `GJ3877-oort` | — | oort_cloud | no | — | — | — | — | — | — | — | — | — | — | — | + +### Stations & Facilities + +| ID | Name | Type | Orbits | Population | Economy | Governance | Docking | Gate | Districts | +|---|---|---|---|---|---|---|---|---|---| +| `GJ3877-oort-S1` | Horizon Station | horizon | `GJ3877-oort` | — | transit | — | major | yes | 1 | + diff --git a/wiki/star-systems/GJ-551/gttr.md b/wiki/star-systems/GJ-551/gttr.md index c6c79063b..a6c16dd8f 100644 --- a/wiki/star-systems/GJ-551/gttr.md +++ b/wiki/star-systems/GJ-551/gttr.md @@ -10,7 +10,7 @@ The research institutes — the Historical Foundation of Proxima, the Firstelder ## The Pre-Gate Period -Proxima was settled by slow ship before gate discovery. The first human colony in the Reach existed for decades in isolation, managing a flare star on a generational lag from resupply, before the horizon station activated and gate transit began. The early settlement infrastructure is, by accessible accounts, more robust than comparable Wave 1 installations elsewhere — overbuilt for a colony that expected to be isolated for a long time and planned accordingly. +Proxima was settled by the *Zheng He* before gate discovery — slow ship, long crossing, no way back. The first human colony in the Reach existed for decades in isolation, managing a flare star on a generational lag from resupply, before the horizon station activated and gate transit began. The early settlement infrastructure is, by accessible accounts, more robust than comparable Wave 1 installations elsewhere — overbuilt for a colony that expected to be isolated for a long time and planned accordingly. The Firstelder Archive holds the primary sources from this period. The Archive's index of holdings is public. The access protocols for specific document classes are not simple, and they have become less simple over the past century. The digitization backlog that makes certain record classes "currently inaccessible pending archival processing" has persisted, for certain documents, longer than the stated processing timeline can explain. diff --git a/wiki/star-systems/GJ-551/index.md b/wiki/star-systems/GJ-551/index.md index 590620a05..ad56073a5 100644 --- a/wiki/star-systems/GJ-551/index.md +++ b/wiki/star-systems/GJ-551/index.md @@ -36,7 +36,7 @@ The Guardian presence is notable for what it focuses on: not labor conditions or What Proxima does not discuss: what the slow-ship colony found before the gates opened. -The pre-gate period — the decades between the first colony ships' arrival and the discovery and activation of the horizon station in the system — is the most extensively documented gap in the Reach's official historical record. The Firstelder Archive holds the primary sources. The Archive's index of holdings is public. The access protocols for specific document classes are not simple, and they have become less simple over the past century in ways the Archive attributes to preservation requirements. The digitization backlog that makes certain record classes "currently inaccessible pending archival processing" has persisted, in the case of certain document classes, for longer than the stated processing timeline can explain. +The pre-gate period — the decades between the *Zheng He*'s arrival and the discovery and activation of the horizon station in the system — is the most extensively documented gap in the Reach's official historical record. The Firstelder Archive holds the primary sources. The Archive's index of holdings is public. The access protocols for specific document classes are not simple, and they have become less simple over the past century in ways the Archive attributes to preservation requirements. The digitization backlog that makes certain record classes "currently inaccessible pending archival processing" has persisted, in the case of certain document classes, for longer than the stated processing timeline can explain. What the slow-ship colonists found when they arrived at Proxima — what condition the system was in, what they encountered, what they reported back to Earth in the tight-beam transmissions that preceded gate contact — is partially reconstructable from sources that are accessible, partially not. The accessible sources describe a standard early colonial period: environmental surveys, settlement protocols, the administrative records of a small population managing an isolated existence. The inaccessible sources are the ones whose access classification changed. @@ -60,3 +60,20 @@ The M5Ve classification produces a dim red primary with flare activity. Pre-gate - **Hop Distance from Gateway:** 2 - **Adjacent Systems:** GJ 3877, GJ 166A, GJ 447, GJ 570A + +## Celestial Bodies + + +| Orbit | ID | Name | Type | Inhabited | Pop | Mass | Gravity | Year (d) | Day (h) | Atmo | Biome | Hydro | Economy | Settlement | Industrial | +|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---| +| 1 | `GJ551b` | Ancora | planet | yes | 400M | terrestrial | 0.90g | 11 | 268.8 | breathable | arid | rivers | service_mixed | urban_concentrated | — | +| 2 | `GJ551c` | — | planet | no | — | terrestrial | 0.35g | 30 | 720.0 | none | barren | none | — | — | — | +| 3 | `GJ551d` | — | planet | no | — | terrestrial | 0.28g | 200 | 14.0 | thin | frozen | ice | — | — | — | +| 4 | `GJ551-oort` | — | oort_cloud | no | — | — | — | — | — | — | — | — | — | — | — | + +### Stations & Facilities + +| ID | Name | Type | Orbits | Population | Economy | Governance | Docking | Gate | Districts | +|---|---|---|---|---|---|---|---|---|---| +| `GJ551-oort-S1` | Horizon Station | horizon | `GJ551-oort` | — | transit | — | major | yes | 1 | + diff --git a/wiki/star-systems/GJ-674/index.md b/wiki/star-systems/GJ-674/index.md index 46574f8e4..7d220e1c4 100644 --- a/wiki/star-systems/GJ-674/index.md +++ b/wiki/star-systems/GJ-674/index.md @@ -60,3 +60,22 @@ The money was already in place when the first settlers arrived; what looks like - **Hop Distance from Gateway:** 2 - **Adjacent Systems:** GJ 725B, GJ 380 + +## Celestial Bodies + + +| Orbit | ID | Name | Type | Inhabited | Pop | Mass | Gravity | Year (d) | Day (h) | Atmo | Biome | Hydro | Economy | Settlement | Industrial | +|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---| +| 1 | `GJ674b` | — | planet | no | — | terrestrial | 0.28g | 20 | 480.0 | none | barren | none | — | — | — | +| 2 | `GJ674c` | Provenance | planet | yes | 150M | terrestrial | 0.86g | 230 | 24.2 | breathable | temperate | ocean | extraction | dispersed_rural | — | +| ↳ 2.1 | `GJ674c-1` | — | moon | no | — | dwarf | 0.05g | 12 | 288.0 | none | barren | none | — | — | — | +| 3 | `GJ674d` | — | planet | no | — | terrestrial | 0.42g | 560 | 18.0 | thin | arid | none | — | — | — | +| 4 | `GJ674e` | — | planet | no | — | terrestrial | 0.33g | 1100 | 16.5 | none | frozen | ice | — | — | — | +| 5 | `GJ674-oort` | — | oort_cloud | no | — | — | — | — | — | — | — | — | — | — | — | + +### Stations & Facilities + +| ID | Name | Type | Orbits | Population | Economy | Governance | Docking | Gate | Districts | +|---|---|---|---|---|---|---|---|---|---| +| `GJ674-oort-S1` | Horizon Station | horizon | `GJ674-oort` | — | transit | — | standard | yes | 1 | + diff --git a/wiki/star-systems/GJ-699/gttr.md b/wiki/star-systems/GJ-699/gttr.md index bf0800883..006d0f5e1 100644 --- a/wiki/star-systems/GJ-699/gttr.md +++ b/wiki/star-systems/GJ-699/gttr.md @@ -20,6 +20,6 @@ The Veil Institute has not published analysis of the Barnard's Star aperture con ## Practical Information -Barnard's Star is two hops from Gateway. Nobody grows anything important here. The dim red primary produces a livable but unimpressive habitable zone, and most of the population lives in orbital infrastructure designed for interior climate rather than surface views. The system has the character of a place where people sleep between shifts and have quiet thoughts about aperture geometry. +Barnard's Star is two hops from Gateway. Nobody grows anything important here. The dim red primary produces a livable but unimpressive habitable zone, and 1.9 billion people have decided to live on the surface anyway — in low-rise cities that stretch outward from the original settlement zones, built for a sky that never gets quite bright enough and a sun that never gets quite warm enough. The orbital station handles roughly 100 million, but it is not a place people live so much as a place they move through: the train station at the top of the commute, not the neighborhood. People wake up on the ground, take the lift to orbit, step through the gate to Cygni B's shipyards, and come back the same way. The system has the character of a suburb that has made its peace with the commute and now has quiet thoughts about aperture geometry. Adams of the Guide rates Barnard's Star: *Residential. Surprisingly Thoughtful.* diff --git a/wiki/star-systems/GJ-699/index.md b/wiki/star-systems/GJ-699/index.md index 91f73acd7..a6b339047 100644 --- a/wiki/star-systems/GJ-699/index.md +++ b/wiki/star-systems/GJ-699/index.md @@ -24,7 +24,7 @@ The dependency is durable and structurally locked. Barnard's Star's service econ ## Faction Notes -The governance at Barnard's Star is genuinely civilian in a way that distinguishes it from most systems with significant Syndic or institutional presence. The local council is composed of elected representatives from residential zones, supplemented by a property-owners' board whose members are, in the main, the families that have owned residential blocks in the orbital station network since wave_2 settlement. This is not a Syndic structure in the Cygni B sense — there are no production-tonnage seats, no combine delegations — but it produces a governing class with familiar characteristics: durable tenure, residential capital as the source of political standing, and a structural interest in stability that approaches inertia. +The governance at Barnard's Star is genuinely civilian in a way that distinguishes it from most systems with significant Syndic or institutional presence. The local council is composed of elected representatives from residential zones, supplemented by a property-owners' board whose members are, in the main, the families that have owned surface residential blocks — whole districts of low-density sprawl built outward from the original settlement zones — since wave_2 settlement. This is not a Syndic structure in the Cygni B sense — there are no production-tonnage seats, no combine delegations — but it produces a governing class with familiar characteristics: durable tenure, residential capital as the source of political standing, and a structural interest in stability that approaches inertia. The Concord Assembly has no dedicated delegation here. Barnard's Star's Assembly representation is handled through the Cygni B delegation, an arrangement formalized two centuries ago when the practical integration of the two systems' economies made separate representation redundant in the Assembly's accounting. Local residents sometimes note that this means Cygni B's combine-dominated delegation formally speaks for a residential population whose interests frequently diverge from those of the fabrication sector. They note this and do not pursue it, because the Assembly's process for reassigning representation requires petitioning the Cygni B delegation, which reviews such petitions on a rolling basis, and the rolling basis has not produced a review outcome in forty years. @@ -50,9 +50,30 @@ The closest star to Sol that humans could reach by gate connects not toward Eart `topology: loop_member` with 2 apertures means Barnard's Star is part of a loop rather than a dead-end branch. Both apertures connect into the Cygni B cluster — one to Cygni B directly, one to GJ 139. This produces a system through which transit can flow without backtracking, which is the definition of loop_member, but the loop in question is small and the transit volume is primarily local rather than corridor freight. Being a loop_member does not make a system a transit node in any meaningful sense if the loop it belongs to does not connect to major routing corridors. Barnard's Star's position is genuinely residential and genuinely peripheral to the commercial transit network, despite technically being two hops from Gateway. -`star_type: sdM4` (subdwarf M-type) is a dim, high-proper-motion red star — one of the closest stars to Sol and historically notable for that reason, its high apparent motion across the sky documented by Earth astronomers centuries before gate transit was possible. The habitable zone is narrow and the UV environment is manageable, producing a system that is livable but not a garden world candidate. The star's age and spectral class mean the habitable body receives limited light; the orbital infrastructure that houses most of the population is accordingly designed for interior climate rather than surface agriculture. Nobody grows anything important here. +`star_type: sdM4` (subdwarf M-type) is a dim, high-proper-motion red star — one of the closest stars to Sol and historically notable for that reason, its high apparent motion across the sky documented by Earth astronomers centuries before gate transit was possible. The habitable zone is narrow and the UV environment is manageable, producing a system that is livable but not a garden world candidate. The star's age and spectral class mean the habitable body receives limited light; the 1.9 billion people who live on the surface do so in cities built for an existence under a dim red primary — low-rise sprawl, enclosed markets, streets that are never truly warm. The orbital transit station is a hub of roughly 100 million, a commuter interchange rather than a residential center: the place you pass through on your way to Cygni B's shipyards, not where you sleep. Nobody grows anything important here. ## Topology - **Hop Distance from Gateway:** 2 - **Adjacent Systems:** GJ 820B, GJ 139 + +## Celestial Bodies + + +| Orbit | ID | Name | Type | Inhabited | Pop | Mass | Gravity | Year (d) | Day (h) | Atmo | Biome | Hydro | Economy | Settlement | Industrial | +|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---| +| 1 | `GJ699b` | Verada | planet | yes | 1.9B | terrestrial | 0.75g | 180 | 21.0 | breathable | arid | rivers | service_mixed | urban_concentrated | — | +| ↳ 1.1 | `GJ699b-1` | — | moon | no | — | dwarf | 0.04g | 8 | 192.0 | none | barren | none | — | — | — | +| 2 | `GJ699c` | — | planet | no | — | terrestrial | 0.32g | 50 | 1200.0 | none | barren | none | — | — | — | +| 3 | `GJ699d` | — | planet | no | — | terrestrial | 0.40g | 400 | 15.0 | thin | frozen | ice | — | — | — | +| 4 | `GJ699e` | — | gas_giant | no | — | ice_giant | — | 1500 | 13.5 | dense | — | — | — | — | — | +| ↳ 4.1 | `GJ699e-1` | — | moon | no | — | dwarf | 0.07g | 4 | 84.0 | none | frozen | ice | — | — | — | +| 5 | `GJ699-oort` | — | oort_cloud | no | — | — | — | — | — | — | — | — | — | — | — | + +### Stations & Facilities + +| ID | Name | Type | Orbits | Population | Economy | Governance | Docking | Gate | Districts | +|---|---|---|---|---|---|---|---|---|---| +| `GJ699-oort-S1` | Horizon Station | horizon | `GJ699-oort` | — | transit | — | standard | yes | 1 | +| `GJ699b-S1` | — | transit | `GJ699b` | 100M | transit | — | major | no | 1 | + diff --git a/wiki/star-systems/GJ-702B/index.md b/wiki/star-systems/GJ-702B/index.md index bf3a7b6a8..4a926548f 100644 --- a/wiki/star-systems/GJ-702B/index.md +++ b/wiki/star-systems/GJ-702B/index.md @@ -58,3 +58,30 @@ The star profile table entry (K5 Ve) indicates a late K-type flare star with emi - **Hop Distance from Gateway:** 2 - **Adjacent Systems:** GJ 144 + +## Celestial Bodies + + +| Orbit | ID | Name | Type | Inhabited | Pop | Mass | Gravity | Year (d) | Day (h) | Atmo | Biome | Hydro | Economy | Settlement | Industrial | +|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---| +| 1 | `GJ702Bb` | — | planet | no | — | terrestrial | 0.22g | 12 | 288.0 | none | barren | none | — | — | — | +| 2 | `GJ702Bc` | — | planet | no | — | terrestrial | 0.60g | 55 | 1320.0 | toxic | barren | none | — | — | — | +| 3 | `GJ702Bd` | — | planet | no | — | terrestrial | 0.45g | 140 | 28.0 | thin | arid | none | — | — | — | +| 4 | `GJ702Be` | Galen | planet | no | — | terrestrial | 0.82g | 250 | 22.0 | breathable | arid | rivers | — | — | — | +| 5 | `GJ702Bf` | — | planet | no | — | terrestrial | 0.50g | 500 | 18.0 | thin | frozen | rivers | — | — | — | +| 6 | `GJ702Bg` | — | planet | no | — | terrestrial | 0.35g | 900 | 15.0 | none | frozen | ice | — | — | — | +| 7 | `GJ702B-belt` | — | asteroid_belt | no | — | — | — | — | — | — | — | — | — | — | — | +| 8 | `GJ702Bh` | — | gas_giant | no | — | gas_giant | — | 2400 | 11.0 | dense | — | — | — | — | — | +| ↳ 8.1 | `GJ702Bh-1` | — | moon | no | — | dwarf | 0.09g | 4 | 84.0 | none | barren | none | — | — | — | +| ↳ 8.2 | `GJ702Bh-2` | — | moon | no | — | dwarf | 0.06g | 8 | 192.0 | none | frozen | ice | — | — | — | +| ↳ 8.3 | `GJ702Bh-3` | — | moon | no | — | dwarf | 0.04g | 14 | 336.0 | none | barren | none | — | — | — | +| 9 | `GJ702B-oort` | — | oort_cloud | no | — | — | — | — | — | — | — | — | — | — | — | + +### Stations & Facilities + +| ID | Name | Type | Orbits | Population | Economy | Governance | Docking | Gate | Districts | +|---|---|---|---|---|---|---|---|---|---| +| `GJ702B-oort-S1` | Horizon Station | horizon | `GJ702B-oort` | — | transit | — | restricted | yes | 1 | +| `GJ702B-oort-S2` | Chiron | research | `GJ702B-oort` | 50K | research | — | restricted | no | 1 | +| `GJ702Bc-S1` | Site Anterior | research | `GJ702Bc` | 5K | research | — | restricted | no | 1 | + diff --git a/wiki/star-systems/GJ-820B/index.md b/wiki/star-systems/GJ-820B/index.md index e5eaccba3..35af2f96b 100644 --- a/wiki/star-systems/GJ-820B/index.md +++ b/wiki/star-systems/GJ-820B/index.md @@ -66,3 +66,30 @@ The combines that built the Reach's gate-adjacent infrastructure hold the constr - **Hop Distance from Gateway:** 2 - **Adjacent Systems:** GJ 559B, GJ 244A, GJ 887, GJ 768, GJ 699 + +## Celestial Bodies + + +| Orbit | ID | Name | Type | Inhabited | Pop | Mass | Gravity | Year (d) | Day (h) | Atmo | Biome | Hydro | Economy | Settlement | Industrial | +|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---| +| 1 | `GJ820Bb` | — | planet | no | — | terrestrial | 0.25g | 15 | 360.0 | none | barren | none | — | — | — | +| 2 | `GJ820B-belt` | — | asteroid_belt | yes | 15M | — | — | — | — | — | — | — | extraction | — | — | +| 3 | `GJ820Bc` | Ferrath | planet | yes | 200M | terrestrial | 0.95g | 180 | 20.5 | breathable | arid | rivers | manufacturing | urban_concentrated | — | +| ↳ 3.1 | `GJ820Bc-1` | — | moon | no | — | dwarf | 0.06g | 10 | 240.0 | none | barren | none | — | — | — | +| 4 | `GJ820Bd` | — | planet | no | — | terrestrial | 0.50g | 400 | 17.0 | thin | arid | none | — | — | — | +| 5 | `GJ820Be` | — | planet | no | — | terrestrial | 0.42g | 700 | 15.5 | thin | frozen | ice | — | — | — | +| 6 | `GJ820Bf` | — | planet | no | — | terrestrial | 0.35g | 1200 | 19.0 | none | frozen | none | — | — | — | +| 7 | `GJ820Bg` | — | gas_giant | no | — | gas_giant | — | 2800 | 10.5 | dense | — | — | — | — | — | +| ↳ 7.1 | `GJ820Bg-1` | — | moon | no | — | dwarf | 0.10g | 4 | 96.0 | none | barren | none | — | — | — | +| ↳ 7.2 | `GJ820Bg-2` | — | moon | no | — | dwarf | 0.07g | 9 | 216.0 | none | frozen | ice | — | — | — | +| ↳ 7.3 | `GJ820Bg-3` | — | moon | no | — | dwarf | 0.05g | 15 | 360.0 | none | barren | none | — | — | — | +| 8 | `GJ820B-oort` | — | oort_cloud | no | — | — | — | — | — | — | — | — | — | — | — | + +### Stations & Facilities + +| ID | Name | Type | Orbits | Population | Economy | Governance | Docking | Gate | Districts | +|---|---|---|---|---|---|---|---|---|---| +| `GJ820B-oort-S1` | Horizon Station | horizon | `GJ820B-oort` | — | transit | — | major | yes | 1 | +| `GJ820Bc-S1` | Kihl Works | industrial | `GJ820Bc` | 1.2B | manufacturing | — | major | no | 1 | +| `GJ820Bc-S2` | — | industrial | `GJ820Bc` | 300M | manufacturing | — | major | no | 1 | + diff --git a/wiki/star-systems/GJ-845/index.md b/wiki/star-systems/GJ-845/index.md index 6a9de34a4..1c4f97f08 100644 --- a/wiki/star-systems/GJ-845/index.md +++ b/wiki/star-systems/GJ-845/index.md @@ -55,3 +55,29 @@ Seven gates, no settlers, and a preliminary survey that has been pending follow- `sector: north_reach` at `hop_distance: 2` from Gateway is structurally consistent — north_reach systems in this hop band are the outer edge of the Commission's close operational radius — but it amplifies the anomaly of the settlement gap. This is not frontier space in the sense that wave_5 frontier systems are frontier. It is two hops from the Reach's founding station and one hop from the Commission's headquarters, in a band where every other system has been settled for at least two centuries. Cairn is not unsettled because it is remote. The system name "Cairn" does not appear in any official Commission or Assembly record as a designated name. It is an informal designation — the term for a marker built to say that someone passed this way, and why they stopped — that predates the formal survey. Where the name originated, and what the naming parties intended to mark, is not recorded in any document that has been located. + +## Celestial Bodies + + +| Orbit | ID | Name | Type | Inhabited | Pop | Mass | Gravity | Year (d) | Day (h) | Atmo | Biome | Hydro | Economy | Settlement | Industrial | +|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---| +| 1 | `GJ845b` | — | planet | no | — | terrestrial | 0.24g | 14 | 340.0 | none | barren | none | — | — | — | +| 2 | `GJ845c` | — | planet | no | — | terrestrial | 0.58g | 60 | 1440.0 | toxic | barren | none | — | — | — | +| 3 | `GJ845d` | — | planet | no | — | terrestrial | 0.88g | 200 | 23.0 | breathable | temperate | ocean | — | — | — | +| ↳ 3.1 | `GJ845d-1` | — | moon | no | — | dwarf | 0.07g | 12 | 288.0 | none | barren | none | — | — | — | +| 4 | `GJ845e` | — | planet | no | — | terrestrial | 0.72g | 380 | 20.0 | breathable | temperate | rivers | — | — | — | +| 5 | `GJ845f` | — | planet | no | — | terrestrial | 0.42g | 700 | 16.5 | thin | arid | none | — | — | — | +| 6 | `GJ845g` | — | planet | no | — | terrestrial | 0.35g | 1100 | 18.0 | none | frozen | ice | — | — | — | +| 7 | `GJ845-belt` | — | asteroid_belt | no | — | — | — | — | — | — | — | — | — | — | — | +| 8 | `GJ845h` | — | gas_giant | no | — | gas_giant | — | 3000 | 12.0 | dense | — | — | — | — | — | +| ↳ 8.1 | `GJ845h-1` | — | moon | no | — | dwarf | 0.10g | 4 | 96.0 | none | barren | none | — | — | — | +| ↳ 8.2 | `GJ845h-2` | — | moon | no | — | dwarf | 0.06g | 9 | 216.0 | none | frozen | ice | — | — | — | +| ↳ 8.3 | `GJ845h-3` | — | moon | no | — | dwarf | 0.04g | 16 | 384.0 | none | barren | none | — | — | — | +| 9 | `GJ845-oort` | — | oort_cloud | no | — | — | — | — | — | — | — | — | — | — | — | + +### Stations & Facilities + +| ID | Name | Type | Orbits | Population | Economy | Governance | Docking | Gate | Districts | +|---|---|---|---|---|---|---|---|---|---| +| `GJ845-oort-S1` | Horizon Station | horizon | `GJ845-oort` | — | transit | — | standard | yes | 1 | +