orbit/data/planets.json

44 lines
2.1 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"_comment": "Planet visuals + home-planet rules + the solar system's layout. texture is a spritesheet of frameWidth×frameHeight frames (frame 0 = top-left); frames maps a planet kind to the sheet frames it may be drawn as — the generator picks one per planet (seed-deterministic). homePlanet is the player's world — always present at the origin of the system they start in. scale = world pixels per sheet pixel (1.0 = 1:1, so a Terran world is 1024 px across on screen). A planet is a solid disc: the ship may approach to shipClearance px (edge-to-edge) from its rim but can never cross it. spawnDistanceFromEdge = how far (edge-to-edge) the ship starts from the home world's rim. classScale = size multiplier per planet class (1.0 = 1024 px across); classTint = optional canvas tint per class (multiplicative — the terran art stands in for every kind until real art lands). solarSystem = the top-down layout: the system's other objects (planets + free-space stations) sit on one or two orbits (rings) around the origin — center-to-center at least minSpacing px from every other object (incl. the origin's home world), and, whenever the system holds more than one object, every object within maxNeighbor px of at least one other object. minSpacing/maxNeighbor are center-to-center px (the same unit as the 1024 px world disc).",
"texture": "assets/images/planets.png",
"frameWidth": 1024,
"frameHeight": 1024,
"scale": 1.0,
"frames": {
"terran": [0, 1, 2],
"rocky": [6, 7, 8],
"gas": [3, 4, 5],
"ice": [0, 1, 2],
"lava": [0, 1, 2]
},
"classScale": {
"rocky": 1.0,
"gas": 1.45,
"ice": 0.85,
"lava": 0.95
},
"classTint": {
"rocky": "#e8d9b8",
"gas": "#ffb066",
"ice": "#cfeaff",
"lava": "#ff8a5c"
},
"typeLabels": {
"terran": "Home World",
"rocky": "Rocky World",
"gas": "Gas Giant",
"ice": "Ice World",
"lava": "Lava World"
},
"homePlanet": "terran",
"homeName": "Terra",
"homeTypeLabel": "Home World",
"shipClearance": 50,
"spawnDistanceFromEdge": 150,
"solarSystem": {
"enabled": true,
"minSpacing": 6144,
"maxNeighbor": 10240
}
}