Exploration value formulae

Great analysis; had never run across that calculator before. Thanks! I was going to go back at some point and look at those produced by ED Discovery, but this puts the nail in that coffin.

Just been trying to think outside parameters that are center, out front.

And to pile weird on weird, just found a water world planet with a water world moon. Both in EDD's-calculated goldilocks zone. The planet is not a terraformable candidate, but the moon is a candidate. Doh. ;)
 
Last edited:
The calculations in EDD are the same as in Jackie's calculator for single stars. As in I lifted Jackie's code and put it in EDD the same :)

Jackie's does deal with additional stars but we don't get those from the journals so I left that bit out.

Your water world with a water world moon might be too big for terraforming or ruled out by some other consideration. Being in the goldilocks zone is necessary but it's not sufficient.
 
Observations / Info:
  • There seem to be 35 k-values, i.e. one for the full TC-bonus, one for no TC-bonus, and 33 k-values (nearly) evenly spread out between. @MattG: Does this match with your observations - as your "filling a gap" comment a few posts back suggests?
Don't have my notes handy - but yes, I believe I did have 35 independant values for HMCs. Originally I wasn't sure each value was actually present and it was perhaps "stepped", but it's pretty much confirmed that each and every k value is present. For Water Worlds, I was contemplating the theory that perhaps it was only 33 or 34 k values and that was why the ratio between the k was different to HMCs - but the graphs seem to rule that out. We've known for a while about the wackiness factor of water worlds, but it's interesting to see it borne out quite so vividly in the graphs - and just how many HMCs are in the first 2 k values. Perhaps there's a different mechanism for calculating the terraforming bonus of HMCs vs WWs?

Interesting. Have you tried doing any digging into correlations between the same K-values? I'm thinking atmospheric composition and gravity are likely candidates for differentiation, maybe length of day or moons. Things that could impact on either the cost of terraforming or the desirability of the end result.

I'm convinced atmospheric composition has an effect. We have a small handful of ELWs that did not get the full expected value, and they correlate to the first level down k value of water worlds - and these ELWs all have a portion of Argon in the atmosphere. And generally speaking, the ones with lower k value are more likely to have things like Argon or Ammonia in the atmosphere - but it's not that simple. For every theory we can come up with, we'll find something that breaks it. But it is something I mean to explore further and get full atmosphere breakdowns to compare - just as soon as I get some time to do it...

While I'm rambling - I wonder if there's a correlation between the range of k values and the planetary icon? It's not something we can determine from the Journal, but there are definitely a number of "types" of water world (the dark blue marble, the "dirty-looking" grey/blue one, the one that looks like an ELW, the one that looks similar to the previous one but with really small dotted clouds, etc). Might be nothing, might be that we can in fact determine the icon/type of WW based on journal data, but possibly something worth extra investigation.
 
Don't have my notes handy - but yes, I believe I did have 35 independant values for HMCs. Originally I wasn't sure each value was actually present and it was perhaps "stepped", but it's pretty much confirmed that each and every k value is present. For Water Worlds, I was contemplating the theory that perhaps it was only 33 or 34 k values and that was why the ratio between the k was different to HMCs - but the graphs seem to rule that out. We've known for a while about the wackiness factor of water worlds, but it's interesting to see it borne out quite so vividly in the graphs - and just how many HMCs are in the first 2 k values. Perhaps there's a different mechanism for calculating the terraforming bonus of HMCs vs WWs?



I'm convinced atmospheric composition has an effect. We have a small handful of ELWs that did not get the full expected value, and they correlate to the first level down k value of water worlds - and these ELWs all have a portion of Argon in the atmosphere. And generally speaking, the ones with lower k value are more likely to have things like Argon or Ammonia in the atmosphere - but it's not that simple. For every theory we can come up with, we'll find something that breaks it. But it is something I mean to explore further and get full atmosphere breakdowns to compare - just as soon as I get some time to do it...

While I'm rambling - I wonder if there's a correlation between the range of k values and the planetary icon? It's not something we can determine from the Journal, but there are definitely a number of "types" of water world (the dark blue marble, the "dirty-looking" grey/blue one, the one that looks like an ELW, the one that looks similar to the previous one but with really small dotted clouds, etc). Might be nothing, might be that we can in fact determine the icon/type of WW based on journal data, but possibly something worth extra investigation.

I've just added these formulae into Captain's Log 2.1.0 beta which I'm working on now, and I'm out gathering some exploration data in my alt account - doing the Road To Riches for that ;)

So I'll have a look for any of the anomalous WW's and see if I can discern a pattern. My playing time is somewhat limited, because family-man ;) but I'll do a bit of surveying every now and then and see what, if anything, crops up.

This is all excellent work, guys :)
 
doing the Road To Riches for that

Was thinking of doing that myself as a relatively efficient way to gather additional data on TC WW/HMC bodies and possibly some of those few weird ELWs. Would you be willing to screenshot and share the UC screens showing the body names and their sell value?
 
Was thinking of doing that myself as a relatively efficient way to gather additional data on TC WW/HMC bodies and possibly some of those few weird ELWs. Would you be willing to screenshot and share the UC screens showing the body names and their sell value?

Sure thing! I've done this procedure before when testing the old CL1.x's estimated values to compare them in the same manner ;)

That was back in the bad old days before formulae and I basically had a high and low range for each type of body as opposed to this wonderful stuff here :)
 
Formulae in Python for those interested...

By the way I thought I'd share the ValueFormula class I came up with in Python for these formulae. This is what Captain's Log uses...

Code:
[FONT=lucida console][COLOR=#CC7832]from [/COLOR][COLOR=#A9B7C6]math [/COLOR][COLOR=#CC7832]import [/COLOR][COLOR=#A9B7C6]ceil

[/COLOR]
[COLOR=#cc7832]class [/COLOR]ValueFormula([COLOR=#8888c6]object[/COLOR]):
    [COLOR=#808080]# Both forumlae taken from MattG's forum post, see
[/COLOR][COLOR=#808080]    # https://forums.frontier.co.uk/showthread.php/232000-Exploration-value-formulae
[/COLOR][COLOR=#8888c6]
    @[/COLOR][COLOR=#bbb529]staticmethod
[/COLOR][COLOR=#cc7832]    def [/COLOR][COLOR=#ffc66d]calc_star_value[/COLOR](bodytype[COLOR=#cc7832], [/COLOR]mass):

        k = [COLOR=#6897bb]2880                                    [/COLOR][COLOR=#808080]# All other star types (and failsafe to that anyway) except...
[/COLOR][COLOR=#cc7832]
        if [/COLOR][COLOR=#6a8759]'N' [/COLOR][COLOR=#cc7832]in [/COLOR]bodytype [COLOR=#cc7832]or [/COLOR][COLOR=#6a8759]'H' [/COLOR][COLOR=#cc7832]in [/COLOR]bodytype:      [COLOR=#808080]# Neutron star or black hole
[/COLOR]            k = [COLOR=#6897bb]54309
[/COLOR][COLOR=#cc7832]        elif [/COLOR][COLOR=#6a8759]'D' [/COLOR][COLOR=#cc7832]in [/COLOR]bodytype:                       [COLOR=#808080]# White Dwarf
[/COLOR]            k = [COLOR=#6897bb]33737
[/COLOR][COLOR=#6897bb]
[/COLOR][COLOR=#cc7832]        return [/COLOR][COLOR=#8888c6]int[/COLOR](ceil(k + (mass * k/[COLOR=#6897bb]66.25[/COLOR])))

    [COLOR=#8888c6]@[/COLOR][COLOR=#bbb529]staticmethod
[/COLOR][COLOR=#cc7832]    def [/COLOR][COLOR=#ffc66d]calc_planet_value[/COLOR](bodytype[COLOR=#cc7832], [/COLOR]terraformable[COLOR=#cc7832], [/COLOR]mass):

        bodytype = [COLOR=#8888c6]str[/COLOR](bodytype).lower()

        k = [COLOR=#6897bb]720     [/COLOR][COLOR=#808080]# default k value for all planet types except...
[/COLOR][COLOR=#cc7832]
        if [/COLOR][COLOR=#6a8759]'metal rich body' [/COLOR][COLOR=#cc7832]in [/COLOR]bodytype:
            k = [COLOR=#6897bb]52292
[/COLOR][COLOR=#cc7832]        elif [/COLOR][COLOR=#6a8759]'ammonia world' [/COLOR][COLOR=#cc7832]in [/COLOR]bodytype:
            k = [COLOR=#6897bb]232619
[/COLOR][COLOR=#cc7832]        elif [/COLOR][COLOR=#6a8759]'sudarsky class i gas giant' [/COLOR][COLOR=#cc7832]in [/COLOR]bodytype:
            k = [COLOR=#6897bb]3974
[/COLOR][COLOR=#cc7832]        elif [/COLOR][COLOR=#6a8759]'sudarsky class ii gas giant' [/COLOR][COLOR=#cc7832]in [/COLOR]bodytype [COLOR=#cc7832]or [/COLOR][COLOR=#6a8759]'high metal content body' [/COLOR][COLOR=#cc7832]in [/COLOR]bodytype:
            [COLOR=#cc7832]if [/COLOR]terraformable:
                k = [COLOR=#6897bb]241607
[/COLOR][COLOR=#cc7832]            else[/COLOR]:
                k = [COLOR=#6897bb]23168
[/COLOR][COLOR=#cc7832]        elif [/COLOR][COLOR=#6a8759]'water world' [/COLOR][COLOR=#cc7832]in [/COLOR]bodytype [COLOR=#cc7832]or [/COLOR][COLOR=#6a8759]'earthlike body' [/COLOR][COLOR=#cc7832]in [/COLOR]bodytype:
            [COLOR=#cc7832]if [/COLOR]terraformable:
                k = [COLOR=#6897bb]279088
[/COLOR][COLOR=#cc7832]            else[/COLOR]:
                k = [COLOR=#6897bb]155581
[/COLOR][COLOR=#cc7832]        elif [/COLOR][COLOR=#6a8759]'rocky body' [/COLOR][COLOR=#cc7832]in [/COLOR]bodytype:
            [COLOR=#cc7832]if [/COLOR]terraformable:
                k = [COLOR=#6897bb]223971
[/COLOR][COLOR=#6897bb]
[/COLOR][COLOR=#CC7832]        return [/COLOR][COLOR=#8888C6]int[/COLOR][COLOR=#A9B7C6](ceil(k + ([/COLOR][COLOR=#6897BB]3 [/COLOR][COLOR=#A9B7C6]* k * (mass ** [/COLOR][COLOR=#6897BB]0.199977[/COLOR][COLOR=#A9B7C6]) / [/COLOR][COLOR=#6897BB]5.3[/COLOR][COLOR=#A9B7C6])))[/COLOR][/FONT]

Should be self-explanatory.

calc_star_value() takes two arguments:

bodytype : Star class as given from the Player Journal.

mass : Star mass as supplied from the Player Journal

A rounded up integer is returned as the result.

calc_planet_value() takes 3 arguments:

bodytype : The full name planet type as supplied by the Player Journal

terraformable : True or False (python), depending on whether the planet is terraformable or not (note: planets can also be in a state of being terraformed or have been terraformed - in those two additional cases I treat that as False)

mass : planet mass in Earth masses

It might seem cumbersome to use the full name body type, but CL2 doesn't have a hard-coded table of planet types. It adds a table of body types as and when new ones are encountered and then uses that table for its other functions. I could have chosen to make a shorthand, but that'd be a redundant/needless operation just for the purposes of code brevity ;)

Also, the supplied body type is converted to lower case for the purpose of comparison, as the Player Journal has a mixture of caps and lower case.

Hope this is helpful for those who want a version of the formulae in code form :) , it shouldn't take too much effort to port to your language of choice I don't think.
 
Last edited:
Hmm, as I read the first post the k values for terraforming are a bonus over the base body type value - so for an HMC you should calculate a base value from k = 23,168 and if it's terraformable then do the same calculation for k = 241,607 (not 601) and add them together. That's what I've implemented in EDD (starting on line 783).

If my reading is correct then you're just calculating the terraforming bonus for CFTs and not the full value - if you've read it right then I need to fix EDD.
 
Hmm, as I read the first post the k values for terraforming are a bonus over the base body type value - so for an HMC you should calculate a base value from k = 23,168 and if it's terraformable then do the same calculation for k = 241,607 (not 601) and add them together. That's what I've implemented in EDD (starting on line 783).

If my reading is correct then you're just calculating the terraforming bonus for CFTs and not the full value - if you've read it right then I need to fix EDD.

I have compared some initial figures to what UC is paying, and they are very, very close, some exact, but with one or two outliers - notably the terraformable water worlds.

I'm out doing the Road To Riches in my alt account at the moment, plus I've done a shedload of work on CL2 tonight so I won't be checking more figures for a while.

But from what I can see, the code above is giving accurate figures, bar the odd TWW anomaly as is being discussed in the thread.

Regards o7
 
Hmm, as I read the first post the k values for terraforming are a bonus over the base body type value - so for an HMC you should calculate a base value from k = 23,168 and if it's terraformable then do the same calculation for k = 241,607 (not 601) and add them together. That's what I've implemented in EDD (starting on line 783).

If my reading is correct then you're just calculating the terraforming bonus for CFTs and not the full value - if you've read it right then I need to fix EDD.

It is indeed a two step process, and nails the payouts 100% spot on when we are talking the max possible. Even for those that are less than max, it's the terra bonus that's affected only, and not the base values.
 
It is indeed a two step process, and nails the payouts 100% spot on when we are talking the max possible. Even for those that are less than max, it's the terra bonus that's affected only, and not the base values.

Right so now I'm confused, lol :)

Apart from the typo in my code (should be 241607 not 241601 - changed that in my code now), when I checked just a few scans by selling them to UC, the figures my code produced were more or less spot on (apart from a Water World).

So, either I've interpreted the formula right, or ian666 is correct and I done mucked up :)

Anyway. What's occurred to me is this : from my understanding of UC payouts, you either get;

1) If a body was previously scanned/discovered, a basic payout of that body's worth.

or

2) If you are the first to scan body and sell data - value as per (1) plus a 50% bonus.

What I realise is that the formula here is only calculating the equivalent of (2) , is that correct?

If so, then would it not be better to come up with a formula which calculates the basic value of a body, then the bonus payment would just be a really easy 'plus 50%' addition?

Regards.
 
It is indeed a two step process, and nails the payouts 100% spot on when we are talking the max possible. Even for those that are less than max, it's the terra bonus that's affected only, and not the base values.

Yep. For simplicity, you could calculate in 1 step just using k = k1 +k2 (normal k value and terraforming bonus if applicable) - but we already know the slider on terraforming only affects the terraforming bonus, not the base value, and if we ever work out the criteria properly we'd need to split the values back out again anyway.
 
624 additional CFT prices (including about a dozen rocky worlds that display no variability from the max bonus). A lot of maximum bonuses - a surprising number of no bonus at all.

No obvious pattern that I can see though.

Lovely, thanks for sharing - that A LOT of data! I'll merge that into the list of data gathered so far and eventually post updated charts.

I might also try to visualise the values of some of the planets' attributes. That sometimes helps to identify patterns that aren't immediately visible when viewing the data itself.
 
So I've played with Iain's data a bit. Nothing concrete but I thought these were interesting graphs.
3hm0Is0.png


GY7KA1I.png

This is only looking at Water Worlds, and I rated the k values 0-35 for easier reading. Nothing definitive from them but there is at least a tendency for the smaller radius and/or lower temp planets to receive full bonus. There is also still something happening with atmosphere, but can't put my finger on that yet.

Hard to draw conclusions from any of it, but there's definitely patterns in there.
 
Interesting. I had mostly tried to find patterns in atmospheric data, I hadn't really looked at size/temp value.

So I have a similar issue, someone used https://spansh.co.uk/riches and claimed that he only got 3million from an estimated 8 million run. I suspect he may have simply hit a lot of WWs which didn't get a bonus (My implementation is here: https://paste.fuelrats.com/ipibaxerod.pl )

I'm late into this discussion (and it also should be related directly with earth masses so should be already covered in the calulation) but have we looked at gravity as an added effect?
 
So I have a similar issue, someone used https://spansh.co.uk/riches and claimed that he only got 3million from an estimated 8 million run. I suspect he may have simply hit a lot of WWs which didn't get a bonus (My implementation is here: https://paste.fuelrats.com/ipibaxerod.pl )

I'm late into this discussion (and it also should be related directly with earth masses so should be already covered in the calulation) but have we looked at gravity as an added effect?

First off - repped for using perl :)

Quick skim of the code and I don't see any problems there. Perhaps display the minimum and maximum payout values to "set expectations" ? Only 3m from an 8m run is... low. That'd mean scanning ~12 CFT WWs and most/all of them getting no bonus... possible but unlikely. It's not something stupid like the key name being "terraforming_state_name" instead of "terraforming_state" (I don't know where you're getting the data or what your object looks like...)

I have previously looked at Gravity, and didn't find any direct link to the amount of terraforming bonus. That's not to say it isn't involved, but it's not a trivial relationship if it's related at all.
 
Just wondering if there's been any change in the "stability" of the terraforming bonus, particularly with water worlds, with 2.4?
 
Back
Top Bottom