BetterBurnTime CKAN

License: CC-BY-NC-ND

Game Version: 1.5.1

Downloads: 266,547

Author: Snark

Mod Website: Forum Thread

Followers: 686

Information Changelog Stats

BetterBurnTime

Provides extra burn-time indicators on the navball for suicide burns & target rendezvous.

How to install

Unzip into your GameData folder, like any mod.

What this mod does

  • When the ship is in vacuum and on a collision course with the ground, it will automatically show time-to-impact, and the estimated burn time to kill your velocity at ground level.
  • When the ship is in orbit and has a close rendezvous with a target ship, it will automatically show time-to-closest-approach, and the estimated burn time to kill your velocity relative to the target.
  • When the ship is on a course to enter or exit atmosphere in the next few minutes, shows time until the transition.

What this means:

For landing on planets/moons without atmosphere:

  • If you don't have any maneuver nodes set, and you're on a collision course with the ground, you'll see an estimated time-until-impact (instead of time-until-maneuver), and an estimated burn time to kill your velocity.
  • This is useful when deciding when to do your retro-burn for landing.

For orbital rendezvous

  • If you can set up a rendezvous that will take you within 10 km of the target, you'll see an estimated time-until-closest-approach (instead of time-until-maneuver), and an estimated burn time to match velocity with the target.

Things that the mod handles

  • It adds up the thrust of your engines to figure out what acceleration you can do.
  • It knows how much fuel you have, how much your engines need, and which tanks are turned off (if any).
  • It takes into account whether engines are active and have fuel available to run.
  • It projects fuel use and compensates for increasing acceleration as fuel mass is burned.
  • It uses the scarcest resource as the limit of fuel supply (e.g. if you're going to run out of LF before O)
  • It takes the "infinite fuel" cheat into account, if that's turned on.
  • If the burn exceeds your available dV, it shows the time in a "warning" format.
  • It allows for engines that aren't parallel (e.g. if you have an active engine pointing the wrong way, it ups the estimate).

The "countdown" indicator

For closest-approach, the mod displays a "countdown" indicator. This is a little row of green dots, immediately below the estimated burn time. This row of dots counts down until it's time to start your burn: when the last dot disappears, start the burn.

countdown

The display is logarithmic. The last three (biggest, leftmost) dots are in seconds: 3, 2, 1, go. After the first three dots, it's 5 seconds, 10 seconds, 15 seconds, then it doubles for each dot after that.

Note: No countdown indicator is currently shown for the "time to impact" indicator; this is because "when should I start?" is more complex, depending on a lot of factors including your descent angle, TWR, etc. This feature may eventually be added, but until then, you're on your own.

If you don't like this indicator, you can customize its appearance, make it numeric rather than graphic, or turn it off completely (see "How to configure", below).

The "insufficient fuel" warning

Normally, the mod displays estimated burn time like this (48 seconds in this example):

Est. Burn: 48s

If the mod decides that you don't have enough dV to do the specified burn, it will display the time like this instead:

Est. Burn: (~48s)

Note that it won't do this if you have the "infinite fuel" cheat turned on (since then you always have enough dV!)

The time-to-impact indicator

Under the right circumstances, the mod will display a "time until impact" indicator (instead of "time until maneuver"), along with an estimated burn time which is how long your engine would need to kill your velocity at ground level.

Impact tracker

All of the following conditions must be met for this indicator to be displayed:

  • The impact tracker isn't disabled via settings (see "Settings", below)
  • You don't have a maneuver node set.
  • The planet/moon whose SoI you're in has no atmosphere. (Someday I may release an update to enable the impact indicator when it's in atmosphere, but not right now. It gets ugly and would significantly complicate the calculations.)
  • You're on a trajectory that intersects the surface.
  • You're falling by at least 2 m/s.
  • The time of impact is no more than 120 seconds away (though you can tweak this with settings, see below).

Note that the time-to-impact is based on the assumption that you don't do a retro-burn and just coast to your doom. So if you're figuring out "when do I start my retro-burn to land," you'll generally want to wait a little bit after the point at which time-to-impact equals estimated burn time.

The time-to-closest-approach indicator

Under the right circumstances, the mod will display a "time until closest approach" indicator (instead of "time until maneuver"), along with an estimated burn time to match velocity with the target.

Closest approach tracker

All of the following conditions must be met for this indicator to be displayed:

  • The approach tracker isn't disabled via settings (see "Settings", below)
  • You don't have a maneuver node set
  • The impact tracker (see above) isn't displaying time-to-impact
  • You have a target, which is a vessel (e.g. not a planet)
  • Neither you nor your target is landed
  • You have an upcoming approach within 10 km distance
  • The closest approach is no more than 15 minutes from now
  • You're not within 200 meters of the target and going under 10 m/s, or within 400 meters and going under 1 m/s

The time-to-atmosphere indicator

If you're imminently about to enter or exit atmosphere, it shows time remaining.

Atmosphere tracker

  • The atmosphere tracker only shows time until transition (there's no burn time or countdown dots).
  • There are config options for this feature in config.xml; see "How to configure", below.

Caveats

There's a reason this mod is called BetterBurnTime and not PerfectBurnTime. There are some conditions that it does not handle, as follows:

Doesn't predict staging

The mod bases its acceleration and dV estimates on your current configuration. It doesn't know about whether or when you're going to stage in the future.

Therefore, if you're going to be staging during the burn, this can cause a couple of inaccuracies:

  • Underestimated burn time: The mod's estimate is based only on the engines that are currently active. If your current stage is high-thrust and the next one will be low-thrust, then the mod will underestimate burn time because it's assuming that the whole burn will be with your current (high-thrust) engine.
  • False alarm for dV warning: The mod assumes you're going to be burning all fuel on the current stage. It doesn't allow for the mass you're going to drop when you jettison spent stages. Therefore, if you stage during the burn, the mod will underestimate how much dV your craft can handle, and may show the dV warning even though you're fine.

Doesn't predict fuel flow

The mod doesn't know what your fuel is going to do. It naively assumes that all fuel on the ship (that hasn't been turned off by disabling the tank) is available to all active engines. Therefore, there are a couple of situations it won't handle:

  • If you have a multi-stage rocket, the mod assumes that all fuel is available to your current stage. It will base its estimate of "available dV" on that.
  • If you have multiple engines active now, but some of them are going to run out of fuel before others due to fuel flow issues, the mod doesn't predict that. It assumes that all fuel is available to all engines for the duration of the burn, and so it would underestimate the time in that case. (However, when the engines actually run out of fuel, the mod would immediately revise its estimate upwards.)

Ignores zero-density resources (e.g. electricity)

The mod assumes that any resources you have that don't have mass (e.g. electricity) are replenishable and therefore don't need to be tracked. Therefore, if you have an ion-powered craft and you're going to run out of electricity, the mod won't predict that. It will assume that you're going to have full electricity for the duration of the burn.

Time to impact is very simplistic

The calculations for determining when your ship will hit the surface are very simple. It looks at the elevation directly under the ship, and at your current vertical speed. It corrects for the acceleration of gravity, but nothing else. This means that if you're flying over rough terrain, the time-to-impact indicator will be irregular (it will suddenly get shorter when you're flying over an ascending slope, or longer when you're flying over a descending slope). If you're hurtling horizontally and about to smack into the side of a mountain range looming up in front of you, the mod has no clue. Be warned.

The mod does make a very rudimentary attempt to keep track of where the bottom of your ship is, so that impact time will be actual impact time and not when your probe core up top would hit. It's only a very rough approximation, though, so don't count on pinpoint accuracy at low speeds.

Important: The time-to-impact estimate takes into account your current velocity and the acceleration of gravity, and that's it. It deliberately does not take into account the acceleration of your engines, if you're firing them. It's an estimate of "how long would I take to smash into the ground if I turned off all my engines." So when you're retro-burning to land, the actual time to reach the ground will be longer than the displayed estimate, depending on things such as your TWR, throttle setting, angle of approach, etc. So if you want to time your burn so that you reach zero velocity right when you get to ground level, you'll need to wait a little bit past the point where the estimated time to impact equals the estimated burn time.

Simple vs. complex acceleration

By default, this mod uses a "complex" calculation of burn time that takes into account that your acceleration will increase as you burn fuel mass. This is what allows the mod to produce accurate burn times.

There are certain circumstances in which the mod will drop down to a "simple" calculation that just assumes constant acceleration based on your current thrust and mass:

  • There is a configuration option you can use to force the mod to use only simple acceleration all the time (see "How to configure," below).
  • If the "infinite fuel" cheat is turned on, the mod uses simple acceleration because no fuel will be consumed.
  • If the dV required for the burn exceeds the mod's calculation of available dV. Then it will assume that you'll have complex acceleration until you're out of fuel, and applies simple-acceleration math beyond that point.

How to configure

After the first time you run KSP with the mod installed, there will be a configuration file located at under this location in your KSP folder, which you can edit to adjust settings:

GameData/BetterBurnTime/PluginData/BetterBurnTime/config.xml

The following settings are supported:

  • UseSimpleAcceleration: By default, this is set to 0, meaning that the mod will use complex acceleration in its calculations. If you set it to 1, then you will force the mod to use simple acceleration for all its calculations all the time.
  • ShowImpactTracker: By default, this is set to 1. If you set it to 0, then you will disable the "time to impact" display.
  • MaxTimeToImpact: This is the maximum time, in seconds, that the impact tracker will predict a collision with terrain. By default, it's 120 (two minutes). You can raise or lower this. (Has no effect if ShowImpactTracker is set to 0, since then all impact tracking is turned off.)
  • ShowClosestApproachTracker: By default, this is set to 1. If you set it to 0, then you will disable the "time until closest approach" display.
  • MaxTimeUntilEncounter: This is the maximum time, in seconds, that the closest-approach tracker will predict a closest approach. By default, it's 900 (fifteen minutes).
  • MaxClosestApproachDistanceKm: This is the maximum distance, in kilometers, that a closest approach can be for the closest-approach tracker to show a prediction. By default, it's 10 km.
  • MinTargetDistanceMeters: The target must be at least this many meters away from your ship for the closest-approach tracker to show a prediction. By default, it's 200 meters.
  • ShowAtmosphereTransition: Defaults to 1. Set to 0 if you don't want to show the atmosphere transition tracker.
  • MaxTimeToAtmosphereExit: Max seconds beforehand to display the atmosphere exit warning. Defaults to 300.
  • MaxTimeToAtmosphereEntry: Max seconds beforehand to display the atmosphere entry warning. Defaults to 900.
  • FormatSeconds, etc.: Various entries named "Format" are used for formatting the time display. You can edit these to change the way time is displayed. See the .NET numeric formatting rules for details.
  • CountdownText: This string is used for displaying the "countdown" indicator. You can customize this to suit yourself, just be sure to separate the "pips" with whitespace.
    • To make it display a numeric value rather than a graphic string of "pips", just include "{0}" in the string. For example: "Start burn in {0}"
    • To turn off the countdown indicator completely, set this to an empty string.
  • CountdownTimes: This string is a comma-delimited list of threshold times (in seconds) for displaying the number of pips in the countdown indicator. (Ignored if you're using a numeric countdown.)

A historical note

The original impetus for this mod was actually something that no longer is part of the mod! Before KSP 1.5, the stock burn-time indicator for maneuver nodes was... suboptimal. It had a variety of shortcomings that made it less useful than it could have been.

BetterBurnTime was originally created to address those shortcomings and make the navball's burn-time indicator "just work better". That was the original purpose; that was originally the only thing that the mod did.

Over time, I added some additional handy functions-- the landing, rendezvous, and atmosphere-transition information.

Then, KSP 1.5 drastically improved the stock navball, and basically did all the improvements that BetterBurnTime was originally created to do. Yay! So that's stock now, which means I removed that functionality from BetterBurnTime after KSP 1.5.

However, the additional functions are still convenient, and still not in stock, so those remain-- and are now what BetterBurnTime is about, since its original purpose (maneuver nodes) has become moot.

If you're running a pre-1.5 version of KSP and want better navball functionality, you can run BetterBurnTime 1.6.1 and get the enhanced maneuver-node functionality.


Acknowledgments

Thanks to FullMetalMachinist in the KSP forums for the excellent suggestion of using a row of dots to show the countdown-to-start-burn! Ask and ye shall receive. Thanks also to Gen. Jack D. Ripper for usability suggestions that led me to the updated countdown design.

Version 1.7 for Kerbal Space Program 1.5.1

Released on 2018-10-17

  • Updated for KSP 1.5 compatibility.
  • The burn time indicator for maneuver nodes is now gone (in favor of the improved stock navball in KSP 1.5).
  • Indicators remain for surface impact, target rendezvous, and atmosphere transition.

Download

Version 1.6.1 for Kerbal Space Program 1.4.5

Released on 2017-12-29

  • Fix a bug that caused the impact tracker to throw exceptions if the tracking station's not upgraded yet.

Download

Version 1.6 for Kerbal Space Program 1.3.1

Released on 2017-07-13

  • Add "atmosphere tracker" that shows a message when you're imminently about to enter or leave atmosphere.

Download

Version 1.5.4 for Kerbal Space Program 1.3.0

Released on 2017-05-28

  • KSP 1.3 compatibility.
  • Default "countdown dots" updated due to KSP 1.3 breaking the fonts.
  • Update to target .NET framework 3.5, which is what a KSP mod should do. (It was erroneously targeting 4.5.2, thanks to linuxgurugamer for catching!)

Download

Version 1.5.3 for Kerbal Space Program 1.2.2

Released on 2016-12-15

  • Undo the "fix" for the "Parent of RectTransform" error in 1.5.2, since it hopelessly broke the navball. Sorry, everyone.

Download

Version 1.5.2 for Kerbal Space Program 1.2.2

Released on 2016-12-13

  • BROKEN VERSION, DO NOT USE. Navball is hopelessly mangled whenever impact tracker or closest-approach tracker is active.
  • Fix a bug that spams an error message "Parent of RectTransform is being set with parent property." when the mod starts up. (Thanks to DMagic for catching!)
  • Fix NRE that happens sometimes when switching to a vessel that already has a maneuver node set.

Download

Version 1.5.1 for Kerbal Space Program 1.2.2

Released on 2016-10-19

  • Fixed a bug that caused BBT to spam NullReferenceException when impact-tracking a vessel that has a kerbal in a command chair.
  • Added BetterBurnTimeData as a public API for the mod.
  • Added sample code in new "example" github directory, illustrating how to use it.

Download

Version 1.5 for Kerbal Space Program 1.2

Released on 2016-10-13

Download

Version 1.4.4 for Kerbal Space Program 1.1.3

Released on 2016-06-22

Updated for KSP 1.1.3 compatibility.

Download

Version 1.4.3 for Kerbal Space Program 1.1.2

Released on 2016-05-20

  • Add a config option to allow showing a numeric (rather than graphic) countdown indicator.
  • Fix a small memory leak.

Download

Version 1.4.2 for Kerbal Space Program 1.1.2

Released on 2016-04-26

  • Intervals for countdown timer are now customizable via the config file.
  • Minor bugfix for NullReferenceException when switching scenes.

Download

Version 1.4.1 for Kerbal Space Program 1.1

Released on 2016-04-10

Minor bugfix update. Add handling for occasional NullReferenceException problems that occur with Unity 5.

Download

Version 1.4 for Kerbal Space Program 1.1

Released on 2016-03-30

  • Required update for KSP 1.1. Older versions of BetterBurnTime won't work on 1.1.
  • Compatibility update only, no new features.

Download

Version 1.3.5 for Kerbal Space Program 1.0.5

Released on 2016-03-22

Fix a bug that causes the impact tracker to spew NullReferenceExceptions for an EVA kerbal.

Download

Version 1.3.4 for Kerbal Space Program 1.0.5

Released on 2016-03-15

Fix a bug in which an exception is displayed upon ship death.

Download

Version 1.3.3 for Kerbal Space Program 1.0.5

Released on 2016-03-13

  • Update the "impact" display so that it says "touchdown" if your projected surface-collision speed is below the crash tolerance of your lowermost part.
  • Fixed a bug about estimation of impact time, where it wasn't correctly including the height of the vessel.

Download

Version 1.3.2 for Kerbal Space Program 1.0.5

Released on 2016-03-01

  • Bugfix: don't display "N/A" for kerbals on EVA
  • Bugfix: correctly calculate time for engines with minThrust > 0 when thrust limiter is set (useful for RealFuels)
  • Minor internal performance optimization

Download

Version 1.3.1 for Kerbal Space Program 1.0.5

Released on 2016-02-26

  • Made time display format customizable
  • Updated the appearance of the countdown indicator (bigger dots)
  • Made the countdown indicator customizable
  • Fixed a minor Isp interoperability bug with Strategia

Download

Version 1.3 for Kerbal Space Program 1.0.5

Released on 2016-02-21

Added "countdown" indicator (little row of green dots showing when to start a burn).

Download

Version 1.2 for Kerbal Space Program 1.0.5

Released on 2016-02-16

No changelog provided

Download

Stats for BetterBurnTime

Downloads over time

    New followers per day

    Top Referrers

    1. spacedock.info
    2. forum.kerbalspaceprogram.com
    3. www.google.com
    4. www.spacedock.info
    5. yandex.ru
    6. www.google.co.uk
    7. www.google.de
    8. www.bing.com
    9. kerbalx.com
    10. duckduckgo.com

    Export Raw Stats

    Export Downloads

    Export Followers

    Export Referrals

    Raw stats are from the beginning of time until now. Each follower and download entry represents one hour of data. Uneventful hours are omitted.