Modeling systems

I spent some time the other afternoon jotting down thoughts on models for systems, planets, and regions. Of course, I almost immediately got sucked down into the vortex of star system generation. This was actually a keen interest of mine for many years back in the late 1970s and through the 1980s (one of my first articles for BYTE, back in 1984, was “A 3-D Starmap Program for the Macintosh”). But that’s exactly what I found paralyzing: a generated star system should be scientifically accurate, though the discoveries of the past 20 years of 1000+ exoplanets have upended many previous theories and models of star system generation.

A search online showed that there are a lot of star system/planet generation software and tools out there (though an awful lot is dated), so let’s just wave our hands now and assume that we’ll have feasible (and where possible, mathematically accurate) representation of the star systems in Frasgird. We may even need/want to have on-the-fly generation or modification of star systems (and planets) to reflect possible impacts of multiverse drift and/or major quantum jitters.

I pause now for a related point. In Sundog, we had a static set of systems, (inhabited) planets, and cities, both due to severe memory/disk constraints and because we had static maps of each city and each planet as a whole. I think the relative 3-D locations of the systems may have been static as well, though I’m less sure of that. With Frasgird, the question becomes: how much changes between individual games and how much stays the same? The gamer in me wants both the ability to play from the same starting point again and again and wants the ability to mix things up. (Civ IV helped with the former by always autosaving yours starting world for a new game, though it would overwrite that when you started your next new game.) So we probably do have to be able to do a complete game universe generation — perhaps with some guiding patterns or constraints — for each new game, but we should offer an easy way to save that generation for later use (other than forcing the user to do a ‘save game’ as his/her first act).

Anyway, so let’s assume that all the astrophysical and geological bits are being correctly generated. What else do we need to model? Let’s think about this a bit.

How many systems? Sundog had 12 star systems, with 18 inhabitable planets and 58 cities. These formed the Drahew Sector, to which the ship was artificially confined to prevent fleeing rather than fulfilling the contract. I had actually defined four sectors in all (The Main, Xell, Drahew, Sabaw), with close to 50 systems and 70 inhabited planets, for my BBS game, “Blows Against the Empire”. There is no reason in Frasgird why the player’s efforts should be limited to one sector, though as a nod to Sundog, we could have the first trader that you can hire be so constrained.

By the way, one of the things I was particularly proud of in Sundog was that we had a genuine 3-D star map. Most space games even today still use 2-D maps. On the other hand, our ‘sublight’ travel within a given star system was actually a few times faster than light; I think I originally tried to make it more ‘realistic’ (a high fraction of c, but still sublight), but it made the transits too boring.

Universe (or world) size is a common parameter in RPG/4x games, so as to set the overall scope and duration of the game. We could maintain the four sectors and use that as a setting (user selects from 1 to 4 sectors for the game size). We could likewise give each sector certain distinguishing characteristics — different risk/reward characteristics — and let the player decide which of the four sectors (any or all) to play with.

Alternatively, we could drop the ‘sector’ concept altogether and simply dial up the number of systems based on the player’s starting game preference (e.g., tiny, small, medium, large, huge).

How many worlds (and other bodies)? In Sundog, we only cared about habitable worlds, so most systems had one or maybe two planets (two systems had three). Frasgird should have full-blown star systems, with planets, moons, asteroids, and so forth, including with known variations on orbits (inclination, retrograde, etc.). Given all the unexpected things we’ve learned about exoplanets in the past 20 years (e.g., this), we can probably be pretty creative here.

Again, though, we need to balance between sense of wonder — giving the player a sense that she’s actually gaining information about a plausible, complete solar system — and keeping the level of abstraction high enough that we don’t turn into Elite: Dangerous. One key here will be to abstract the actions and information sufficiently that a scripted or AI-controlled unit (trader, miner, etc.) can choose what to do.

Now, what about uninhabited/uninhabitable systems? Sundog, of necessity, limited the systems to inhabited ones, but uninhabited ones could be of interest in the game, especially if there are systems capable of supporting sentient life that do not currently.

Sidebar #1: Because of the same arguments behind Fermi’s paradox, it is rare to find a habitable planet above a certain age that has not had at some point sentient life on it, through colonization or, less commonly, evolution. But at the same time, the impact of quantum jitters tends to act as a population check on a given sentient population on a given planet through technological collapse, abrupt climate change, abrupt evolutionary change, or (most rarely) collapsing to a reality where that race on that planet died out, destroyed itself, or never existed. This is why both times that humans fled the earth (~12,000 BC and again around 2,150 AD), virtually every habitable planet they found already had one or more sentient races living on it. And each time hyperdrive starts getting re-invented after a post-jitter collapse, it tends to set off a scramble for desirable real estate.

Sidebar #2:Why is it so hard to have galactic empires or interstellar war? Several factors.

First, the physics behind hyperdrive puts both upper and lower bounds on the size of a hyperdrive capable ship, preventing both floods of drones and as well as large military vehicles. However, there are no such limited (naturally) for ships that don’t have to go through hyperspace. This means that all things being roughly equal, a given solar system can build far more effect defensive fleets than the offensive fleets that other systems can build and send through hyperspace.

Second, if I send ships back and forth between System A (Empire homeworld) and Systems B, C, and D (subject systems), successive visits to B, C and D are likely to be to slightly (or even significantly) different multiverse versions of those systems, which makes it increasingly hard to govern them due to lack of consistency.

Third, the more sophisticated the warfighting technology, the more likely it may be rendered inoperative — simultaneously, across your entire ’empire’ — by a quantum jitter.

How much details on planets? I’ve already made some suggestions in this post. Again, we have the abstraction/sense of wonder balance, wanted to present worlds with interesting details and visualization without getting bogged down into the details on a user-interaction basis. But thinking of a planet divided up into natural regions — based on geography and politics — is probably a good starting point. Here, for example, is a map of Earth divided into seven more-or-less coherent regions, each with one billion people in it:



That’s actually a pretty good high-level dividing up based on culture, history, and government.

OK, I’m going to close off this post and use other posts to delve into more detail.


Filed Under: Game DesignModelingSettingsSystems

About the Author

Webster has been doing game design since 1980, but only has one actual published game to his credit -- Sundog: Frozen Legacy (Apple II, 1984; Atari ST, 1985). This is his second.

Leave a Reply

If you want a picture to show with your comment, go get a Gravatar.