Скрипты автопилота на Python управляют ракетами в Kerbal Space Program без участия человека через мод kRPC: телеметрия и команды управления передаются по TCP. Один скрипт выводит аппарат на устойчивую орбиту, второй включает в себя первый, но дополнительно возвращает ускоритель к мягкой вертикальной посадке возле площадки, пока верхняя ступень выходит на орбиту. Работа проверена в игре в 25 автономных полетах. В данный моент является личным проектом, а не публичным продуктом.
launch_to_orbit.py проводит активный аппарат через гравитационный разворот и выполняет циркуляризацию в апоцентре, формируя устойчивую орбиту высотой 70-80 км. Поддерживаются одно- и двухступенчатые ракеты. Для двухступенчатой схемы первая ступень отделяется после выработки топлива, а вторая завершает выход на орбиту.
Целевая высота, завершение гравитационного разворота, запас топлива первой ступени и ускорение физики настраиваются через командную строку.
launch_and_recover.py выполняет профиль двухступенчатой ракеты по типу Falcon 9: запуск и отделение первой ступени после достижения заданного остатка топлива, по умолчанию 30%. Затем обе ступени одновременно управляются в одном цикле. Ускоритель разворачивается, выполняет возвратный импульс, выпускает аэродинамические тормоза и мягко садится вертикально, пока вторая ступень продолжает выход на орбиту.
Лучший результат: ускоритель приземлился без повреждений с отклонением 0,3° от вертикали и скоростью снижения 2,85 м/с. В том же полете верхняя ступень вышла на устойчивую орбиту 70,5 × 84 км.
Автопилот получает только данные, доступные реальному бортовому компьютеру, а остальные значения рассчитывает сам: параметры орбиты, время до апоцентра, момент посадочного импульса и прогноз точки падения с учетом сопротивления воздуха.