Ideas on Planet Generation

    Joined
    Dec 21, 2013
    Messages
    10
    Reaction score
    7
    Hello everyone! I’ve been playing on and off for about a year and lurking on the forums, but I’ve never contributed before. Anyway, I’ve been thinking about planets and the (seemingly) frequent criticism that they are not interesting or useful enough to be worth settling on/visiting. I like building on planets a lot, but I agree that they are still a definite work in progress. While I don’t have any suggestions as to how to enhance their usability, I’ve been kicking around an idea to make them more diverse and thus more interesting, to encourage exploration. Specifically, I’ve been batting around ideas to increase the amount of default plants without having to substantially increase the amount of coding work required.

    I think Schema was on to something in how he changed the way weapons work at the beginning of this year. By making weapon effect a result of the combination of two different elements and an (optional) third, rather than just a 1 block:1 effect mapping like previously, he enhanced the number of weapons (practically speaking) from about 10 to 75 without having to code too many more blocks (and even being able to remove a couple). What if we did the same thing with planets? Rather than combining two different weapons computers, planet type could be based upon the combination of three different parameters: base underground material, habitability, and terrain generation style (topography).

    Each parameter would have different options that would drastically change the planet. Base Underground Material and Habitability would work together to determine the block composition of the planet (please see the attached table for how I envision this, any new blocks or features that do not have an easily reusable analog I know of are in red).

    In addition, the terrain generation style could work to determine the planet's topography. I can envision five generation styles, three of which are the ones already being used by the game:

    Terrestrial – Mesas: The algorithm used to create the desert, green, and red planets now.

    Chasms and Pillars: The algorithm used to create the ice planets now.

    Tentacles – The algorithm used to create the purple planets now.

    And the two others are:

    Terrestrial – Mountains: This would be similar to the Terrestrial – Mesas, but rather than having large mountains with fairly wide, flat tops, the mountains would be single-width ridge lines and would look more like real-world “traditional” mountains.

    Craters: Wouldn’t have much in the way of mountains, but lots of deep craters like the moon.

    These individual changes alone would result in the number of distinct planet types increasing from five to 75. This is not counting variations due to climate variables (discussed below). If Schema doesn’t go that route and we keep ice and desert planets as separate classes, the number would in theory be 125, although many of the resulting classes would be indistinguishable from the green-planet’s classes (as both use rock as their base underground block), so it would, practically speaking, be less than that.

    Something like this would likely be cheaper time-wise to implement as well. Rather than having to code many new planet classes individually, the generation algorithms would simply need to be refactored/altered to such a degree that parameters like basic ground cover are passed in dynamically rather than hard-coded.

    Other variables that could be used to make a planet unique (but would add more work) could be:

    Atmosphere – The radius of the skybox could be used to simulate the presence/lack of an atmosphere. It could range from totally under all of the planet’s plates (to simulate no atmosphere) to where it is now (as a full atmosphere).

    Sea Level – the height from the planet core under which any open-air blocks will be converted to another block (like grass->sand or soil) and the empty space between that block and sea-level covered in water/lava. This could be used to create aquatic or lava planets and add further distinguishment.

    Percent Water – Another way to create aquatic planets, this would control the amount of a planet’s land that is allowed to rise above sea level

    Aridness – If the ice and desert planets could be combined with the green one, and other ice and desert-like blocks used for the other two planets, this number would control the amount of desert/polar ice cap/temperate terrain on a planet. It could range from all cold (ice planet) to all arid (desert planet) and could even be varied based upon distance from the sun. I have a few ideas on how the terrain generation for multiple biomes in one planet could work.

    Mineral Richness – The proportion of ores to plain rock in the planet, changing the planet’s strategic value. I’ve included a proposal to make the different habitability levels have different values, but still keep some randomness, in the chart.

    Cave Probability – Self-Explanatory. A high number could be used to create a planet with floating islands.

    Sky color.


    Also, one last idea. I think it’d be cool if, in addition to the normal procedural generation we have now, there were an option to simulate a galaxy and generate it up-front before playing. This would decrease the CPU hit from generating a new planet and could also be used to create a procedurally-generated lore for the new galaxy (like in Dwarf Fortress). It would add a lot to the atmosphere and uniqueness of each game if it could spawn ships, stations, stargate networks, and even computer-operated factions, each with a story and history behind them.
     

    Attachments

    Criss

    Social Media Director
    Joined
    Jun 25, 2013
    Messages
    2,187
    Reaction score
    1,772
    • Master Builder Bronze
    • Video Genius
    • Competition Winner - Stations
    So this is well thought out. I know the devs want players to actually have reasons for owning planet bases. Chances are this will likely involve faction stuff. On top of that I also heard that salvaging planets from a ship is not as welcome either and we might have to go to a planet to mine it out. I'm hoping for planet modules that can be placed down that do things like extract certain resources. Resources that will be needed by factions for one reason or another. On top of that I seriously want scanners. For like...everything. Scan the planet, scan the asteroids, scan ships and cargo. All of that would be incredibly cool I think.

    And with the whole faction resource thing. Imagine you have gas giants with resources you want. you build a station nearby that collects the resources and little drones can carry it back and fourth.

    I digress a little. But this is the awesome type of planet features I want. It starts with ideas like yours.
     

    jayman38

    Precentor-Primus, pro-tempore
    Joined
    Jul 13, 2014
    Messages
    2,518
    Reaction score
    787
    • Purchased!
    • Thinking Positive
    • Legacy Citizen 4
    I think the devs need to see this. I agree with the OP that this would be a superior way to introduce a ton of variety to planets.
     

    Valiant70

    That crazy cyborg
    Joined
    Oct 27, 2013
    Messages
    2,189
    Reaction score
    1,167
    • Thinking Positive
    • Purchased!
    • Legacy Citizen 4
    I like this idea a lot. It would be a whole lot more interesting, especially if there are new attributes added that none of the current planets have.

    On top of that I seriously want scanners. For like...everything. Scan the planet, scan the asteroids, scan ships and cargo.
    Yep. I'd like to be able to scan a planet and get stats like approximate mass, radius, ore types and concentration, climate, etc.