Current Timewarp message allow the user to warp to a specific point in time (apoapsis, periapsis, next maneuver, SOI change or next morning). For the first 3 options, the user may want to perform a burn so the need is not to warp to this point in time but a little before it.
First option is to warp to a given delta of the timepoint (for instance 30 sec before). This value could be hardcoded or set in the config file.
For the warp to maneuver, we could use the estimated burntime to warp to 30sec + half of the estimated burnime for instance (to account for 30 sec to rotate and then perform half the burn before the maneuver and half of it after). The estimated burntime is currently estimated with a cross multiplication of the delta-v of the maneuver with the current stage delta-v and burntime. It could be used as is or the computation could be improved to take into account a maneuver that need several stages.
To account for those different solutions, addition values for WarpControlValues can be added :
WARP_BEFORE_APOAPSIS (30 sec before)
WARP_BEFORE_PERIAPSIS (30 sec before)
WARP_BEFORE_MANEUVER (30 sec before)
WARP_BEFORE_MANEUVER_BURNTIME (use burntime estimation to warp 30 sec + half of burntime before)
Current Timewarp message allow the user to warp to a specific point in time (apoapsis, periapsis, next maneuver, SOI change or next morning). For the first 3 options, the user may want to perform a burn so the need is not to warp to this point in time but a little before it.
First option is to warp to a given delta of the timepoint (for instance 30 sec before). This value could be hardcoded or set in the config file.
For the warp to maneuver, we could use the estimated burntime to warp to 30sec + half of the estimated burnime for instance (to account for 30 sec to rotate and then perform half the burn before the maneuver and half of it after). The estimated burntime is currently estimated with a cross multiplication of the delta-v of the maneuver with the current stage delta-v and burntime. It could be used as is or the computation could be improved to take into account a maneuver that need several stages.
To account for those different solutions, addition values for
WarpControlValues
can be added :