Featured Blog

Doing Science: Celestial Body Biomes!

For the upcoming Research and Development feature on KSP, we developed a new system that allow us to map out biomes and other such attributes on planets and moons in the Kerbal solar system.

This post is a bit late since I said I was going to write it up, but I wish I could impart some sense of the insanity of work that this week has been

R&D is by far, and I mean orders of magnitude far, the largest single feature we've ever done. In sheer number of components, classes, assets and new gameplay systems, it dwarfs any other feature we've implemented on previous updates. Ones that maybe come close are PSystem and Persistence, but even those fall short. For R&D, there wasn't a single dev who didn't pitch in something. We've done new space center buildings, new UIs, new parts, both as new part modules and new assets, and new game logic of course, a lot of it. 

Amidst all that then, is the subject of this post. I think it says something about the magnitude of R&D when you understand how this relates to all of R&D and consider that this here is subject enough for an entire dev post.

Well, enough of that, here's a little backstory on why this was necessary: After the experiments system was implemented, I began to worry that while there was indeed plenty of science to be done, considering all possible situations and all the experiments available, the issue was that there wasn't enough science to do at the very early stages of a Career game. Because the thing is, at that point, you just don't have the technology to go very far, so we needed something to let you do more science near home. 

This is where Celestial Body Biomes come in. If going really far away isn't an option at the start, then there's still a lot of science to do on and around Kerbin, because Kerbin itself isn't a single destination anymore for experiments. It's got Biomes:

The Kerbin Biome Map

The Biomes system allows us to do several new interesting things. The map you see here is actually called a CelestialBodyAttribute map. These maps are something we can now add to any celestial body, and they allow us to look up a latitude and longitude on a color map, and check the color for those coordinates against a list of attributes, to see which one has the color that most closely matches the sample. It essentially lets us paint a map, and then arbitrarily define what each color on it means.

For Biomes, this means we get to define as many different areas as we want. We can say, for instance, that this tone of light green corresponds to grasslands, this other darker tone are highlands, mountains are a reddish tone, ice caps are white, shores are pink, and so on and so forth. 

For Kerbin then, we've defined 9 different biomes:

* Grasslands
* Highlands
* Mountains
* Deserts
* Badlands
* Tundra
* Ice Caps
* Shores
* Water

This means depending on where you fly, orbit over, or land at, you can run your experiments, and if the biome is relevant to that experiment (as defined in the experiment definition), then instead of the science subject generated being something like "Crew Report at Kerbin's Surface", you get something like "Crew Report landed at Kerbin's Highlands". This means if you go out and roam around, you'll discover new things and get more science out of doing the same experiments, because the conditions for the experiment are different.

Experiments work with biomes in such a way that this allowed us to also use things that aren't quite biomes as locations for new science subjects. More specifically, you can take, for instance, a surface sample of the ground at KSC and get a different result than you'd get out in the boonies of Kerbin's grasslands. 

Currently, the only planet featuring biomes is Kerbin, but on later updates we'll go on adding biome maps to other places as well, so you'll have good reasons to send out rover missions and set up comms bases in carefully selected places throughout the solar system. Ultimately, this means there is a LOT of science to be done now. 


Latest Jobs

IO Interactive

Hybrid (Malmö, Sweden)
Gameplay Director (Project Fantasy)

Arizona State University

Los Angeles, CA, USA
Assistant Professor of XR Technologies

IO Interactive

Hybrid (Copenhagen, Denmark)
Animation Tech Programmer

Purdue University

West Lafayette, IN, USA
Assistant Professor in Game Design and Development
More Jobs   


Explore the
Advertise with
Follow us

Game Developer Job Board

Game Developer


Explore the

Game Developer Job Board

Browse open positions across the game industry or recruit new talent for your studio

Advertise with

Game Developer

Engage game professionals and drive sales using an array of Game Developer media solutions to meet your objectives.

Learn More
Follow us


Follow us @gamedevdotcom to stay up-to-date with the latest news & insider information about events & more