Living world – biomes

Posted On 6 May, 2018

The two most complained about things in the previous version seem to be the lame tutorial, the difficulty of learning the controls, and the fact that it is hard to get crystals during the mid-game when the story tells you to go talk to the pirates. Addressing these complaints have been the primary focus of my most recent development work.

New intro sequence

I’ve modernized our intro sequence and made the flight tutorial just…better. This one drops you into the action faster and doesn’t ask you to sit around reading for a long time immediately after starting singleplayer. The old story elements are still there, but the irritating bits have been slimmed down a little and polished up some.

Also, as a side note, the creation of this intro sequence was the first test of a new quest framework upgrade I’ve been working on which will make it easier to write quests in the future. Since the intro sequence seems to work quite well, I’d say the new framework is a success.

My current project is using that framework to create the next stage of story content, but I wanna talk about the other project which is already in the engine, since that one is more or less working and ready to go.


This one was inspired by the lack of crystals. When trying to decide how to solve the fact that the player can’t get crystals easily in the early game, I realized that crystals should ideally tie into asteroid mining. I needed both a way for crystals to get into asteroids, as well as a reason for the player to plant crystals in asteroids. I was also reminded of an old project I always wanted to work on which was lurking at the back of my mind forever: Asteroids should be a habitat for living stuff.

Thus, with much arms being thrown into the air I said “to hell with it” and sat down to program a feature I’ve been wanting for a while. Living biomes that exist as part of the world map and the space terrain.

There are now color coded factions which can inhabit asteroids and stations on their exterior. These factions, initially, are…

  • the monsters faction
  • a faction of native (hostile) crystal fauna
  • a faction of domesticated crystal fauna

They will spread in real time across the world map, infesting asteroids and creating hazards for the player. As an example, the blue faction, which spawns in the player’s starting region, represents the space monsters sometimes found on stations. This biome will release spores which will roam space looking to colonize more asteroids, however the spores can also target the player. If they hit you, they will place a monster spawner inside your ship somewhere.

These spores can and will also target any NPC, so if you find an abandoned lifeless ship floating in space full of monsters, that’s not a bug, that’s emergent content. However the AI should already be smart enough to try and defend themselves.

The friendly domesticated crystal fauna will be unlocked in the green zone of the map which we are working on for the next update, and it will spawn wherever the player plants crystals inside a station. This biome will suppress other biomes and its spores will have beneficial and protective effects.

More importantly, when mining an asteroid with a drillbore, the contents of the asteroid interior will be affected by the status of current biome infestation. Containing ore, monsters, crystals, or maybe even other things depending on what has been growing on the outside of the asteroids.

However the most important of all reasons for adding the biomes is because it allows interactions with terrain that aren’t interior based. We designed the game with space combat in mind, and the bulk of the simulation complexity is built around the ship exterior aspect of the game, yet we felt like too much time was spent in the interior. Biomes is another step in the right direction because they can grant resources like crystals through ship piloting activities, which will reduce the need for the player to spend so much time in their station.

Also biomes make the world feel more alive.