162 lines
6.2 KiB
JSON
162 lines
6.2 KiB
JSON
{
|
|
"_comment": "System archetypes. Each type is themable (theme) and has attributes that steer the SystemGenerator: star classes, binary chance, planet count spread, planet class weights, moon/belt chances, habitability, hazard. distribution.weight sets how common the type is; distribution.radiusBand ([inner, outer] as a fraction of galaxy radius) is the first proximity rule — richer distribution rules slot into galaxy.json `distribution.rules` later.",
|
|
"types": {
|
|
"main": {
|
|
"label": "Main Sequence",
|
|
"description": "An ordinary star and its worlds — the galaxy's working majority.",
|
|
"theme": { "color": "#9fb4e8" },
|
|
"distribution": { "weight": 34, "radiusBand": null },
|
|
"attributes": {
|
|
"star": {
|
|
"classes": { "G": 30, "K": 40, "M": 30 },
|
|
"mass": { "G": [0.8, 1.4], "K": [0.5, 0.8], "M": [0.1, 0.5] }
|
|
},
|
|
"binaryChance": 0.05,
|
|
"planetCount": { "min": 4, "max": 9, "mean": 6.5 },
|
|
"planetClasses": { "rocky": 45, "gas": 25, "ice": 18, "lava": 12 },
|
|
"moonChance": 0.3,
|
|
"beltChance": 0.35,
|
|
"habitability": 0.1,
|
|
"hazard": 0.1,
|
|
"settlements": {
|
|
"colony": { "chance": 0.45 },
|
|
"miningStation": { "chance": 0.3, "needs": ["rocky", "lava", "ice"] },
|
|
"cloudBase": { "chance": 0.35, "needs": ["gas"] },
|
|
"deepSpaceStation": { "chance": 0.25 },
|
|
"waypoint": { "chance": 0.35 }
|
|
}
|
|
}
|
|
},
|
|
"redDwarf": {
|
|
"label": "Red Dwarf",
|
|
"description": "A small, long-lived M star with close-in, moon-rich worlds.",
|
|
"theme": { "color": "#e8927c" },
|
|
"distribution": { "weight": 26, "radiusBand": [0.0, 0.6] },
|
|
"attributes": {
|
|
"star": {
|
|
"classes": { "M": 85, "K": 15 },
|
|
"mass": { "M": [0.08, 0.35], "K": [0.5, 0.8] }
|
|
},
|
|
"binaryChance": 0.12,
|
|
"planetCount": { "min": 3, "max": 7, "mean": 5 },
|
|
"planetClasses": { "rocky": 50, "gas": 15, "ice": 28, "lava": 7 },
|
|
"moonChance": 0.45,
|
|
"beltChance": 0.3,
|
|
"habitability": 0.22,
|
|
"hazard": 0.12,
|
|
"settlements": {
|
|
"colony": { "chance": 0.6 },
|
|
"miningStation": { "chance": 0.35, "needs": ["rocky", "ice"] },
|
|
"cloudBase": { "chance": 0.1, "needs": ["gas"] },
|
|
"deepSpaceStation": { "chance": 0.2 },
|
|
"waypoint": { "chance": 0.3 }
|
|
}
|
|
}
|
|
},
|
|
"binary": {
|
|
"label": "Binary",
|
|
"description": "Two stars, one system. Tangled orbits, wide spacings, rich debris.",
|
|
"theme": { "color": "#c9a7ff" },
|
|
"distribution": { "weight": 10, "radiusBand": [0.15, 0.95] },
|
|
"attributes": {
|
|
"star": {
|
|
"classes": { "F": 25, "G": 40, "K": 35 },
|
|
"mass": { "F": [1.0, 1.6], "G": [0.8, 1.4], "K": [0.5, 0.8] }
|
|
},
|
|
"binaryChance": 1.0,
|
|
"planetCount": { "min": 2, "max": 6, "mean": 4 },
|
|
"planetClasses": { "rocky": 30, "gas": 40, "ice": 20, "lava": 10 },
|
|
"moonChance": 0.5,
|
|
"beltChance": 0.6,
|
|
"habitability": 0.06,
|
|
"hazard": 0.18,
|
|
"settlements": {
|
|
"colony": { "chance": 0.1 },
|
|
"miningStation": { "chance": 0.3, "needs": ["rocky", "gas"] },
|
|
"cloudBase": { "chance": 0.5, "needs": ["gas"] },
|
|
"deepSpaceStation": { "chance": 0.3 },
|
|
"waypoint": { "chance": 0.3 }
|
|
}
|
|
}
|
|
},
|
|
"habitable": {
|
|
"label": "Habitable",
|
|
"description": "Temperate, well-lit, and quietly crowded with life. Rare.",
|
|
"theme": { "color": "#7ce8a4" },
|
|
"distribution": { "weight": 10, "radiusBand": [0.2, 0.75] },
|
|
"attributes": {
|
|
"star": {
|
|
"classes": { "G": 70, "K": 30 },
|
|
"mass": { "G": [0.85, 1.3], "K": [0.6, 0.85] }
|
|
},
|
|
"binaryChance": 0.03,
|
|
"planetCount": { "min": 3, "max": 8, "mean": 5.5 },
|
|
"planetClasses": { "rocky": 62, "gas": 18, "ice": 14, "lava": 6 },
|
|
"moonChance": 0.35,
|
|
"beltChance": 0.25,
|
|
"habitability": 0.5,
|
|
"hazard": 0.05,
|
|
"settlements": {
|
|
"colony": { "chance": 0.85 },
|
|
"miningStation": { "chance": 0.2, "needs": ["rocky", "ice"] },
|
|
"cloudBase": { "chance": 0.2, "needs": ["gas"] },
|
|
"deepSpaceStation": { "chance": 0.25 },
|
|
"waypoint": { "chance": 0.4 }
|
|
}
|
|
}
|
|
},
|
|
"nebula": {
|
|
"label": "Nebula",
|
|
"description": "Young, bright, and still messy — debris where planets should be.",
|
|
"theme": { "color": "#5fd4d0" },
|
|
"distribution": { "weight": 12, "radiusBand": [0.4, 1.0] },
|
|
"attributes": {
|
|
"star": {
|
|
"classes": { "A": 20, "F": 30, "G": 50 },
|
|
"mass": { "A": [1.4, 2.1], "F": [1.0, 1.6], "G": [0.8, 1.4] }
|
|
},
|
|
"binaryChance": 0.1,
|
|
"planetCount": { "min": 1, "max": 5, "mean": 3 },
|
|
"planetClasses": { "rocky": 20, "gas": 25, "ice": 15, "lava": 40 },
|
|
"moonChance": 0.2,
|
|
"beltChance": 0.8,
|
|
"habitability": 0.02,
|
|
"hazard": 0.35,
|
|
"settlements": {
|
|
"colony": { "chance": 0.05 },
|
|
"miningStation": { "chance": 0.5, "needs": ["lava", "rocky"] },
|
|
"cloudBase": { "chance": 0.3, "needs": ["gas"] },
|
|
"deepSpaceStation": { "chance": 0.2 },
|
|
"waypoint": { "chance": 0.45 }
|
|
}
|
|
}
|
|
},
|
|
"void": {
|
|
"label": "Void",
|
|
"description": "Old, cold, and mostly empty. The rim's quiet dead ends.",
|
|
"theme": { "color": "#7d88a8" },
|
|
"distribution": { "weight": 8, "radiusBand": [0.7, 1.0] },
|
|
"attributes": {
|
|
"star": {
|
|
"classes": { "M": 90, "K": 10 },
|
|
"mass": { "M": [0.08, 0.3], "K": [0.4, 0.6] }
|
|
},
|
|
"binaryChance": 0.08,
|
|
"planetCount": { "min": 0, "max": 4, "mean": 1.5 },
|
|
"planetClasses": { "rocky": 20, "gas": 10, "ice": 55, "lava": 15 },
|
|
"moonChance": 0.1,
|
|
"beltChance": 0.2,
|
|
"habitability": 0.02,
|
|
"hazard": 0.5,
|
|
"settlements": {
|
|
"colony": { "chance": 0.02 },
|
|
"miningStation": { "chance": 0.3, "needs": ["ice"] },
|
|
"cloudBase": { "chance": 0.05, "needs": ["gas"] },
|
|
"deepSpaceStation": { "chance": 0.15 },
|
|
"waypoint": { "chance": 0.25 }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|