Fleet Interception Interrupt
Due to the time advancement system, it is possible for an undetected alien fleet to suddenly appear on top of a friendly fleet. This is caused by the alien fleet passing through detection range within a single sub-pulse of the increment - 30 minutes for a 1 day increment for example.
In v2.0, for increments of one hour or more, Aurora will check the movement of all ships where the destination is either a hostile ship contact or a waypoint where hostile ships are also present. The latter case is because NPRs sometimes use waypoints to mark hostile ship locations. If the moving ship will move within 500,000 km of the destination, the increment is reduced to the length of time it would take to each that point. This is then rounded to an increment length which is a multiple of a standard sub-pulse length.
For example, a one day increment is selected. The moving fleet will reach 500k from the target in 25768 seconds. Increments between three and eight hours use 15m (900s) sub-pulses, so the increment length is rounded down to the highest number of 15m sub-pulses within the available time. In this case, that would be 25,200 seconds.
While this will still place the alien ship anywhere from 500,000 km to low millions of the friendly ship, it will no longer appear at point-blank energy range. This may not be 100% accurate, due to the wide variety of situations that can occur in Aurora, but it should massively reduce the chance of the unexpected, point-blank encounter.
EDIT: Testing has shown that a situation can occur where one fleet is chasing another but not catching it, in which case the shortened increments can repeat for a long time. Trying to calculate all the relative movements of the respective fleets would be one option, but would be complex and hit performance. Therefore, I've added a simpler solution. After five shortened increments of the same length, another shortening of the same length will be ignored.