Feature: Engine: Terraforming

Discussion in 'Planetary Annihilation General Discussion' started by Causeless, September 1, 2012.

?

Do we want terraforming in PA?

  1. Yes, with dedicated building to allow for fine control

    19 vote(s)
    24.4%
  2. Yes, only indirectly (firing asteroids to planets, massive explosions)

    35 vote(s)
    44.9%
  3. No, but add real-time editing to the engine so mods can utilize it

    13 vote(s)
    16.7%
  4. No, only have static planet types

    11 vote(s)
    14.1%
  1. Causeless

    Causeless Member

    Messages:
    241
    Likes Received:
    1
    I think that terraforming planets would fit in really nicely with the whole idea of planetary warfare, and could allow for a larger variety of playstyles. As an example, instead of crashing an asteroid into a planet you could instead take the slower (but more efficient) route; flood it with water and send in a naval force to completely annihilate their defenses which weren't intended for naval units.

    This could also be very fun for uses not directly related to warfare. For example, a lava planet may have lots of very valuable resources, but it could be very expensive to produce units that could mine this out while withstanding the heat. You could cool the planet first and then mine the resources.

    Edit: Added a poll
    Last edited: September 2, 2012
  2. comradebritish

    comradebritish New Member

    Messages:
    8
    Likes Received:
    0
    Both ideas could achieved with small asteroid impacts I suppose. Ice for lava worlds, and regular rock composite to cause Tsunamis on green worlds. Although, due to the high amounts of volcanic activity, pretty sure that big nice patch you cooled down and subsequently built your base on is just going to fill with lava again eventually.
  3. lophiaspis

    lophiaspis Member

    Messages:
    215
    Likes Received:
    2
    We definitely need terraforming. I think if it's not already planned, it should be the next stretch goal.

    As for its implementation, we can learn a lot from the mistakes of the other recent game that tried to model it, Spore. Spore's terraforming sounded good but was a dud in practice. I can see three main reasons. There weren't really any game considerations around it, so it ended up as pointless busywork. It wasn't a dynamic simulation that you could play around in; you may as well have been ticking off a list to achieve one particular goal. For a space geek like me it was also a disappointment in that I couldn't recognize that much real-world science in the methods you used. I know they took some inspiration from RL, but it just felt too cartoonish and 'gamey' to me. IIRC all you did was build this or that generic factory or trigger some generic effect to bring the scale one point closer to 'habitable'. Boring!

    Environmental engineering should not be a scripted series of isolated triggers but a dynamic system wherein players can upset any variable triggering chaotic effects. This will increase the amount of fun to be had by an order of magnitude. As well, every terraforming effect in the game include should have one or more strategic dimensions, and the methods used should take as much inspiration from real-world terraforming proposals as will fit within the limits of fun gameplay.

    So terraforming should be:

    1) Deeply integrated with game strategy.
    2) As dynamic, seamless and systems-based as possible.
    3) Based as much on real-world science as possible.

    But that's not the only consideration. We can make an ultra-realistic simulation with a million degrees of detail. However that wouldn't just be a nightmare to code but a nightmare to play. So we need to balance these 3 with being

    4) As simple as possible while still being fun.

    Somewhere in the tradeoff between these factors lies the ideal PA terraforming system. Working from these parameters, I've conceptualized a system I think is both fun and workable. I'm writing up a good ol' WoT and will post it soon, watch out :ugeek:
  4. rab777

    rab777 New Member

    Messages:
    53
    Likes Received:
    0
    No no no no no.

    Terraforming should absolutely not be in the game, it starts to turn the the game into something more akin to a simulation rather than an rts.

    You would get people deliberately using KEW's on there own planets in order to get a better edge in resources or construction.

    First and foremost we are blowing stuff up.
  5. Causeless

    Causeless Member

    Messages:
    241
    Likes Received:
    1
    Yes, blowing up stuff is cool, but this doesn't really harm that.

    About people deliberately using it on their own planets; that's a little silly. No matter how much you heat up or cool down your planet, the net energy count can't increase. It'd only make sense to terraform other uninhabitable planets in order to be able to access the resources. It can't increase the amount...

    If it is implemented, it should be somewhat realistic, and it should happen in a somewhat shorter timespan. And, yes, it must be simpler. I'm imagining that when you could place a terraforming station, a small GUI should place up with the appropriate options for that type of station. For example, you could get gas pumping stations that would either take gas away or pump in a certain one (and to stop this being confusing once you clicked a gas option it would tell you exactly what it does). You could also get geothermal stations that would heat up or cool down the planets core (yes, not entirely realistic but a lot simpler).

    It'd be quite cool if you could indirectly terraform, too. Like, for example, fire an ice asteroid into a planet to cool it down, or possibly that gravity could reduce on an asteroid if resources are flown back to a main planet, and if you mined it for resources too far it'd eventually collapse into itself.
  6. jurgenvonjurgensen

    jurgenvonjurgensen Active Member

    Messages:
    573
    Likes Received:
    65
    What possible benefit will your robotic space-capable armies gain from terraforming a planet? They're not trying to make nice green fields where they can build farmhouses and white picket fences in order to keep rabbits.
  7. gammatau

    gammatau Member

    Messages:
    48
    Likes Received:
    6
    yeah. Not keen on the terraforming idea either, but crashing ice asteroids into lava planets to make resources more accessible sounds violently interesting.
  8. lophiaspis

    lophiaspis Member

    Messages:
    215
    Likes Received:
    2
    I'll tell you in a sec.
  9. linecircle

    linecircle Member

    Messages:
    83
    Likes Received:
    0
    I'd like the engine to be able to handle terraforming, but I'd prefer it if terraforming gameplay was a lower priority. Having to add terraforming units for all the different terrain types, and then balancing all that... seems like a lot of development time for not much extra awesome. With engine support, it can be done in a later patch or mod.
  10. lophiaspis

    lophiaspis Member

    Messages:
    215
    Likes Received:
    2
    You might say terraforming will make the game more complicated. I agree, but it's the good kind of complicated. It increases your strategic options, not the need for micromanagement. It forces you to think faster, but not to click faster. You may think it's a waste of dev time but I think it would add a whole new strategic dimension just like naval units and is therefore a valid stretch goal.

    Ok, so let's get down to it.


    Elements

    I was thinking about how to have worlds like Mercury, Venus, Earth, Mars and the moons Europa and Titan in the game, and have them be somewhat realistic, and different in gameplay terms, while keeping it simple. I came up with this system.

    Every non-gaseous world is made up of five elements: Metal (iron etc), rock, water, methane, and nitrogen. Each of these can exist in any proportion on any given world, and they can be solid, liquid or gaseous depending on surface temperature. Atmospheres usually consist of some mixture of nitrogen, water and methane. (A possible sixth element is CO2.) Metal is almost impossible to vaporize, and nitrogen must be at near zero-K to freeze.

    Planets extremely close to the sun would be either pure lava, or pure metal with molten metal and lava seas, and rock vapor in the atmosphere. A bit further out and you get rocky worlds with water seas, metal cores, and lava mantles and volcanoes, like Earth. Still farther from the star, on a cold world, the ground may be ice and the seas and air methane, with water volcanoes in place of lava volcanoes, like Saturn's moon Titan. Still farther and the ground may be frozen methane and the seas liquid nitrogen. Note that either of these planets may have nitrogen atmospheres, and indeed may have any element in the atmosphere with a boiling point lower than the planet's mean temperature.

    You can add elements to a world quite easily. The best way to add water to a world is to crash icy asteroids into it. IMO, land units should be able to walk across the ocean floor, whether the ocean is water or methane. However, they are SLOW, they can't fight back, they're sitting ducks for naval units, and if they go too deep they will be crushed, just as if they land on a planet with a too dense atmosphere.

    Temperature

    Temperature is the most important variable after elemental composition. Its main function is to determine the phase state of various planet elements: whether they are solid, liquid or gaseous.

    Treating temperature per unit of surface area, with dynamic interaction with all neighboring areas, would probably be too taxing on the CPU. Instead I suspect you can treat it like a spotlight. The hottest spot is where the sun is directly overhead on the equator, and it diminishes from there. As the planet turns, each side is heated in turn, with the hotspot always on the equator. The equator becomes something to fight for since it's the best place to put solar cells.

    Atmosphere and oceans help with heat retention, i.e. the heat sticks around for longer after the heatsource leaves, and the heat spreads around much better. Say, each unit of atmosphere and ocean adds one level to the planet's heat retention score. Conversely, a planet with no atmosphere and ocean that doesn't turn (that is tidelocked) will have all the heat focused on one side. One side would be a sunscorched hellhole (albeit solar power Nirvana) and the other a frozen wasteland. And you can dynamically turn an Earthlike planet into a tidelocked one by either using rocket engines or by impacting it in the right way.

    As a wet planet gets colder its ice sheets gradually spread from the poles to cover the whole surface. A wet planet with below freezing temperatures would have all its surface water locked up in ice. If you turn the tidelocked planet I mentioned above into a normal planet, the ice would melt and ocean would dynamically cover the surface, although it might boil off after a while.

    You can raise temperature by moving the planet closer to its star or thickening its atmosphere. (Each gas has a different greenhouse rating; methane should probably be highest). Orbital lasers, KEWs, and nukes introduce a more focused 'spot' of heat; freeze-rays or somesuch drain it. A sudden burst of heat (from a nuke, laser or KEW) will melt ice into water and rock into lava. A hypothetical Ice-Nine superweapon would simply raise the freezing point of water on a planet.

    I'm sure you can see the strategic dimension of all this. Your enemy builds ships? Freeze his world and they get crushed in ice. Tanks? Melt the ice and watch them all drown. And it all works within the same game mechanical system. Neat, huh?

    Atmosphere

    Atmosphere and oceans should be quasi-physical entities. By this I mean they shouldn't actually be treated continuously as physical objects, but they should be dynamic and calculated from the temperature and altitude of the land. Atmosphere should 'flow' into crevices just like oceans, and when oceans dry up or atmosphere freezes, it should change the surface map realistically considering the topology.

    Atmosphere can be measured in fractions of Earth's atmosphere, and raised and lowered in that way, but for effective purposes divided into 5-6 states. Like, Mavor Prime - 0.34 atmospheres (thin atmosphere).
    -No atmosphere: Like Mercury. Planes, helicopters, balloons and windmills don't work. No greenhouse effect. Solar plants work at max efficiency. Liquid water cannot exist, it vaporizes immediately. Thus a planet with no atmosphere cannot have oceans either.
    -Trace: Like Mars. Helicopters and planes don't work, windmills work at very low efficiency. Liquid water vaporizes quickly.
    -Thin: Windmills work at low efficiency.
    -Medium: Like Earth. Windmills and solar plants both work at medium efficiency.
    -Dense: Flying units get additional range and maybe lower power consumption. The main advantage is that others can't see ****! You can't get a clear view of the surface unless you have units on the ground or some special sensor. Lasers have lowered efficiency, including orbital lasers.
    -Superdense: Like Venus. Crushes unprotected ground units quickly. Windmills work at max efficiency, solar plants don't work.

    Atmospheres can also have special effects unrelated to density:

    -Particulates: These can be thrown up into the atmosphere by meteor impacts, nukes, or by "particulate bombs" specially designed to **** up the sky. Particulates in the atmosphere reduce insolation and temperature temporarily. They clear up after a few minutes. But that might be enough to seriously mess up someone's solar collectors.
    -Stormy: Lightning may randomly strike your tallest units and planes.
    -Corrosive: All unprotected units take constant damage.

    You can thicken atmosphere by pumping it full of gas, or by boiling surface liquids through various means. You can remove atmosphere with super heavy impacts, lowering temperature to freeze it out, or heating it above escape velocity. IOW, atmosphere disappears at excessively high and low temperatures.

    In reality wind is caused by extremely complex factors. I'm not sure how to model it in the game. Maybe wind speed could be a function of atmospheric density, temperature and planet size. That way big, Venus-like planets are goldmines for wind energy.

    I originally thought gas giants had to be handled with a totally different system from rocky planets. But now I see that they can be built with the same system. What defines gas giants is simply that they are heavy enough to retain two other planetary elements: Hydrogen and helium. If you somehow manage to strip away a gas giant's atmosphere you would find a large terrestrial planet.

    Altitude
    Elevation should play a big role in strategy. Tanks should be supreme on plains, suboptimal on hills and useless in mountains. So if your opponent is building tanks, you can counter him by raising mountains in his way - if you don't want to melt the icecaps of course. Large asteroids should not just crater their impact points but throw up mountains on the opposite side of the planet. For any given location the game would add up the liquid and gas pressure on top of any units there. If it's too high the unit takes damage. This lets you have mountains or plateaus on a Venus-like world where the atmosphere isn't that thick, just like the abyssal plain has higher pressure than the continental shelf. And all these pressure maps would flow dynamically whenever you change anything about the atmosphere.


    So that's what I have so far. It may be overcomplicated but I hope some of it can be worked in.

    Confused? Have no fear, MSPaint is here.

    [​IMG]
  11. Yourtime

    Yourtime Member

    Messages:
    316
    Likes Received:
    1
    the problem is, that reminds easily to spore. actually I think it should be possible terraforming, I mean, destroying planets, or attacking it, has to make it possible.

    So I say, whether simple or fine for destroying.
  12. thefirstfish

    thefirstfish New Member

    Messages:
    296
    Likes Received:
    0
    Wow. Some real thought went into that.

    I'd like it if this was some kind of solar system simulation, but it's not, it's about robots, robots and explosions, robots that fire explosions that make other robots explode.

    Terraforming and this level of astrophysical realism would simply distract from all those robots. Even the exploding ones.
  13. linecircle

    linecircle Member

    Messages:
    83
    Likes Received:
    0
    My sentiments exactly, but maybe needs more robots and explosions :))

    That said, the feature itself is awesome too, but in a different way. And so was lophiaspis' picture.
  14. chronoblip

    chronoblip Member

    Messages:
    182
    Likes Received:
    26
    I'd bet that implementation of this will be reflected on how exactly they actually end up building the planets.

    I am in support of being able to raise/lower terrain, and could definitely see how it could be used strategically...but it might be difficult to do more than make a wishlist until more details on how stuff like the map editor will also work.
  15. lophiaspis

    lophiaspis Member

    Messages:
    215
    Likes Received:
    2
    But terraforming is just one more way to make robots explode. All my suggestions were made with gameplay in mind. IMO it will add a whole new strategic dimension. Some examples:

    -Fusion plants must be built next to liquid water and each needs a helium mine to work. You have a gas giant base but your opponent has the only water world in the system. Invading is hopeless since he guards it with a huge navy. So you melt one of your icy moons and build a fusion farm there, then spend the energy on ice-nine to flash-freeze his income and his precious battleships.
    -Your enemy masses tanks because your homeworld is flatland with no atmosphere. He invades and drives you up against the wall. Then you drop an experimental into the planet's core that starts a global volcanic cataclysm. The planet is suddenly a mountainous world with a dense atmosphere, and you bomb his clueless tanks to bits.
  16. exterminans

    exterminans Post Master General

    Messages:
    1,881
    Likes Received:
    986
    Multilayer planets or creating new metal spots is far of the limit, such kind of mechanics are very vulnerable to exploiting and would tear the focus away from the actual battle.

    Yet terraforming is not unimportant, a KEW or just a simple nuke needs to have an impact on the planet. This includes forming a crater where the KEW or nuke impacted, rifts spreading from this point and possibly regions of the planet becoming inhabitable because lava (lava != metal source!!!) raises from the rifts and floods the region (or the whole planets if the rifts span far enough). Lava should use the same dynamics as water at that point and it is NOT consumed when building any type of structure which depends on lava or water.

    So NO direct terraforming by removing / adding lava / water with buildings, that would just go terribly wrong. But terraforming at an macroscopic scale due to the impact of super weapons is required.

    I would even go so far, to say that even artillery and units movement should leave an visible impact on the actual terrain. I mean, we gonna have planets with high resolution hight maps, so there is nothing wrong in actually painting into the height map instead of just adding a texture to the map wherby latter one has the problem of traces just disappearing after a very short time since its not the texture of the map which got repainted but just an additional graphic which needs to be rendered.
  17. lophiaspis

    lophiaspis Member

    Messages:
    215
    Likes Received:
    2
    How so? You can still balance the amount and distribution of metal on competitive maps.

    That said, there doesn't have to be five elements. For the simplest version you can pare it down to rock and water, and only let them exist in solid and liquid state, with atmosphere treated separately.

    I think that done right it would just add a new dimension to the battle. No way to tell without a prototype.

    Never suggested that...

    I agree. But what if you bombard an ice planet? Should it also release lava?

    I never said any of that either... I said an ice asteroid should add water. I also suggested, as an aside, that fusion plants should need nearby liquid water.

    You say KEWs should turn part of a planet into lava. I agree, but what about KEWing an ice world? What about all the other effects that should cause similar effects, from giant nukes to tidelocking a planet to moving it closer to its sun? Would you design separate systems for all these options, or leave them out of the game?

    We can solve many questions at once by treating temperature as one variable across all worlds, with the sun as the biggest constant heat spot, and making a KEW essentially create a huge heat spot wherever it hits.

    It would be a big disappointment for me if KEWs were a discrete state toggle for the planet, from 'useful' to 'broken'. That is the wrong way to do terraforming in general. The advantage of my idea is that it lets you handle KEWs, nukes, orbital lasers, insolation, tidelocked planets, ocean coverage, ice caps, atmosphere, solar power, and more, as one big interconnected system.

    I agree with this in principle but like everything it would have to be balanced to not overtax the CPU.
  18. exterminans

    exterminans Post Master General

    Messages:
    1,881
    Likes Received:
    986
    Temperature and complex eco-/weathersystems? Don't like that much, the climate of a planet is not going to change that fast, thats a matter of months to years. And as for impacts on cold / ice worlds: It does not depend on the temperature of the surface whether lava will appear or not, it's only the age of the planet. Just have a look at island for example, they have very much volcanic activity and a rough terrain due to that, yet they have also huge amounts of snow. Adding water to planets might also be troublesome. It's one thing, to have "water" on planets which is just constructed by a second corpse (the water body), intersecting or including the actual planet. But having a fluid system with liquid dynamics is much more complex and requires an awful amount of calculations. Besides: A ice meteor would not behave much different from a normal one. Either the planet has not atmosphere, then the meteor would just impact and scatter like any other planet, or the planet has an atmosphere, then the meteor would heat up so much, that it exploded. All that would be left from the meteor would be some steam and it would take days to weeks until it came down as water. Only given the unlikely case, that the planet is within the "magic" temperature range of 0-100°C anyway.

    As for terraforming being limited to height maps: Thats a very simple task. The planet is being represented by a height map which morphes a pure sphere, so it doesn't make much of a difference if this map gets modified dynamically. Especially not in terms of CPU power, only thing it consumes is RAM for storing the map, the more details the more RAM ist required, just like a 15 megapixel image will require more storage space then a 2 megapixel image. CPU power is independent from the resolution of this map, because the CPU has to interpolate most points on this map anyway so it doesn't make much of a difference if it has 0,1%, 1% or 5% of the points given from the actual heightmap since either way the majority of the points still needs to be calculated on the fly.

    You can't render the whole crater into the height map, of course. Especially the borders are to detailed for the resolution of the map so they still need be stored in some type of high resolution "brush" which is painted over the actual terrain for a short time (and gets lost), but the crater, the hole itself can be made permanent, shifting some ground from the crater to the sides.
    Last edited: September 8, 2012
  19. lophiaspis

    lophiaspis Member

    Messages:
    215
    Likes Received:
    2
    So your whole argument is based on realism?

    Do I even need to bring up a certain quote by a certain Awesome Guy?
  20. exterminans

    exterminans Post Master General

    Messages:
    1,881
    Likes Received:
    986
    Just extended that section of the post a bit. It's not just realism, it's also a much more complex system. Complex not only in giving it a nice looking presentation, but also on the server side. Morphing terrain between liquid and solid state requires a totally different engine then just handling the planet and the water / lava / other liquid / gas as two simple (hollow!) bodys which intersect, showing the one body in one place and the other in another.

Share This Page