FreeOrion

Forums for the FreeOrion project
It is currently Thu Dec 14, 2017 12:30 am

All times are UTC




Post new topic Reply to topic  [ 16 posts ]  Go to page 1, 2  Next
Author Message
PostPosted: Thu Jan 05, 2017 5:17 am 
Offline
Creative Contributor
User avatar

Joined: Fri Jun 28, 2013 11:45 pm
Posts: 3291
So, I forgot something while testing Geoff's new feature for having production recorded as a percentage complete rather than total PP applied, to prevent abuse with Upkeep shenanigans.

When I put a lot of work (with others) into balancing the costs of terraforming projects based around planet size, etc, it was deliberately tested to allow queuing multiple projects at once, Dilvish tweaked production to mean that the first complete on a turn blocked completion of the second and the next turn it would increase in cost based on the distance from original and size modifiers, so you wouldn't get a chain of completed terraforms but also reduced/eliminated the micromanagement of having to go back repeatedly to a planet to queue the next terraformer.

That latter mechanic no longer works, queue multiple terraforms at once they'll complete turn after turn with no cost increase.

This can easily be stopped by giving them an enqueue location parameter, but that means we then have a bigger micromanagement problem and it makes the queuing from Objects less optimal.

So: very quick fix I will implement an enqueue condition so you can't build more than one per planet, but that throws off the balance of the current cost/time work and increases micromanagement.

We have talked, repeatedly, about finding a better/less annoying/more fun/more cool system of terraforming. We've never come up with something anyone liked enough to put the work in to actually script. We now need to.

Ideas/preferences?

_________________
Mat Bowles

Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.


Top
 Profile  
 
PostPosted: Thu Jan 05, 2017 1:49 pm 
Offline
Release Manager, Design
User avatar

Joined: Wed Nov 16, 2011 12:56 pm
Posts: 4289
Location: Sol III
I haven't run any tests, but I suspect that there might be even more buildings affected in a similar way - practically all which work with a cost increasing mechanic. One example that comes to my mind are stargates. IIRC with each stargate you build, the costs for the next stargate increase by 100 (or something like that). I guess enqueuing a couple of them at once while ensuring that all of them get full allocation of PP, the new mechanic will practically prevent the cost increase from working.

Which means, we've to go through all the buildings and determine how their costs (and therefore balance) are affected.
MatGB wrote:
Ideas/preferences?
Personally I still stick with the idea I already proposed elsewhere: Just have one building per planet type which converts the planet type to the one associated with the building. Have production time and cost be dependent on "distance to original type", so converting a terran into an ocean world is cheaper and faster than converting a barren into a swamp world.

Make those buildings be buildable on outposts, and you get also rid of the current problem that you need to be able to sustain a population on the planet before you can terraform at all. This way "terraforming" can become an approach completely independent of the other growth techs, which increase the ability of your species to (better) survive in adequate, poor or hostile environments. Which is something we always wanted, IIRC. So, remote terraforming solved too. :D

Micromanagement and related issues solved too, because you only need to queue one building and you're done. While still keeping the mechanic that terraforming a greater "distance" on the wheel can have accordingly higher costs and build times.

And all that for a manageable amount of buildings. Granted, you need more than now, but one building per planet type shouldn't be too bad. And it should be easier and simpler for new players to understand than the current, probably a bit confusing mechanic (and issues like what happens with species that have no good environment like Exobots, or what happens when there is a species with more than one good environment, etcpepe - all that goes away).

Last but not least, give these buildings fitting names. After all, "terraforming" actually refers to making a planets environment "earthlike", "terran". So, the building which converts a planets type to terran would be called "Terraformer". Anyone any ideas about good names for the others? I've to admit the names that come to my mind are quite silly ("Oceanifier", "Radiator", "Toxinator"... :oops:).


Top
 Profile  
 
PostPosted: Thu Jan 05, 2017 4:45 pm 
Offline
Juggernaut

Joined: Mon Feb 04, 2013 10:15 pm
Posts: 759
Vezzra wrote:
Last but not least, give these buildings fitting names. After all, "terraforming" actually refers to making a planets environment "earthlike", "terran". So, the building which converts a planets type to terran would be called "Terraformer". Anyone any ideas about good names for the others? I've to admit the names that come to my mind are quite silly ("Oceanifier", "Radiator", "Toxinator"... :oops:).


You left out Barrenator and Internalizer.


Top
 Profile  
 
PostPosted: Thu Jan 05, 2017 5:28 pm 
Offline
Programming, Design, Admin
User avatar

Joined: Wed Oct 08, 2003 1:33 am
Posts: 12041
Location: Munich
Vezzra wrote:
Just have one building per planet type which converts the planet type to the one associated with the building. Have production time and cost be dependent on "distance to original type", so converting a terran into an ocean world is cheaper and faster than converting a barren into a swamp world.
I'd rather have the production time be the same, but have the building move a planet one step at a time towards the goal type, not jump instantly, and have the time it takes per jump depend on distance from original type.

This also gets me thinking about having a general "environmental (in)stability" meter on planets, which would in/decrease during the terraforming process, to track the progress. The planet type would only flip over to the next type when sufficient instability was present. Unintentional environmental damage could also be modeled this way, including pollution or orbital bombardments.

Also, there should probably also be orbital terraforming parts for ships available

For names, I'd go with "Barren Planet Transformer" or "Swamp Planet Converter" or "Ocean Environment Former" or similar...


Top
 Profile  
 
PostPosted: Thu Jan 05, 2017 11:28 pm 
Offline
Creative Contributor
User avatar

Joined: Fri Jun 28, 2013 11:45 pm
Posts: 3291
Geoff the Medio wrote:
Vezzra wrote:
Just have one building per planet type which converts the planet type to the one associated with the building. Have production time and cost be dependent on "distance to original type", so converting a terran into an ocean world is cheaper and faster than converting a barren into a swamp world.
I'd rather have the production time be the same, but have the building move a planet one step at a time towards the goal type, not jump instantly, and have the time it takes per jump depend on distance from original type.

I agree with all of this I think. One building that does the job over time.

Re other buildings, AFAIK the only other building with an upkeep cost is Stargate, given no one sane builds them when Transformers are cheaper and better that's only an issue until we redo that mechanic (also planned), and to be honest I'd dump that element regardless.

_________________
Mat Bowles

Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.


Top
 Profile  
 
PostPosted: Fri Jan 06, 2017 2:59 am 
Offline
Juggernaut

Joined: Mon Feb 04, 2013 10:15 pm
Posts: 759
MatGB wrote:
I agree with all of this I think. One building that does the job over time.


One building to rule them all.


Top
 Profile  
 
PostPosted: Fri Jan 06, 2017 8:17 am 
Offline
Space Floater

Joined: Thu Oct 06, 2016 3:19 pm
Posts: 30
I don't use terraforming anyway as it's more expensive than just taking a system from an AI.

_________________
Team S.M.A.C.: play multiplayer with us!


Top
 Profile  
 
PostPosted: Fri Jan 06, 2017 12:34 pm 
Offline
Release Manager, Design
User avatar

Joined: Wed Nov 16, 2011 12:56 pm
Posts: 4289
Location: Sol III
Geoff the Medio wrote:
I'd rather have the production time be the same, but have the building move a planet one step at a time towards the goal type, not jump instantly, and have the time it takes per jump depend on distance from original type.
Why? Not that I really have a strong objection against this, it's just that I don't see the point. IMO that doesn't add any gameplay value, not even some kind of flavor (because, "realistically", when "terraforming" a world it won't go from, lets say, "barren" to "tundra" to "desert" to finally "terran", at least I don't think it would). It will, however, make the scripting a lot more complicated (and therefore potentially less stable and more prone to error).

But if Mat and you prefer it that way, no problem, be my guest... ;)
Quote:
This also gets me thinking about having a general "environmental (in)stability" meter on planets, which would in/decrease during the terraforming process, to track the progress. The planet type would only flip over to the next type when sufficient instability was present. Unintentional environmental damage could also be modeled this way, including pollution or orbital bombardments.
That sounds very interesting, I like this idea. But I guess to provide a solution for the currently broken terraforming mechanic we need a stop-gap solution that's quicker and easier to implement, because what you propose here is a whole new mechanic that needs to be implemented in the backend code.
Quote:
Also, there should probably also be orbital terraforming parts for ships available
Although I can see the appeal of it, I've to admit I'm a bit torn about that idea. Simply because that sounds like an extremely powerful thing, which would have to be balanced accordingly - by making it a very expensive late game tech, the part itself a very expensive core part, etc. Given that, yes, sounds interesting too.


Top
 Profile  
 
PostPosted: Fri Jan 06, 2017 12:38 pm 
Offline
Release Manager, Design
User avatar

Joined: Wed Nov 16, 2011 12:56 pm
Posts: 4289
Location: Sol III
MatGB wrote:
Re other buildings, AFAIK the only other building with an upkeep cost is Stargate, given no one sane builds them when Transformers are cheaper and better that's only an issue until we redo that mechanic (also planned), and to be honest I'd dump that element regardless.
Point taken. And while we're at it, considering these are very simple and easy changes, can't we just do it now? Remove the cost increase thing from stargates, and e.g. double the cost of the transformer?

I'm seriously considering just going ahead and do that today...


Top
 Profile  
 
PostPosted: Sat Jan 07, 2017 4:38 am 
Offline
Creative Contributor
User avatar

Joined: Fri Jun 28, 2013 11:45 pm
Posts: 3291
Vezzra wrote:
MatGB wrote:
Re other buildings, AFAIK the only other building with an upkeep cost is Stargate, given no one sane builds them when Transformers are cheaper and better that's only an issue until we redo that mechanic (also planned), and to be honest I'd dump that element regardless.
Point taken. And while we're at it, considering these are very simple and easy changes, can't we just do it now? Remove the cost increase thing from stargates, and e.g. double the cost of the transformer?

I'm seriously considering just going ahead and do that today...
Oh if you insist ;-)

I shall simply have to tone down my Transformer building programme a bit (and, y'know, possibly build actual stargates occasionally, that new(ish) art is gorgeous, might make it the Sitrep icon as well to highlight it).

But yeah, I've got so many half finished things in my stash at the moment and flu says no to actual work so if it's done by someone it's done :-D

_________________
Mat Bowles

Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.


Top
 Profile  
 
PostPosted: Sat Jan 07, 2017 4:43 am 
Offline
Programmer

Joined: Sun Feb 14, 2016 12:08 am
Posts: 359
re maintenance costs: Starlane bore?

How about using a single building with a special for the transformation step?
Special would have an increased chance each turn to transform the planet.
Once transformed or the building is destroyed, the special destroys itself.
The building (if it still exists) adds a special if there is not one currently and the target environment is not met.

The "instability" can be provided in either the building or special, as warranted.
The initial building might only offer a target of (e.g.) poor->adequate, a tech could then increase the environment range.

There were some unique and differing thoughts for terraform in a recent thread, though I can not seem to find it now.

_________________
Any content posted should be considered licensed GNU GPL 2.0 and/or CC-BY-SA 3.0 as appropriate.


Top
 Profile  
 
PostPosted: Sat Jan 07, 2017 5:50 am 
Offline
Creative Contributor
User avatar

Joined: Fri Jun 28, 2013 11:45 pm
Posts: 3291
dbenage-cx wrote:
re maintenance costs: Starlane bore?

I'm going to blame the flu. Even though I hadn't developed symptoms when I tested the fractional change. Because, seriously, how did it not occur to me to test buildings as well as ships?

I am very fine with the idea that only one Bore can be built at a time, I never did get around to balancing that thing properly (and the AI doesn't know it exists) and restricting it down would be perfectly acceptable.
Quote:
How about using a single building with a special for the transformation step?
Special would have an increased chance each turn to transform the planet.
Once transformed or the building is destroyed, the special destroys itself.
The building (if it still exists) adds a special if there is not one currently and the target environment is not met.

The "instability" can be provided in either the building or special, as warranted.
The initial building might only offer a target of (e.g.) poor->adequate, a tech could then increase the environment range.

Only poor-adequate would be a problem to script (I think) but I like the idea of creating a special that also adds instability for a bit.

Hmm, building with variable cost depending on planet size and distance-from-target for each target environment type that then either does the entire terraform or makes a special to do the work, or both.

It might be easier/less annoying to have the building take the planet all the way to target on completion, but with an instability special that creates a reducing-over-time problem based on distance to target so the benefits accrue slowly? And Gaia can't be built on a currently unstable world.
Quote:
There were some unique and differing thoughts for terraform in a recent thread, though I can not seem to find it now.

Yeah, I couldn't either, we've discussed it several times and there are always some good ideas.

_________________
Mat Bowles

Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.


Top
 Profile  
 
PostPosted: Sat Jan 07, 2017 7:35 am 
Offline
Programmer

Joined: Sun Feb 14, 2016 12:08 am
Posts: 359
Geoff the Medio wrote:
This also gets me thinking about having a general "environmental (in)stability" meter on planets, which would in/decrease during the terraforming process, to track the progress. The planet type would only flip over to the next type when sufficient instability was present. Unintentional environmental damage could also be modeled this way, including pollution or orbital bombardments.

How would the direction of transformation be determined? A metric for each environment type, or is the thought to have a meter for each direction?

MatGB wrote:
It might be easier/less annoying to have the building take the planet all the way to target on completion, but with an instability special that creates a reducing-over-time problem based on distance to target so the benefits accrue slowly? And Gaia can't be built on a currently unstable world.

Might be possible to present it as a bonus to pop and then do the terraforming (possibly use special capacity as a temp replacement for meter).
Would still like to see a planet transition between environments on its way to the target environment, rather than 'pop' from barren to swamp.

_________________
Any content posted should be considered licensed GNU GPL 2.0 and/or CC-BY-SA 3.0 as appropriate.


Top
 Profile  
 
PostPosted: Sat Jan 07, 2017 8:31 am 
Offline
Programming, Design, Admin
User avatar

Joined: Wed Oct 08, 2003 1:33 am
Posts: 12041
Location: Munich
dbenage-cx wrote:
How would the direction of transformation be determined?
If its due to pollution or something else, and the planet is initially at its original planet type, randomly move in either direction around the wheel of types. If a planet is not at its original type, then move towards the original type. If a terraforming building is present, move whichever way is fastest towards the terraforming building's target planet type.


Top
 Profile  
 
PostPosted: Sat Jan 07, 2017 6:25 pm 
Offline
Release Manager, Design
User avatar

Joined: Wed Nov 16, 2011 12:56 pm
Posts: 4289
Location: Sol III
dbenage-cx wrote:
re maintenance costs: Starlane bore?
Can you open an issue on github, so we don't forget about this?


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 16 posts ]  Go to page 1, 2  Next

All times are UTC


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group