Jump to content

[1.12.x] Where Can I Go? The Opposite of a problem 2.2 (02/06/2024)


severedsolo

Recommended Posts

UBYGzNt.png

 

A few weeks ago, I was putting together a craft, and consulting the DeltaV maps (as you do), when I thought "you know, this would be alot easier if something just told me if I had enough DV to get to Duna". Then I remembered a little tool, I used to use many years ago, called Where Can I Go

Sadly it looks like @GavinZac has moved on, and the website and source code for this wonderful little tool went with it.

So, I remade it in plugin form.

Where Can I Go? - What does it do?

In short, it will read the DeltaV of your craft, and inform you whether or not you can reach any body in the solar system. This works in the Editor, or if you are sitting in LKO, it will also tell you from there (minus the launch DeltaV of course).

License etc

Licensed MIT

Although inspiration was taken from @GavinZac's tool, the code is 100% my own.

Dependencies etc

Requires ModuleManager

JNSQ, RSS and GPP are supported. Other planet packs can be supported by MM patch (see below)

Download HERE

Source

Notes on assumptions that WhereCanIGo makes

  1. Plane changes are always assumed to be the maximum shown on the delta V maps (so it's likely with a good window, you can do it in less. The mod is called "Where Can I Go" not "Where Can I Go if I Get the Right Window"
  2. Where a planet has an atmosphere, orbit figures are assumed to not use aero-capture at all. Landing figures are assumed to use 100% aero-capture - any discrepancy here should be offset by the plane change figures.
  3. Return trips to the home-world assume that aero capture will be used to orbit and land.
  4. "Marginal" trips are considered to be within 5% of the required DV.

Notes for modders/people who want WhereCanIGo to support other planet packs

Spoiler

All WhereCanIGo's figures are configurable via Module Manager. The config node structure is as follows:

 

WHERE_CAN_I_GO //base node. Must be included at all times.
{
  notes = xxx //notes that you want to appear in the UI. Usually this is used to denote what planet pack is being supported.
  warning = xxx //a separate line for anything the player should be aware of. Currently used to warn of a minor incompatibility with Basic DV.
  rescaleFactor = xxx //Optional: If used then WhereCanIGo will automatically recalculate DV for the rescaled system without needing a new config. (Example: if you are using the stock system but a 2.5x rescale you would put rescaleFactor = 2.5.
    originalScale = xxx //Optional: If original size of system is not stock then you can use this so we don't overcompensate when recalculating. Eg - if you were using 10x Scale JNSQ then you'd put rescaleFactor = 10 , originalScale = 2.7 and mod would recalculate properly.
  BODY //individual bodies should each have their own "BODY" node
  {
        name = Kerbin //Must match the bodies internal name.
        displayName = Kerbin //If the body has a different name in game, it can be inserted here.
        flybyDV = -1 //-1 indicates that the task is impossible and will display "N/A" in the UI.
        orbitDV = 3800 //Figures should always include DV to get to orbit of the homeworld. (mod will handle removing those itself when needed)
        synchronousDV = 4500 //this will replace landDV in the UI if used. Probably only want to use this for the homeworld
        landDV = -1
        returnFromFlybyDV = -1 //return figures are for the return trip only. They will be added to the figures provided in the previous stage.
        returnFromOrbitDV = 100
        returnFromLandingDV = -1
        requireChutes = true //requireChutes indicates whether the "landDV" figure is only obtainable by using sufficient parachutes
  }
}

 

 

Edited by severedsolo
Link to comment
Share on other sites

This looks very handy, thanks. Can you make it so where you do have the D/V required (green/YES), you show by how much you exceed the D/V requirements? It's very helpful that you show the deficit on the NO cases, I think it would be just as useful to show the excess value on the YES cases.

Link to comment
Share on other sites

2 hours ago, vossiewulf said:

This looks very handy, thanks. Can you make it so where you do have the D/V required (green/YES), you show by how much you exceed the D/V requirements? It's very helpful that you show the deficit on the NO cases, I think it would be just as useful to show the excess value on the YES cases.

Sure, I'll put that in. I'm already doing the calculation, so it's not a massive hassle.

Link to comment
Share on other sites

Nice idea! Might I suggest using simple iconography? Switching the yes/no/maybe out with colored icons would make it much easier to use.

Something like an orbit/landed icon with a home icon for both that are green, yellow, or red depending on if you can do it (and get home). Tooltips could be used for details like how much dV the user is missing. 

Link to comment
Share on other sites

58 minutes ago, Jognt said:

Nice idea! Might I suggest using simple iconography? Switching the yes/no/maybe out with colored icons would make it much easier to use.

It's a great idea, but I have exactly zero artistic talent.

So unless someone wants to make me some icons, I'm afraid this have to do :)

Link to comment
Share on other sites

20 hours ago, Friznit said:

Before I make a MM patch file for GPP rescaled, is there a less manual way of scaling all the numbers by say, 2.6x?  I'm assuming not and the manual approach is the simplest.

You could try this:

I need to do an update anyway though, as I noticed a couple of issues. I might have it handle rescales automatically

Edited by severedsolo
Link to comment
Share on other sites

20 minutes ago, Gordon Dry said:

landDV or landingDV (see GPP.cfg) ?

*sighs* it should be landDV. That's not the only problem with the configs though (pro tip: don't attempt to write 40 MM patches in one sitting).

Will fix that up now.

Link to comment
Share on other sites

Hey cool, thanks for the shout-out. I just recently started playing again (now with a little guy to teach orbital mechanics to) and, faced with that same old problem, moved my code from a dead domain (turns out I don't need a website about a tiny birdie dinosaur) to http://gavingolden.com/wherecanigo/ . Now here you are! Awesome. My lazy 'eh, 200m/s, everywhere' aerobraking estimate was kinda weak.

I'm about to start a .NET project in work so if you're open to pull requests maybe I could jazz up the look of the window a bit?

Link to comment
Share on other sites

Where Can I Go 1.1 Released

MAKE SURE YOU COMPLETELY DELETE THE OLD FOLDER BEFORE INSTALLING. FOLDER STRUCTURE HAS CHANGED

 
  • Added missing Toolbar Icon
  • Fixed invalid values for landing in GPP
  • Fixed JNSQ config displaying stock values for the moons of Jool
  • Added support for GeoSynchronous DV (note this is intended for the homeworld, and will replace the "landDV" values when used)
  • UI will now show excess DV as well as shortfall
  • Added support for a "displayName" field to handle cases where a Celestial Bodies internal name does not match it's display name (ie Gael, Earth etc).
  • Handle Gael both being called Gael and Kerbin depending on MM configuration
  • RSS Support Added (courtesy of @Gordon Dry)
  • Fixed GPP patch not deleting all bodies
  • Minor code cleanup and refactor in some places
  • Moved MM patches into their own folder for to tidy up Mod folder
  • Added support for Kerbal Changelog

I'll update the modders notes later with these changes.

Edited by severedsolo
Link to comment
Share on other sites

One question I had based on a quick trial yesterday:  When is the list computed?

I had a fairly simple probe that had just dropped off ~67 tones of supplies at a space station, and now had ~4,000 m/s of dV (instead of the less than 100 m/s it had before it dropped it off) - but the mod still was saying that it didn't have the dV to get even to Mun.

Link to comment
Share on other sites

3 minutes ago, severedsolo said:

When you open the window. It can take the stock DeltaV system a minute or two to catch up though.

Well, I pulled it up after dropping off the cargo container, docking it to the station, transferring the resources, and then leaving the scene to go de-orbit the mini-drone that had done the actual launch.  (Which had been blown away by seperatrons when it dropped off the cargo container.)  So it had several minutes, and a full scene load.

Link to comment
Share on other sites

37 minutes ago, DStaal said:

Well, I pulled it up after dropping off the cargo container, docking it to the station, transferring the resources, and then leaving the scene to go de-orbit the mini-drone that had done the actual launch.  (Which had been blown away by seperatrons when it dropped off the cargo container.)  So it had several minutes, and a full scene load.

Huh. Things to check:

  • Are you using Basic DeltaV? There is a small issue with that mod, where due to the way it interacts with the Stock DV system, it can provide false results if the DV mode is not set to Vacuum.
  • If not, did the stock DV system read the correct DV?

If it's not explained by the above, and you are able to reproduce (or have the logs) I'd like to see logs and a save for that please.

Edited by severedsolo
Link to comment
Share on other sites

21 minutes ago, severedsolo said:

Huh. Are you using Basic DeltaV by any chance? There is a small issue with that mod, where due to the way it interacts with the Stock DV system, it can provide false results if the DV mode is not set to Vacuum.

If not, and you are able to reproduce (or have the logs) I'd like to see logs and a save for that please.

I'm not using Basic DeltaV.  (I was taking dV from KER.)  I do happen to still have the logs, though it was a bit of an extended session and I do run a *lot* of mods...

KSP.log: https://magehandbook.com/owncloud/index.php/s/vE6hAqWOXF9Sf23

Player.log: https://magehandbook.com/owncloud/index.php/s/KoAJPQrrFUgbpfB

(Both are zipped.)

Link to comment
Share on other sites

5 minutes ago, DStaal said:

I'm not using Basic DeltaV.  (I was taking dV from KER.)  I do happen to still have the logs, though it was a bit of an extended session and I do run a *lot* of mods...

KSP.log: https://magehandbook.com/owncloud/index.php/s/vE6hAqWOXF9Sf23

Player.log: https://magehandbook.com/owncloud/index.php/s/KoAJPQrrFUgbpfB

(Both are zipped.)

Your log looks fine, everything loaded ok (although actually the Dv figs for Mun look a little low).

If you happen to notice it again, take a note of the stock DV readout. MIght even be something to do with docking, which could be an avenue for me to explore.

I know it's not a caching issue, the DeltaV is literally read at the moment you press that button and not cached anywhere.

Edited by severedsolo
Link to comment
Share on other sites

1 minute ago, severedsolo said:

Your log looks fine, everything loaded ok (although actually the Dv figs for Mun look a little low).

If you happen to notice it again, take a note of the stock DV readout. MIght even be something to do with docking, which could be an avenue for me to explore.

It's worth noting I didn't actually dock with this craft - I jettisoned it.  It wasn't the root of the ship, and I staged it away.  (While the root stage didn't have any command modules - so I was switched back to it, and then I immediately switched back.)

Link to comment
Share on other sites

On 8/27/2019 at 5:28 PM, severedsolo said:

It's a great idea, but I have exactly zero artistic talent.

So unless someone wants to make me some icons, I'm afraid this have to do :)

I’ve got some ideas for nice icons, but I’m not sure how well I’ll be able to create them. What format would icons have to be in your opinion to be crisp, not oversized, but still maybe compatible with HiDPI screens?

oh, and is there a preferred file format/setting?

 

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...