---
title: Star system generation
canonical_url: https://paxabyssi.com/wiki/Star_system_generation
markdown_url: https://paxabyssi.com/wiki/Star_system_generation.md
type: wiki-page
revision_id: 584
revision_view: stable
last_updated: 2026-09-28
license: CC BY-SA 4.0
license_url: https://creativecommons.org/licenses/by-sa/4.0/
science_status:
  - sim
summary: How Pax Abyssi builds the planets, moons, rings and belts of every star system except our own, from a star's catalogue row, published occurrence rates and planetary physics, the same way every time.
categories:
  - Reference
  - Planetary systems
  - How the sim works
aliases:
  - How the sim builds a star system
  - System generation
  - Procedural system generation
  - Planet generation pipeline
  - Solar system generation
infobox:
  type: sim_process
  docs:
    - S:SOLAR_SYSTEMS/NEW_GENERATION_FLOW.md
    - S:SOLAR_SYSTEMS/README.md
    - K:galaxy/GENERATED_SYSTEMS.md
  name: Star system generation
  inputs:
    - spectral type
    - luminosity
    - mass
    - effective temperature
    - metallicity
    - age
    - companion stars
    - Galactic population
    - known exoplanets
  stages:
    - "1. The star: catalogue row, derived stellar parameters, companion stars, snow lines"
    - "2. Planets or none: one probability, P(planets)"
    - "3. The template: one of 24 planetary system archetypes"
    - "4. The blueprint: orbital slots, temperature zones, planet types, disc chemistry, temperature guards"
    - "5. Physics: a per-type engine computes each planet and may reclassify it (up to 5 attempts)"
    - 6. Moons, rings and belts
    - 7. Orbital elements and positions at the game date, written to a system file
  status: IN THE GAME
  outputs:
    - planets with type
    - subtype
    - orbit
    - mass
    - radius
    - atmosphere and temperatures
    - moons
    - rings
    - asteroid belts
    - habitability scores
  game_date: 2538-01-01
  generator: S/code:modules_colony/planet_physics_runner.py; S/code:utils/archetype_generators/; S/code:utils/planet_physics/dispatcher.py; S/code:utils/moon_physics/dispatcher.py
  determinism: The same catalogue star and seed give an identical system on every run; the committed system files regenerate byte for byte.
  output_counts:
    as_of: 2026-09-25
    moons: 7495
    planets: 8751
    systems_generated: 5160
    systems_with_planets: 2188
  real_exoplanet_hosts:
    source: NASA Exoplanet Archive, June 2025 snapshot, matched to the catalogue
    planets: 928
    systems: 653
  equilibrium_temperature: T_eq = 279 K (1 - A)^(1/4) (L / L_sun)^(1/4) (a / 1 AU)^(-1/2)
related:
  - https://paxabyssi.com/wiki/Sol.md
  - https://paxabyssi.com/wiki/Natural_satellite.md
  - https://paxabyssi.com/wiki/Asteroid_belt.md
  - https://paxabyssi.com/wiki/Orbit.md
  - https://paxabyssi.com/wiki/Planet_occurrence.md
  - https://paxabyssi.com/wiki/Planetary_system_archetypes.md
---

# Star system generation

> Source: https://paxabyssi.com/wiki/Star_system_generation
>
> Licence: [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/). Text by Pax Abyssi Wiki contributors; history at https://paxabyssi.com/wiki/Star_system_generation/history
>
> Revision 584, 28 September 2026

Every star system in Pax Abyssi other than the Solar System is generated. A deterministic pipeline takes a real star's row from the [star catalogue](https://paxabyssi.com/wiki/Star_catalogue.md) and builds its planets, moons, rings and asteroid belts from published planet occurrence rates, templates of how real systems are arranged, and physics engines for each kind of world. Feed it the same star and it builds the same system, every time. We generate systems this way because the surveys have told us, star type by star type, how often planets form and how their orbits are arranged, and a generator built on those numbers produces skies of planets a real astronomer would recognise. This page follows one system through the seven stages and says, at each, what is observation, what is model and what is our own design. The pipeline is IN THE GAME: its output is what a pilot flies through.

## 1. The star

Everything starts from the star. Its catalogue row supplies a spectral type, brightness and distance; the sim derives the rest. Effective temperature comes from spectroscopy where a measurement exists, otherwise from the star's colour through a blackbody relation [1] or from its spectral type through a standard table of dwarf stars [2]; mass, luminosity, metallicity and age follow from measured values where the catalogue has them and from standard relations where it does not. Double and multiple stars get companions whose separations and mass ratios are drawn from the measured statistics of binary stars [3] [4].

Two derived quantities shape everything downstream. The first is the star's temperature zones. A planet with no atmosphere, reflecting nothing and spreading its heat evenly, settles at the equilibrium temperature

$$
T_\mathrm{eq} = 278\ \mathrm{K}\,(1 - A)^{1/4}\left(\frac{L}{L_\odot}\right)^{1/4}\left(\frac{a}{1\ \mathrm{AU}}\right)^{-1/2},
$$

where $A$ is the planet's albedo, $L$ the star's luminosity and $a$ the orbital distance; the sim rounds the constant to 279 K. Setting $T_\mathrm{eq}$ fixed and solving for $a$ shows that any temperature boundary moves outward as $\sqrt{L}$. A star 100 times brighter than the Sun has its zones 10 times farther out. The second is the set of snow lines, the distances beyond which ices condense: the sim puts water's at $2.7\sqrt{L}$ AU, following the classic value of 2.7 AU for the young Sun [5], and places snow lines for carbon dioxide, ammonia, methane, carbon monoxide and nitrogen farther out on the same scaling.

The sim's six zones, in AU, are

| Zone        | Inner edge    | Outer edge    |
| ----------- | ------------- | ------------- |
| Torch       | star          | $0.7\sqrt{L}$ |
| Warm        | $0.7\sqrt{L}$ | $1.0\sqrt{L}$ |
| Temperate   | $1.0\sqrt{L}$ | $1.8\sqrt{L}$ |
| Cool        | $1.8\sqrt{L}$ | $3.0\sqrt{L}$ |
| Frigid      | $3.0\sqrt{L}$ | $5.0\sqrt{L}$ |
| Deep freeze | $5.0\sqrt{L}$ | beyond        |

These are generation labels. The science of where liquid water is possible is on [Habitable zone](https://paxabyssi.com/wiki/Habitable_zone.md).

## 2. Planets or none

Next the sim decides whether the star has planets at all, with a single probability built from the measured occurrence rates: a base value read off the star's spectral subtype (0.89 for a Sun-like G2 dwarf, 0.96 for M dwarfs, falling steeply for hot stars), multiplied by factors for a close companion star, low metallicity, an old population, an evolved star and extreme youth. The derivation and the survey results behind it are on [Planet occurrence](https://paxabyssi.com/wiki/Planet_occurrence.md). A star with catalogued exoplanets always has planets.

## 3. The template

A star with planets draws one of 24 [planetary system archetypes](https://paxabyssi.com/wiki/Planetary_system_archetypes.md), templates such as a compact chain of rocky planets, a Sol-like system split at the snow line, or a hot Jupiter with distant companions. The draw is weighted by spectral class, so red dwarfs mostly get compact systems and hot stars mostly get wide or debris-rich ones, then adjusted for the star's metallicity, age, companions, Galactic population and activity. A companion star removes templates whose orbits it would not allow, using the stability limits of Holman and Wiegert [6]. The templates carry what the surveys found about how real systems are arranged, including the fingerprints of migration: hot Jupiters, compact resonant chains and wide, cold giants.

## 4. The blueprint

The template lays out a list of orbital slots, each an orbital distance, by its own spacing rule: resonant period ratios for chains, a near-constant distance ratio for geometric systems, and so on. Each slot is labelled with its zone and filled by drawing a planet type from that template's table for that zone, so a cool-zone slot in a Sol-like template is likely to hold a giant and a torch-zone slot a barren rock or a lava world.

Two further steps adjust the draw. **Disc chemistry**: the star's composition stands in for the composition of the disc its planets formed from. Where carbon outnumbers oxygen (C/O above 1) carbon planets become five times likelier and silicate worlds less so; an iron-rich disc favours iron planets. **Temperature guards**: every slot's equilibrium temperature is checked against the type drawn for it. An ice world or subsurface-ocean world above 400 K becomes barren rock, or a lava world above 1,800 K; a volcanic world above 1,200 K and a barren one above 2,000 K become lava worlds.

## 5. Physics

Each planet then goes to the physics engine for its type, which computes the full property set: mass and radius, surface gravity, atmosphere and pressure, albedo, day and night temperatures, rotation, magnetic field and the rest. An engine can find that the planet it was handed cannot exist as labelled, and send it back with a new type. A greenhouse world that turns out cool enough for water to rain becomes a temperate world; a rocky world whose surface melts becomes a lava world; an ocean that freezes over becomes a [subsurface ocean world](https://paxabyssi.com/wiki/Subsurface_ocean_world.md). Up to five such passes are allowed. Throughout, the engines keep the orbital distance the template gave, so a resonant chain stays resonant. A final pass rerolls look-alikes so that two planets in one system do not wear the same surface.

## 6. Moons, rings and belts

Moons are added per planet type. Hot giants close to their stars get none, cold gas giants typically get three to eight, and rocky planets zero to three; they are spaced outward from just beyond the planet's Roche limit and kept within a third of its Hill radius (see [Natural satellite](https://paxabyssi.com/wiki/Natural_satellite.md) and [Orbit](https://paxabyssi.com/wiki/Orbit.md)). Giant planets may get rings, placed inside the Roche limit for icy grains, where a moon could not hold together.

Asteroid belts follow the giants. A belt between the star and its innermost giant is placed where that giant's resonances clear and stir the orbits, between its 4:1 and 2:1 mean-motion resonances. Kepler's third law puts those at

$$
\frac{a_{4:1}}{a_\mathrm{giant}} = \left(\tfrac{1}{4}\right)^{2/3} = 0.397, \qquad \frac{a_{2:1}}{a_\mathrm{giant}} = \left(\tfrac{1}{2}\right)^{2/3} = 0.630,
$$

which for Jupiter at 5.20 AU gives about 2.06 to 3.28 AU, the edges of the real main belt. Outer belts like the Kuiper belt, and Trojan swarms at a planet's leading and trailing Lagrange points, are added with set probabilities (see [Asteroid belt](https://paxabyssi.com/wiki/Asteroid_belt.md)).

## 7. Orbits and time

Each body receives six Keplerian orbital elements, and its position is solved for the game's reference date, 1 January 2538. The whole system is written to a file that the game reads; from then on the game moves every body along its Keplerian ellipse on every simulation tick, in double precision at true scale (see [Orbit](https://paxabyssi.com/wiki/Orbit.md)). Two-body orbits keep every generated system stable and exactly repeatable: the planet you find at a star on one machine is where it is on every other.

> **A worked example: Gliese 702.1**
>
> Gliese 702.1 (HYG 88419) is a real G1 V star a little hotter and brighter than the Sun; the sim's star data give it 5,928 K, 1.04 solar masses and 1.13 solar luminosities. Its planets are the sim's invention: the star drew the geometric-spacing template. For a star of 1.04 solar masses the spacing rule gives a ratio of $1.4 + 0.3\log_{10}(1.14) = 1.42$, varied by up to 10 per cent, and the six planets landed at 0.25, 0.34, 0.48, 0.71, 1.08 and 1.39 AU, with orbital periods of 45, 72, 118, 214, 402 and 587 days. From the inside out they are a hot, clouded arid world, two thin-aired arid worlds, a barren rock, a dry temperate world and a temperate super-Earth. With $\sqrt{L} = 1.06$, the fifth planet at 1.08 AU sits just inside the temperate zone's inner edge and has a zero-albedo equilibrium temperature of 277 K.

## Known exoplanet systems

For the 653 catalogue stars with confirmed exoplanets, 928 planets in all in the sim's cross-match with the NASA Exoplanet Archive [7], the pipeline keeps the real planets at their measured orbits. Where a planet's radius is unmeasured it is estimated from its mass with the empirical mass-radius relation of Chen and Kipping [8], and its type follows from its mass and temperature. The template is chosen to match the known planets, and the sim adds generated planets only in the gaps the surveys could not have seen. A star card in the game keeps the two apart: known planets and generated planets are reported separately.

> **In Pax Abyssi**
>
> **IN THE GAME.** The generator is the one the original simulation used, run from the game's tools before play, never while you fly: Python writes a system file per star, the game reads the files. As of 25 September 2026, 5,160 stars have system files, most of them the naked-eye stars of the in-game sky; 2,188 of those systems have planets, 8,751 planets and 7,495 moons in all, and 971 contain at least one planet scored as potentially habitable. A check regenerates every file and confirms it matches byte for byte, so a system you visit is the same on every machine and every run. Sol is the exception: its planets and 28 moons are built from measured orbits, not generated.
>
> **IN DEVELOPMENT.** The procedural Milky Way that arrives next comes from the same simulation as this generator, and extends the game from the catalogue stars to the rest of the Galaxy.

## See also

- [Planet occurrence](https://paxabyssi.com/wiki/Planet_occurrence.md)
- [Planetary system archetypes](https://paxabyssi.com/wiki/Planetary_system_archetypes.md)
- [Star catalogue](https://paxabyssi.com/wiki/Star_catalogue.md)
- [Orbit](https://paxabyssi.com/wiki/Orbit.md)
- [Natural satellite](https://paxabyssi.com/wiki/Natural_satellite.md)
- [Asteroid belt](https://paxabyssi.com/wiki/Asteroid_belt.md)
- [Habitable zone](https://paxabyssi.com/wiki/Habitable_zone.md)
- [Planet classification](https://paxabyssi.com/wiki/Planet_classification.md)
- [Science in Pax Abyssi](https://paxabyssi.com/wiki/Pax_Abyssi_Wiki:Science_in_Pax_Abyssi.md)
- [Sol](https://paxabyssi.com/wiki/Sol.md)

## References

1. Ballesteros, F. J. (2012). New insights into black bodies. EPL (Europhysics Letters) 97, 34008. <https://doi.org/10.1209/0295-5075/97/34008>
2. Pecaut, M. J. and Mamajek, E. E. (2013). Intrinsic Colors, Temperatures, and Bolometric Corrections of Pre-main-sequence Stars. The Astrophysical Journal Supplement Series 208, 9. <https://doi.org/10.1088/0067-0049/208/1/9>
3. Offner, S. S. R. et al. (2023). The Origin and Evolution of Multiple Star Systems. Protostars and Planets VII. <https://arxiv.org/abs/2203.10066>
4. Moe, M. and Di Stefano, R. (2017). Mind Your Ps and Qs: The Interrelation between Period (P) and Mass-ratio (Q) Distributions of Binary Stars. The Astrophysical Journal Supplement Series 230, 15. <https://doi.org/10.3847/1538-4365/aa6fb6>
5. Hayashi, C. (1981). Structure of the Solar Nebula, Growth and Decay of Magnetic Fields and Effects of Magnetic and Turbulent Viscosities on the Nebula. Progress of Theoretical Physics Supplement 70, 35-53. <https://doi.org/10.1143/PTPS.70.35>
6. Holman, M. J. and Wiegert, P. A. (1999). Long-Term Stability of Planets in Binary Systems. The Astronomical Journal 117, 621-628. <https://doi.org/10.1086/300695>
7. NASA Exoplanet Archive. NASA Exoplanet Archive. NASA Exoplanet Science Institute, Caltech/IPAC. <https://exoplanetarchive.ipac.caltech.edu/>
8. Chen, J. and Kipping, D. (2017). Probabilistic Forecasting of the Masses and Radii of Other Worlds. The Astrophysical Journal 834, 17. <https://doi.org/10.3847/1538-4357/834/1/17>

## Infobox (sim process)

| Field | Value |
| --- | --- |
| Docs | S:SOLAR_SYSTEMS/NEW_GENERATION_FLOW.md, S:SOLAR_SYSTEMS/README.md, K:galaxy/GENERATED_SYSTEMS.md |
| Name | Star system generation |
| Inputs | spectral type, luminosity, mass, effective temperature, metallicity, age, companion stars, Galactic population, known exoplanets |
| Stages | 1. The star: catalogue row, derived stellar parameters, companion stars, snow lines, 2. Planets or none: one probability, P(planets), 3. The template: one of 24 planetary system archetypes, 4. The blueprint: orbital slots, temperature zones, planet types, disc chemistry, temperature guards, 5. Physics: a per-type engine computes each planet and may reclassify it (up to 5 attempts), 6. Moons, rings and belts, 7. Orbital elements and positions at the game date, written to a system file |
| Status | IN THE GAME |
| Outputs | planets with type, subtype, orbit, mass, radius, atmosphere and temperatures, moons, rings, asteroid belts, habitability scores |
| Game date | 2538-01-01 |
| Generator | S/code:modules_colony/planet_physics_runner.py; S/code:utils/archetype_generators/; S/code:utils/planet_physics/dispatcher.py; S/code:utils/moon_physics/dispatcher.py |
| Determinism | The same catalogue star and seed give an identical system on every run; the committed system files regenerate byte for byte. |
| Equilibrium temperature | T_eq = 279 K (1 - A)^(1/4) (L / L_sun)^(1/4) (a / 1 AU)^(-1/2) |

## Related pages

- [Sol](https://paxabyssi.com/wiki/Sol.md): The Sun and its planetary system, the one star system in Pax Abyssi built entirely from measurement, with nine planets including Pluto and 28 moons on orbits fitted to JPL ephemerides.
- [Natural satellite](https://paxabyssi.com/wiki/Natural_satellite.md): A moon, a natural body orbiting a planet, dwarf planet or asteroid. The Solar System's planets have more than 430 known moons, from kilometre-sized captured fragments to Ganymede, which is larger than Mercury.
- [Asteroid belt](https://paxabyssi.com/wiki/Asteroid_belt.md): A ring of rocky and icy bodies left over from planet formation, shaped by the resonances of nearby giant planets. The Sun's Main Belt, between Mars and Jupiter, holds about 3 percent of the Moon's mass spread through a volume so large that its asteroids are millions of kilometres apart.
- [Orbit](https://paxabyssi.com/wiki/Orbit.md): The path one body follows around another under gravity. For two bodies alone it is an ellipse, fixed by Kepler's three laws and described by six orbital elements.
- [Planet occurrence](https://paxabyssi.com/wiki/Planet_occurrence.md): How common planets are, measured by counting the planets that surveys detect and correcting for the many they cannot. Most stars have at least one.
- [Planetary system archetypes](https://paxabyssi.com/wiki/Planetary_system_archetypes.md): The recurring ways a star's planets are arranged, from tightly packed chains of small worlds to lone giants far out, and the 24 templates Pax Abyssi builds its star systems from.

Categories: [Reference](https://paxabyssi.com/wiki/Category:Reference.md), [Planetary systems](https://paxabyssi.com/wiki/Category:Planetary_systems.md), [How the sim works](https://paxabyssi.com/wiki/Category:How_the_sim_works.md)
