Fractal Softworks Forum

Please login or register.

Login with username, password and session length
Pages: [1] 2 3

Author Topic: [0.9.1a] Langly's Terraforming  (Read 18166 times)

Langly2

  • Ensign
  • *
  • Posts: 13
    • View Profile
[0.9.1a] Langly's Terraforming
« on: September 16, 2019, 10:40:58 AM »

Langly's Terraforming 0.0.3

This is a BETA, please read carefully.
A small mod that adds a Terraforming Structure.

When you build and every time you upgrade the Structure a Hazard will be removed from the Colony.
When no Hazards are present anymore it will first add Habitable and then Mild Climate.

In contrast to Mayan's mod I don't plan to spread it across multiple buildings, I want to keep it simple with just one building and no further constraints or requirements.
Check his take on out if you want a more involved approach to terraforming :)

If you want to make a quick check on the building, you can change the build time and costs in the industry.csv.

Some Screens on the progress to a Terran Colony: https://imgur.com/a/5c5WLuI

What I need from you guys:
Test it, use it to Terraform Planet and continue playing.
I just threw this together last weekend and it was more involved than expected so game crashing bugs might be still in there.

I also need a mod to delete the wrong forum user named Langly I created with a typo in the email and give me my name... :/

Usage:
You can build the Terraforming Structure on any planet that has any hazard or lacks habitable or Mild Climate.
Once its build it will remove one Hazard you can then keep upgrading it until all hazards are removed.
Then keep upgrading it and it will add Hibatable and then Mild Climate.
While its upgrading it will also change the Planet type. See Configuration if you want to finetune what path your planets take.

Install:
Just unpack the archive into your mod folder and activate the mod in the launcher.

Uninstall:
You could Shut Down all the Terraform structures and remove the Mod.
BUT changes will persist, if I added a game crashing bug chances are very high that they will persist in the save.

Configuration
If you want to change what Conditions can be removed or added you can do so in the conditions.csv yoou find in the Mod directory.
You have the following columns:
removeableCondition: the name of a condition that the Terraforn Project can remove (this OR addableCondition is required)
improvePlanetOnRemove: wether or not the Planet Type improves when this condition is removed or added (required, true or false)
addConditionOnRemove: if the condition is removed add this condtion to the planet. You can, for example, add cold when you remove very_cold to make the terraforming more gradual (optional)
addableCondition: when there is no condition to remove anymore the Terraforming project adds addableConditions. Useful for conditions like habitable. (if you use it the only other filled column should be improvePlanetOnRemove)

The columns for thee Solar Shades and Mirrors are currently without use. That feature will come back with the next version though.

If you want to configure what Types the Planet Terraform to you can edit the planetProgression.csv
There are only two columns here, planetType and newPlanetType.
When a planet is terraform the mod will take all entrys where the planetType matches the type the planet has currently in game, picks one entry on random and changes the planet to the newPlanetType.
Duplicate rows are allowed so if you put this into the file:

gas_giant,barren
gas_giant,barren
gas_giant,barren_venuslike

a gas giant has a 2 in 3 chance to change into a barren world and a 1 in 3 chance to change into a venuslike one.



Known Bugs:

Planned Features:
1. Return of the shades and mirrors.
2. Increase the Maintenance of the Structure with every upgrade  (I will make it not removable by then too ;) )

[Fixed with 0.0.3]
You cant build the project on non planets anymore. That should prevent class cast exceptions in the future.
Jumppoints will not lose gas giants anymore when you terraform then. You will spawn in their center and not in the orbit though.
You can configure the removable conditions and possible terraform paths now


EDIT: Added some Pics: https://imgur.com/a/5c5WLuI
« Last Edit: December 06, 2019, 03:00:22 AM by Langly2 »
Logged

Sozzer

  • Ensign
  • *
  • Posts: 44
    • View Profile
Re: [0.9.1a] Langly's Terraforming
« Reply #1 on: September 16, 2019, 05:43:43 PM »

Known Bugs:
Some graphics like the magnetic aura will not follow the planet when its type changed. The effect will stay on the planet though.

Planned Features:
1. Find a better pic.
2. A sensible progression of the planet type depending what type it is and what hazard was removed.
3. Spawning of Solar Shades/Mirrors when removing hot/cold
4. Increase the Maintenance of the Structure with every upgrade  (I will make it not removable by then too ;) )

Maybe include the source in the mod? That way others might be able to help poke around and see what's causing that bug.

As for the planned features;

1. I'd be happy to help with this if you feel so inclined (whether you mean for the forum page or for the in-game one).
2. This might not be feasible for a single structure, but if you look at how the techmining is done, you may be able to have distinct ones that only apply to (and can only be constructed on), say, "hot" type planets or "cold" type planets based on the conditions. Might even want to do special "terraformed" types that it reaches, rather than going to full Terran.
3. This one's a bit complicated, but take a look at the code used for stations. That's all the advice I can give there, sadly.
4. Not much to say here.
Logged

Sapfearon

  • Ensign
  • *
  • Posts: 16
    • View Profile
Re: [0.9.1a] Langly's Terraforming
« Reply #2 on: September 16, 2019, 05:47:20 PM »

Soooo, wait a second. This mod can remove pretty much all hazards unlike Maya's mod, right? And it even changes planet type? Amazing job! Sadly i'm already playing with TF mod, so i'll wait until next game to test. Solar shades is a feature that i love from Maya's mod, so i would like to see it here.
And about that building...Maybe make it a drop from remnant nexus? Or a custom quest like red planet? I feel like this should be a reward, not something you can build from the start. Otherwise players will be rushing  "penelope star" colonizing like crazy. Like i already doing...

Sorry for bad english :)
Logged

Langly2

  • Ensign
  • *
  • Posts: 13
    • View Profile
Re: [0.9.1a] Langly's Terraforming
« Reply #3 on: September 16, 2019, 09:20:28 PM »


Maybe include the source in the mod? That way others might be able to help poke around and see what's causing that bug.

As for the planned features;

1. I'd be happy to help with this if you feel so inclined (whether you mean for the forum page or for the in-game one).
2. This might not be feasible for a single structure, but if you look at how the techmining is done, you may be able to have distinct ones that only apply to (and can only be constructed on), say, "hot" type planets or "cold" type planets based on the conditions. Might even want to do special "terraformed" types that it reaches, rather than going to full Terran.
3. This one's a bit complicated, but take a look at the code used for stations. That's all the advice I can give there, sadly.
4. Not much to say here.

1. I meant for the Terraforming Structure, the one I have is just one I grabbed from the net after a quick image source. Its not all that fitting and it proportions dont fit anymore.
2. It is possible, the mod already changes the Planet Type all the way to Terran when its done. You can keep upgrading the structure until you reach Terran.
3. I have hope that its not worse than changing the type of a planet. Under the hood I already completly erase the old planet and put a new one in place since the field I wanted to change was private and the java security manager was active...

I have no bug that I know of right now but the Terraforming changes the gamestate and I want to see if that causes problems in the long run.
I had some unexpected ones during dev, I think I got every bug I ran across but it just needs more playtime to be sure.

During development I had to go trough the classes they didn't provide the source for. Meaning I had to de compile them to better understand how everything works.
I also did duplicate some code form somewhere so I have to check from where that code came. I have no problem releasing my sources but not when they contain code that the maker of the game did not release themselves. I don't think it does but I have to check.
You honestly barely register it when you're working with code that is compiled in my IDE. If I don't look at that little symbol I don't know and I'm usually focused on the code itself when I traverse the different implementations.

But I know I did see the symbol once or twice so again, I have to make sure first. :)

Also I would like to people to test the approach I have taken to make sure its stable first.
That and I would like to clean up the mess I made there, its not pretty at the moment :)

Soooo, wait a second. This mod can remove pretty much all hazards unlike Maya's mod, right? And it even changes planet type? Amazing job! Sadly i'm already playing with TF mod, so i'll wait until next game to test. Solar shades is a feature that i love from Maya's mod, so i would like to see it here.
And about that building...Maybe make it a drop from remnant nexus? Or a custom quest like red planet? I feel like this should be a reward, not something you can build from the start. Otherwise players will be rushing  "penelope star" colonizing like crazy. Like i already doing...

Sorry for bad english :)

Yes, it removes all hazards, even add the two positive mods and turns your planet into Terran when its done.
One hazard when build and you can upgrade it until you have no hazards left and then you got further and add two positive modifier :)
It is quite expensive though, 2.5 Million and 360 Day build time every time.

Making it harder to access is something I may do later, first I need all the other stuff :)
Even then I would make any barriers optional.

I want people to play the way they like. :)
« Last Edit: September 16, 2019, 09:43:15 PM by Langly2 »
Logged

Serenitis

  • Admiral
  • *****
  • Posts: 1466
    • View Profile
Re: [0.9.1a] Langly's Terraforming
« Reply #4 on: September 17, 2019, 10:18:11 AM »

I have no idea what would be required for coding, but something that could take the hot/cold modifier of the starting planet and have the terraforming send it down a specific route.
This way you could keep the hot/cold modifiers in order to have separate projects for building mirrors/shades if you wanted to do that.

And you couldn't progress beyond a certain point until you build them, or those conditions are saved until last. So you might terraform a hot barren world as far as being arid or jungle, and then get stuck until you build a shade or terraform again to remove the hot condition.

It might also be worth considering a bit of randomness in the terraforming 'outputs'.
The type of a planet doesn't affect it's habitability ouside of the hab category it's assigned to, which is entirely invisible to the player.
You could use the original hot/cold condition to specifiy that a planet could eventually become A, B, C. Or X, Y, Z.

For example:

Your 'worst case' starting conditions would possibly be irradiated.
Terraforming might then change that to barren.
After that it might go to barren desert, and then on to desert.
There it could split depending on the hot/cold in to arid or jungle for hot. And tundra for cold. Terran Eccentric could be a 'wildcard' here.
After that you either get your shade/mirror building above, or just go straight to terran.

So basically: cat_irradiated -> cat_barren -> cat_hab1 -> cat_hab2 -> cat_hab3 -> cat_hab4
There exists a cat_hab5 for 'better than terran' worlds. Not sure if this is currently used or not, but it might be an idea to include it in the possible end results if you want the final output to be terran.

You could also slip in the various other planet types into branches leading in.
So a toxic, volcanic or cryo world might lead into barren, and then on down the chain.
While a frozen world might be a special case where you can't terraform it directly until you build some mirrors to melt all the ice etc. and turn it directly into a water world.

Another possibility to consider is to explicitly not have terran as the end result.
Instead having terran eccentric as the 'best' result to represent the imperfect technology of the sector.
Or even just stopping at the cat_3 worlds.
This would increase the variety of planet types instead of just having all terrans everywhere, and keep 'natural' terran worlds still being somewhat valuable.


This is all just text on the internet though. Hopefully some of it might even be useful to you.

[e]
Some candidates for the industry image pulled from GIS:
Spoiler




[close]
« Last Edit: September 17, 2019, 10:35:06 AM by Serenitis »
Logged

Langly2

  • Ensign
  • *
  • Posts: 13
    • View Profile
Re: [0.9.1a] Langly's Terraforming
« Reply #6 on: September 17, 2019, 09:32:27 PM »

*snip*

Those are all possibility's on how to handle the progression. At the moment I'm playing with the idea of using the condition_gen_data.csv in the game.
Ideally there already is some function buried somewhere that I can use. Otherwise I have to write one that checks what planet type are fitting after a hazard was removed.

I don't know if that alone would make for a logical progression though. I'll have to take a close look at the csv for that.
From what I've seen in the csv it doesn't force every plane to be Terran when all hazards are removed.
Not sure if that would change if I consider the hab_cats but they have no impact on the game anywhere afaik, so unless I get pretty random results I'll probably ignore them.

I'll have to wait and see, so far it looks like what I have is good, nobody gave me and crash logs and I didn't have any myself so this is probably what I will do on the weekend.

As for the solar shades/mirrors, I don't plan to make a second building. I just want to keep it simple with single structure.
I don't really anticipate any problems spawning them in.
If I wanted them to be correctly placed, i.e. shades stay between the planet and sun, thinks would get complicated but that is for later when everything else works.

Thx for the pics both of you :)
Logged

Serenitis

  • Admiral
  • *****
  • Posts: 1466
    • View Profile
Re: [0.9.1a] Langly's Terraforming
« Reply #7 on: September 18, 2019, 09:37:14 AM »

Having played with this a little bit I have some suggestions, which you may use/discard as you like.

Lore compatibility:
  • Disallow terraforming on gas giants
  • Don't remove gravity conditions

The Domain would probably struggle to build worlds from the core up, or manipulate gravity on a planetary scale. And we're just a forgotten backwater with barely any knowledge to start with, and most of that has been lost.
Imo if you do nothing else, not allowing gas giants to be redecorated would be the one thing I'd suggest as "do this!"

Gameplay considerations:
  • When a planet is terraformed, it might be worth seeing if you can also add resource conditions to match it's new habitability - addition of farmland / organics
  • Separate the mild weather condition from the final stage, so you have to really go all in to get the 'perfect' world
  • Possibly worth considering leaving the meteorites condition alone, as that's kind-of beyond the scope of a single planet, and also covered by the planetary shield mod (which is imo a more logical way of getting rid of that one)

I noticed the magnetic aura getting 'dropped' and laughed, as it behaves almost exactly like the "non-role construction ship" bug in Distant Worlds.
Also noted that decivilised doesn't get touched. Which is good. That's a social problem, not a terrforming one.
Might be worth seeing if you could randomise the barren textures you get, but it's not exactly a priority.
Overall: Impressed.
No crashes. The only weirdness is the magnetic field. Simple to use. Doesn't overface the player with "stuff".
Looks like the start of something p. neat. Looking forward to seeing how this takes shape.
Logged

Langly2

  • Ensign
  • *
  • Posts: 13
    • View Profile
Re: [0.9.1a] Langly's Terraforming
« Reply #8 on: September 18, 2019, 12:33:43 PM »

I do plan to make it configurable what Hazards you can remove, but that's for later.
I prefer to do that when I have all features I want in the mod so I don't have to rewrite that as well when something doesn't work out the way I planned.
That way, everyone can do what they think is needed for them to have fun.

As for the gas giant I'm uncertain. You would think that people live in orbital habitats around them yet I'm certain I found plenty with ruins on them...


Adding resources, meaning farmland, is something I have on the radar but I only got to play around with it once.
It didn't work on the first try and getting the type change done was the thing I really needed to do first.

As for the barren texture, I think that that problem goes away once I change the type according to the ingame csv and not just to barren and Terran.


Also, I'm not sure if I had that bug in DW:U myself but I did hunt ships drifting around all the time ...
Logged

Langly2

  • Ensign
  • *
  • Posts: 13
    • View Profile
Re: [0.9.1a] Langly's Terraforming
« Reply #9 on: September 19, 2019, 12:47:11 PM »

New Verison 0.0.2

New Way the Planets are modified. Should be more in line with the way the dev's intended Planets to be spawned :)

Now a Solar Mirror/Shade spawns when a (very)hot/cold hazard is removed.
Logged

Agile

  • Commander
  • ***
  • Posts: 190
    • View Profile
Re: [0.9.1a] Langly's Terraforming
« Reply #10 on: September 20, 2019, 05:45:11 AM »

I didn't know I needed this in my life until I saw it.

Question though, does this mean you have to spend 2.5 million on a planet EVERY single time you remove a hazard on it or do you just buy the building itself for 2.5 million then upgrade it for lower cost?

If its the former, the mods not that worth it unless your super late game and have nothing to do.
Logged

Serenitis

  • Admiral
  • *****
  • Posts: 1466
    • View Profile
Re: [0.9.1a] Langly's Terraforming
« Reply #11 on: September 20, 2019, 08:12:48 AM »

You've got a fairly decent core feature right now. All that's really needed is to flesh it out a bit, and add a more fluid progression through the planet types.
The mirrors and shades are nice. Are they set to spawn at random angles? Sometimes they appear almost on top of each other, so they might need some kind of minimum separation.
And other times they appear on the 'wrong' side of the planet.
Spoiler
[close]
Not really a huge deal right now. But in the future, it would be great if shades appeared on the 'day' side, and mirrors appeared on the 'night' side.

Found something interesting when interacting with Unknown Skies.
Spoiler
[close]
Planets with 0% hazard default to *0.25 maintenance.
Probably a feature of the core game preventing divide by zero/overflow nonsense.

As for the gas giant I'm uncertain. You would think that people live in orbital habitats around them yet I'm certain I found plenty with ruins on them...
You did.
Spoiler
[close]
The thing about gas gaints, is that they're made almost entirely of gas. And they're huge.
Gas giants do not have a surface. They may have a rocky core, and so one might argue that a sufficiently advanced race might be capable of removing all of the gas and terraforming that core to be more inhabitable - but I would say that any society with the capability of doing that probably has the capability of building a planet from scratch.
In that case there’s no need to do any kind of terraforming.
Was the Domain "sufficiently advanced"?
Is the lost fragment of the Domain which is the sector "sufficiently advanced"?
I think the answer to both those is very much "no".

You're doing a great job though!


Quote
Also, I'm not sure if I had that bug in DW:U myself but I did hunt ships drifting around all the time ...
Spoiler
If you ever built a military ship with construction equipment and used that ship to build a structure of some kind on a planet, that structure would 'drop off' the planet (like the mag fields). But the planet would read as exploited forever. Even if the structure is destroyed.
Only pirate empires ever had to worry about it given they can't build normal constructors for most of the game.
Salvaging ships was entirely unaffected. Which is good, because salvaging ships is "always right".
[close]

[e]

Trying to figure out a possible process map for going through the planet types, and spent some time doing this:


Not quite sure how difficult the branching thing after the first mirror/shade would be to implement though.
If it's going to be to complicated you could just push all types through terran eccentric like now, and have the other cat3s just feed in to that.

I've tried to make it as simple as I can, with each 'tier' of planet feeding into the next. So all the harsh planets merge into the barren. And then into each successive hab tier after that.
The first mirror/shade placement could possibly be moved further back if needed, but the second mirror/shade needs to be after hab3 so it can pick up any hot/cold habitable planets.
All types are accounted for, but this is not stricly nescessary. Would definitely add some polish later on if you could randomise the results of terraforming to cat_barren, and to cat3 (where applicable).
« Last Edit: September 21, 2019, 11:31:51 AM by Serenitis »
Logged

BringerofBabies

  • Lieutenant
  • **
  • Posts: 98
    • View Profile
Re: [0.9.1a] Langly's Terraforming
« Reply #12 on: September 21, 2019, 05:32:43 PM »

Trying to figure out a possible process map for going through the planet types, and spent some time doing this:


Not quite sure how difficult the branching thing after the first mirror/shade would be to implement though.
If it's going to be to complicated you could just push all types through terran eccentric like now, and have the other cat3s just feed in to that.

I've tried to make it as simple as I can, with each 'tier' of planet feeding into the next. So all the harsh planets merge into the barren. And then into each successive hab tier after that.
The first mirror/shade placement could possibly be moved further back if needed, but the second mirror/shade needs to be after hab3 so it can pick up any hot/cold habitable planets.
All types are accounted for, but this is not stricly nescessary. Would definitely add some polish later on if you could randomise the results of terraforming to cat_barren, and to cat3 (where applicable).

Seeing that chart makes me realize that terraforming everything into Terran worlds is honestly a bit boring. Personally, I'd rather have that second to last column with the 5 habitable worlds be the final (planet) stage, and then further advancement can just add a solar shade/mirror condition to cancel out cold/hot hazards - i.e. your Tundra planet would be cold, but solar mirrors have resulted in a Faroe Islands like climate. Similarly, an Arid or Jungle world would be drier or heavily forested than average, respectively, but solar shades keep them from being hot enough to be hazardous.
Logged

Langly2

  • Ensign
  • *
  • Posts: 13
    • View Profile
Re: [0.9.1a] Langly's Terraforming
« Reply #13 on: September 22, 2019, 04:25:48 AM »

New Version 0.0.3

The Aurora from the Magnetic Field now follows the planet.
The Solar Shades/Mirrors now spawn between the planet and the sun (shades) or 90° to the left/right (mirrors) and should keep that position relative to the star the planet is orbiting.

Also new Pic from Serenitis.

*snip*

Yeah, I knew about the positions of the mirrors. After thinking a second about it the math was easy but I didn't want to do it after work :p
They do work correctly now.

I did not see any obvious that prevent the Hazard to fall to 0 but you're probably right, a divide by zero is probably guaranteed when you do it.

As for the Gas Giant, I'll keep that in mind. Something to keep in mind for when I start to make it more configurable.


The Planet progression is something for next weekend. I'm gonna spend the rest of this just playing :)
Logged

TrashMan

  • Admiral
  • *****
  • Posts: 1325
    • View Profile
Re: [0.9.1a] Langly's Terraforming
« Reply #14 on: September 22, 2019, 04:54:27 AM »

Trying to figure out a possible process map for going through the planet types, and spent some time doing this:


Not quite sure how difficult the branching thing after the first mirror/shade would be to implement though.
If it's going to be to complicated you could just push all types through terran eccentric like now, and have the other cat3s just feed in to that.

I've tried to make it as simple as I can, with each 'tier' of planet feeding into the next. So all the harsh planets merge into the barren. And then into each successive hab tier after that.
The first mirror/shade placement could possibly be moved further back if needed, but the second mirror/shade needs to be after hab3 so it can pick up any hot/cold habitable planets.
All types are accounted for, but this is not stricly nescessary. Would definitely add some polish later on if you could randomise the results of terraforming to cat_barren, and to cat3 (where applicable).

Seeing that chart makes me realize that terraforming everything into Terran worlds is honestly a bit boring. Personally, I'd rather have that second to last column with the 5 habitable worlds be the final (planet) stage, and then further advancement can just add a solar shade/mirror condition to cancel out cold/hot hazards - i.e. your Tundra planet would be cold, but solar mirrors have resulted in a Faroe Islands like climate. Similarly, an Arid or Jungle world would be drier or heavily forested than average, respectively, but solar shades keep them from being hot enough to be hazardous.

Agreed. A FROZEN or cryovolcanic one could be made into a water world.
Logged
Pages: [1] 2 3