Beyond the Chiron Gate: Februrary 2020

I’ve made some progress on Chiron Gate since the last update. I’ve completely rewritten the universe generator, streamlined the way the player picks features to explore, and added alien life and civilisations to the game.

New universe generator

Here’s a random system as generated by the current build of the game:

This isn’t really visible in screenshots, but I’ve totally changed the way the universe generator works. Previously, the generator was a big chunk of code that went through different rules to add different traits, and it was becoming difficult to work with as it got bigger. Now, every trait is an object that stores what other traits affect its chance of spawning, and the game can just run through the whole list of traits and process each one’s rules. That means I can add new traits and change the existing traits’ requirements much more easily.

Using the new universe generator, I’ve added a bunch of traits to do with alien life and civilisations, some of which you’ll see later.

One change that is visible in the screenshot is that the star now appears on the planet list! I’ve also changed how the game works out how much fuel it costs to travel: it’s now based entirely on the star’s mass. For a small star like this, it costs 1 abstract fuel unit per interplanetary journey.

An oxygen-nitrogen atmosphere indicates that there’s a good (although not certain) chance that a planet has life, so I head straight for the second moon of Mu Lambda IV.

Click to explore

Here’s what our promising moon like like when we arrive:

Selecting which planet feature you want to explore now happens right from the planet description. In the last version I showed you, you’d land on a planet by clicking the ‘Land’, go through a landing event if one happens, and then the game would present you with a list of features you could explore. You wouldn’t get back to the planet description until you’d either explored them all or ended exploration early.

I decided I wanted the planet description to be visible more of the time, so I’ve changed the interface to integrate the choice into the description itself. You now explore features by clicking on blue highlighted words in the planet description, and you see the description again in between every feature you explore. As you learn more about a planet the description changes and grows, which I think is pretty cool.

I still wanted you to have to land to explore a planet, and I didn’t want you to be landing and taking off for every feature you explore. So, the first feature you explore on a planet will cause you to land on that planet, expending fuel and possibly triggering a landing event, but after that you’re considered to be on the surface and can explore further features for free. The page header tells you whether you’re in orbit or on the surface.

New life and new civilisations

Here’s what Mu Lamdba IVb looks like after I explored all its features:

A complex ecosystem and technologically advanced natives! Life and civilisations, once you’ve discovered them, each go in their own paragraphs in the description.

I’m modelling alien technology using a tech tree system, rather than a linear list of ‘ages’ like in Seedship. On Earth we invented atomic energy and electronic computers at roughly the same time, as did the Seolfun of Mu Lambda IVb, but another alien race might have one and not the other, which is why they appear as separate highlighted traits in the description.

(It shouldn’t really be mentioning both selective breeding  and genetic engineering, since the latter requires the former…I’ll revise the planet description grammar.)

You don’t know for sure if a planet has life or a civilisation until you explore. On Mu Lambda IVb the vegetation turned out to be forests and the caves turned out to be underground cities, but I might have found that the vegetation was actually crystal formations and the caves were created by simple erosion. Even the oxygen atmosphere might have turned out to be due to radiation separating hydrogen from oxygen at the surface of the water (thank you to Kim Stanley Robinson’s novel Aurora for that idea).

A civilisation is modelled by various traits. At least one will always be something visible from orbit, which gives you something to click on in order to discover the civilisation, but others are things like their technology, government form, and personality (whether they’re especially warlike, religious, etc.). These are all revealed when you discover the civilisation.

Things to explore everywhere

One thing I’ve got the new universe generator to do is to always spawn at least one explorable feature on each planet. Some planets are more interesting than others, but you’ll never arrive and find there’s nothing to do.

The gas giant’s outermost moon turns out to be less hospitable but still pretty interesting, with bizarre alien microbes:

The innermost moon, however, has nothing of note besides an eccentric orbit:

Actually, a quirk of the game right now is that it generates a universe full of eccentric orbits, because it wants to put an explorable trait on everything and eccentric orbit is currently the only one without requirements. (Mu Lambda IVa turned out to be an interstellar rogue planet captured by the star’s gravity.) As I add new content for dead planets, that will stop happening, though (or I might bite the bullet and decide that some minor planets have nothing worth exploring on them).

Bonus: Earth

To help me test the planet description system I’ve plugged in data to represent present-day Earth. Here’s what it currently looks like when fully explored:

(Why do the Seolfun of Mu Lambda IVb have genetic engineering in their description, when we only get selective breeding? Haven’t we invented genetic engineering too? My idea is that civ technology traits represent things that the civ is extensively using, in a way that’s made a big impact on the planet. If aliens explored Earth, they’d find evidence of human selective breeding everywhere, but genetic engineering only used to make small tweaks. Genetic engineering as a civ trait would mean the civ has extensively re-engineered their planet’s ecosystem. The Seolfun are just more advanced than us in that way.)

Modelling Earth is useful not just because I can test whether the planet description system is working on a set of known traits, but also because I can come up with possible alien civ traits by thinking about what human civilisation is like and then thinking about ways it might be different.

I might eventually put Earth and our solar system in the game for the player to travel around and “explore”, although in the final game it would be the future Earth of the game’s setting, not present-day Earth.

That’s all for now. Thank you for your support and your patience through the long gap between updates–hopefully I’ll have the next dev blog ready before too long.

This entry was posted in Beyond the Chiron Gate, Dev Diary. Bookmark the permalink.