[2300AD] The GDW 2300AD Worldbuilding system: Part 3 – Final version!

2300AD Celestia output!
2300AD Celestia output!

I’ve been tinkering around a little bit more with my 2300AD worldgen script – I was actually adding the capability to generate Celestia versions of the systems that the program creates (as you can see from the screenshot above, I was successful!), but while I was at it I figured I’d make a few tweaks to some parts of the the system that I wasn’t too happy with. I think the results are much better now.

World Density: First I added a new rocky core density category so that worlds between 4000 and 7000km radius had densities between 0.75 and 1.00 Earths – previously they could go down to 0.5 Earths and I was ending up with habitable planets with unrealistically low densities for their size as a result. Worlds smaller than 4000km radius still have densities between 0.5 and 1.00 Earths, and worlds over 7000km radius have densities between 0.8 and 1.3 Earths as before.

Icy Core size: I wasn’t happy with the Icy Core size either – I was getting a lot of Titanian and Iceball worlds with the first realistic system and that didn’t make much sense to me – in the outer zone it should be easier to accrete material and you’d be much more likely to end up with gas giants instead of Titan and Pluto-like bodies. “Iceballs” don’t really make much sense to have as planets either – they’re really just the equivalent of Dwarf Planets, which would be found in a Kuiper Belt (which is usually assumed to be present but not mentioned). So now Icy Core radii range linearly from 3d6 to 8d6 times 500km, instead of starting at 1d6 – this means we end up with larger icy bodies, and a greater chance of gas giants (though there are still a small number of iceballs created, mostly below 3000km radius).

Snowballing: One limit from the original system was that ‘snowballing’ into a gas giant couldn’t happen within the Inner Zone if the MMW was greater than 2. This seemed a bit arbitrary to me, so I removed that limitation to allow it to occur at any planet where the MMW is greather than 2. As it turned out, changing it didn’t actually seem to make any significant difference to the output! Presumably this is because it’s very hard to get an inner zone planet that would be massive enough to have an MMW over 2 in those conditions.

Gas Giants: I’ve now subdivided Gas Giants into new World Types based on their sizes. Failed Cores are still under 12000 km radius. Small Gas Giants are between 12000 and 40000 km radius (this includes Uranus and Neptune). Gas Giants are larger Jovians that are larger than 40000 km radius but less than 2 Jupiter Masses (2 MJ) – this includes Jupiter and Saturn. Superjovians are over 40000 km radius but have masses between 2 and 13 MJ. Finally Brown Dwarfs are jovians that have masses over 13 MJ. This adds a bit of variety to the systems generated (and lets me use different textures in the Celestia output!)

I also changed how these gas giants are created. I still stick with the ‘snowballing’ idea, but something that always bugged me about that was the fact that the the original core density is assumed to be the density of the resulting gas giant, which can’t be right since all that extra hydrogen and helium has a much lower density than the icy/rocky core and would reduce the density of the resulting jovian. Now, if a planet snowballs into a Gas Giant then its density is re-rolled on a new density table depending on its final radius – this allows Superjovians to be 2-12 Jupiter masses, and Brown Dwarfs to be between 15 and 65 Jupiter Masses. It’s not the prettiest system since values are rolled and then rerolled, but it seems to get the right kind of results.

Garden Worlds: I realised that the lowest mass F V star has a total main sequence lifespan of 4 billion years, which means that garden worlds aren’t really likely around them. So while Pre-Garden, Post-Garden, or Frozen worlds are an option in their habitable zones, Garden worlds and Glaciers (which are just Garden worlds in a temporary ice age) are now no longer possible there.


So what do we end up with now? Actually, we get something that looks a bit more like the original results, but better! This is illustrated in the pie charts and table below that compare the results from different versions of the worldgen:

2300AD World Type Pie Charts
default2300AD realistic2300ADv2
Worldtype Distribution
Original% Fixed% Fixed v2%
Rockball 5.681 6.459 6.491
Iceball 5.034 5.103 0.055
Small Gas Giant 26.887
Gas Giant 43.455 29.71 6.674
Superjovian 13.824
Brown Dwarf 0.08
Hothouse 3.004 5.938 6.147
Glacier 0.492 0.158 0.128
Pre-Garden 0.11 0.649 0.736
Garden 0.773 0.238 0.21
Post-Garden 0.575 0.387 0.406
Desert 3.989 3.925 3.73
Failed Core 35.55 15.17 16.955
Chunk 1.337 0.275 0.268
Titanian 29.853 15.369
Frozen 2.136 2.041

You’ll note that if you add up the Small Gas Giant/Gas Giant/Superjovian/Brown Dwarf results to make a Gas Giants total for the v2 table then you get 47.465%, which is not too far off from the 43.455% Gas Giant value of the original results. Similarly, the sum of the Failed Core and Titanian worlds in the v2 table is not far from the Failed Core value in the original.

I think I’m generally happy with this now. There are still a few things that could be tweaked (e.g. more asteroid belts in the next orbits in from gas giants, superjovians, and brown dwarfs) but that would require some really big changes to the program – it’s probably better to add those in ‘post-procesing’ of individual systems.

Sample system: This K2 system has a small garden world in the habitable zone, and six jovians in the outer zone (three massive superjovians and three small gas giants closer in). The innermost tidelocked Desert world is just within the habitable zone too and is not too unpleasant an environment, but is too small to retain an breathable atmosphere.

Sample K2 V system (Celestia view)
Sample K2 V system (Celestia view)
K2 V System
K2 V lum: 0.284 mass: 0.800 rad: 0.764 (0.004 AU) orbits:11
Zones: I: < 0.480 AU H: 0.480-0.746 AU M: 0.746-1.351 AU O: > 1.351 AU
a (AU) rad (km) density (kg/m³) mass (ME) mass (MJ) BBTemp (K) MMW World Type
0.500 3000.0 5517.000 0.10444 0.00033 287.687 25.695 Desert (Tidelocked)
0.700 4500.0 4137.750 0.26437 0.00083 243.140 12.869 Garden
0.910 2500.0 3861.900 0.04231 0.00013 213.248 39.181 Desert
1.638 5000.0 1103.400 0.09671 0.00030 158.946 25.553 Titanian
2.293 13500.0 1103.400 1.90346 0.00599 134.334 2.962 Small Gas Giant
4.357 33000.0 1300.000 32.75624 0.10301 97.456 0.719 Small Gas Giant
9.150 20000.0 1400.000 7.85284 0.02469 67.251 1.081 Small Gas Giant
14.640 7000.0 1655.100 0.39804 0.00125 53.167 2.907 Failed Core
24.888 79000 5000.000 1728.46317 5.43542 40.777 0.699 Superjovian
42.309 73000 11000.000 3000.33755 9.43502 31.274 0.257 Superjovian
71.925 79000 8000.000 2765.54107 8.69667 23.986 0.229 Superjovian

3 Replies to “[2300AD] The GDW 2300AD Worldbuilding system: Part 3 – Final version!”

  1. Absolutely incredible! I just found this site and I have been working on my campaign for a year now but doing it long hand by the old rules. Any chance you are making your program available and are you considering adding satellites and rings?

  2. Neat stuff. I notice the proportion of hothouses has gone up too – do you reckon that’s to do with the temperature calculations, or because now you only get large high-density (>1) worlds?