PHost's movement method requires all waypoints to be known before movement starts. For intercept, it therefore attempts to sort ships into an order such that all intercept targets move before their respective interceptors. In case of circular intercept, this cannot be done, so it is treated specially:
Waypoint_X = (Sum(Position_X) + Adjust_X) / Num_ships_in_loop Waypoint_Y = (Sum(Position_Y) + Adjust_Y) / Num_ships_in_loop Adjust_X = 0 ...if AllowWraparoundMap is off i * Map_dimension_X ...where 0 ≤ i < Num_ships_in_loop such that Sum((Position_X - Waypoint_X)^2) is minimal Adjust_Y = 0 ...if AllowWraparoundMap is off j * Map_dimension_Y ...where 0 ≤ j < Num_ships_in_loop such that Sum((Position_Y - Waypoint_Y)^2) is minimal
The Adjust_X and Adjust_Y parameters are used only in wraparound-map games, and attempt to make sure that ships move the minimum possible distance. They are found by iterating all possible i and j values and picking the best fit. In PHost below 4.0k/3.4m, they are always zero.