Jackie's Hab-Zone Calculator - version 2

Here's a link (updated) to download the new version of my habitable zone calculator program.

(It's built as a Windows executable; Python source code is included if you want to see what it's doing, run it directly, muck about or fix things. It relies on a handful of sprites and a font in the same directory.)


Example screenshot

With (default) parameters for Sol*.

IYfj3q2.png



What does it do?

Given the details (radius, temperature and distance from primary if applicable) for stars in a system, it will attempt to work out:

The basic spectral class and luminosity of each star.

The positions around the primary of the zones for metal-rich worlds, the main habitable zone (the zone within which terraforming candidates can appear), earth-like worlds, water worlds, ammonia worlds and (roughly speaking) the boundary where icy worlds start to appear.

Given a distance to check, it will provide the black-body, general (albedo 0.35, which most worlds in Elite have) and icy (albedo 0.6) temperatures expected from a body without atmosphere at that distance.

Given a distance and mass, it will attempt to estimate the temperature and Sudarsky class of a gas giant of that mass at that distance.


How do I use it?

For the purposes of the calculator, any stars a planet is directly orbiting are considered primary. Any stars a planet is not directly orbiting are considered secondary.

If there is a single primary star, enter the details on the top line like the picture and press enter on any box to update the display.
Read off the positions of the habitable zones from the display. ("MHZ" is shorthand for the Main Habitable Zone where planets can be terraforming candidates.)
If you want to check a distance or guess at a gas giant, enter the details in the appropriately labeled boxes.

If there is more than one primary star (i.e. the planet is directly orbiting two or more stars) enter their details on the following rows and keep the "distance" value at 0.

If there are secondary stars, add their details on following rows, and in the "distance" column enter the distance in AU (check yourself in game; get the distance in light seconds and divide it by 499) between those stars and the primary.

If you want to check the zone for planets around a secondary star or stars, re-enter the details but now put the secondary star(s) as primaries (with distance zero) and the primary star(s) as secondaries. :)

I may still need to delve into the realms of video tutorial for using it with multiple star systems. ^^


What doesn't it do?

Hand-authored systems, stars and planets do not always play by the rules. Do not be surprised if you get strange results from them!

There are limits to what can be guessed.

I have a more accurate star class guesser program which also uses the age and mass of a star to make a much better guess as to its class in-game. For ease of use, the hab-zone calculator only works off temperature and radius, so guessed star classes may differ from observed ones.

Worlds within the metal-rich zone are not necessarily metal-rich; there's some kind of mass-related cutoff formula so more massive worlds are often high-metal content.

Worlds within the habitable zone are not necessarily candidates for terraforming; again, there's a mass-related cutoff formula and possibly other considerations. But they usually will be.

Earth-like worlds have quite specific requirements which I don't fully understand as yet.

Icy worlds can be found closer than indicated in some circumstances (the "hot iceballs.")

The gas giant mass-to-temperature increase formula used is an approximation, but the temperature and guessed class will usually be very close.

Worlds orbiting gas giants receive a heat-contribution based on proximity to the gas giant as well as the star.


Additional

Happy hunting!

Any questions, feedback, comments, bugs, whatever, let me know on this thread or PM me.


*Though as Sol is hand-authored, the standard disclaimer applies: treat any results with great caution in a hand-authored system!
 
Last edited:
Just saw reference in another thread to the original and the saw this.
Downloaded and trialled in current system. I had already scanned an ALW and figured two HMC were possible TC. Used your tool and confirmed one body was a TC according to that, so went and scanned and voilla :)

For kicks, I went and scanned the *other* body which *I* thought would be a TC but your tool did not. Guess who was right? (not me)

Good stuff. guess this means I need to start scanning the primary star again then huh?
 
Very nice Jackie! I wonder if you could incorporate this to Captain's Log (don't know if it's open source but I do know it's Python). Or perhaps EDD (which is definitely not Python). Or not. Doesn't matter, awesome work especially for the people who are hunting for those specific planet types. :D
 
Good stuff. guess this means I need to start scanning the primary star again then huh?

I've been wondering about including a drop-down selection of some kind that would have average values for given spectral classes, but it would be imprecise. Might be helpful for some cases though and it would improve my understanding to try that.

@Rhea - I should look at integration with other things - the underlying calculations are fairly easy for other people to yoink at least!
 
Hey Jackie! Awesome tool, thank you and your data analysis skills! Everywhere I look, you seem to be doing the best science in this game! (too bad for you Canonn :D )

I was gonna ask a question about secondary star contribution, after diving in without RTFM :p. I subsequently kicked myself for ignoring your instructions and found with some extra human sanity checking, it gives perfectly reasonable results. I love the fact that eval() lets me do math in the input fields!

On a side note, are you doing all the data collection for your projects on your own? Since the debut of the journal, eddb has amassed 1.7 GB of data on bodies (check out https://eddb.io/api). Before finding your tool I was about to grab that JSON file and start looking for patterns around ELWs and terraformed/ables. There's >5000 ELWs and a great many more candidates in there. Almost 700 000 terrestrial worlds in all so far :eek:, much more with gas planets and stars. Might help your efforts for this and the other DISC projects too!
 
Very nice Jackie! I wonder if you could incorporate this to Captain's Log (don't know if it's open source but I do know it's Python). Or perhaps EDD (which is definitely not Python). Or not. Doesn't matter, awesome work especially for the people who are hunting for those specific planet types. :D

I integrated it with EDD already (up to a point, it only takes account of a single star at the minute). It's part of the scan information for stars that you can see in either the Scan panel or the S-Panel. The latter you can have as an overlay on top of the game that will pop up the surface scan details on top of the game.
 
I have a more accurate star class guesser program which also uses the age and mass of a star to make a much better guess as to its class in-game. For ease of use, the hab-zone calculator only works off temperature and radius, so guessed star classes may differ from observed ones.

I've a question - does the guessed star class affect the hab zone? I presume not, but I found an ELW yesterday that is quite a bit outside the calculated zone for the main stars present in the system.
The first main is AEBE9 VI with stats 0.2342 RSol, 5206K, 0 AU (guessed as G9)
Second main is B0 VZ with stats 4.7075 RSol, 28026K, 595.5 AU (guessed as B2)

ELW is orbiting the first primary at a distance of 729 LS, but suggested ELW zone is 295 - 643 LS. There are a handful of small and cool T-Tauris orbiting main star but closest is over 1600LS out, and is barely 548K. I tried adding the first couple as "mains" (which they are not) and it has a negligible effect on zones, and I also tried adding nearest as a co-orbiting star (I set AU to 0) and it still has next to no effect.

Have I made any obvious errors? Do I need to add all the TTs in? Does the guessed star class affect the calculation?

(Incidently, I didn't realise just how much the secondary star in a system like this affects the ELW zone. It's nearly 300KLS away, yet without it the ELW is _tiny_. Also, I've seen your name plastered over a handful of systems in this sector... not for the first time either ;) )
 
I've a question - does the guessed star class affect the hab zone?
It shouldn't, not as such. The guesser used here is (so far as I remember) a simplified one that just goes off the temperature of the star and only looks at the other stats to pick out giants and remnants - I have a better one knocking around somewhere that is a bit more accurate using the age of the star to identify when stars are T Tauris and so on. But in terms of the temperature calculation used by the game, I don't think it makes a difference what stage of the star's life it is in. It probably shouldn't, although in practice I don't think the situation would arise where you had potentially habitable worlds around a T Tauri as they'd probably be under horrible bombardment from asteroids...

Have I made any obvious errors? Do I need to add all the TTs in?

Doesn't look like it - for stars which are orbiting "as planets" I don't think they affect anything but their own moons. Sounds like it is worth looking into, though. I should get back to this stuff properly some time. I think what I've got so far is mostly accurate for simple systems but it's far from an exact model of what the game thinks!

(Incidently, I didn't realise just how much the secondary star in a system like this affects the ELW zone. It's nearly 300KLS away, yet without it the ELW is _tiny_. Also, I've seen your name plastered over a handful of systems in this sector... not for the first time either ;) )

Heh, yeah, secondary stars affect the temperature a lot in Elite!
 
Any chance on an updated download link? I'm on the way back from getting my 5000ly for Palin, and this tool sounds like just the thing to save a little exploration time.
 
Hi - it should be the "jshzc v2l.exe" file. (Extract the archive first, I don't think it will run properly from within the archive.)

(that is, I'm assuming that you have a Windows machine - if you are using Mac or Linux, you should be able to get it working by installing Python and then using the "jshzc v2l.py" file instead, but that's a bit more involved.)
 
Last edited:
Hi - it should be the "jshzc v2l.exe" file. (Extract the archive first, I don't think it will run properly from within the archive.)

(that is, I'm assuming that you have a Windows machine - if you are using Mac or Linux, you should be able to get it working by installing Python and then using the "jshzc v2l.py" file instead, but that's a bit more involved.)

Nah, it wont open. It asks for an App that I don't have!

I will continue to find em the old fashioned way, it will be quicker than downloading stuff that I cant operate.

Thanks all the same CMDR.

You folks that invent these tools are awesome IMHO, makes el-thicko here feel rather feeble.

CMIV
 
Last edited:
Is the code open and can be found somewhere like github? It's kind of odd to download an executable from Dropbox these days without knowing what's inside.
 
The script for it (jshzc v2l.py) is in the download zip. IIRR it relies on a few assets (little pics of planets) also in there somewhere.
 
Back
Top Bottom