/KSP-AGuS-Automatic-Guidance-System

Primary LanguageJavaGNU Lesser General Public License v3.0LGPL-3.0

KSP-AGuS (Automatic Guidance System)

The goal of this project is to have a flexible and functional auto pilot for krpc that will be able to navigate any given Vessel to the desired orbit or location. The program structure was designed with compatibility and extensions in mind and is therefore easy to change according to personal needs. I for one never planned this to be an alternative way of playing the game, but rather used it to learn more about programming in my free time.

For more Information see the wiki or visit the docs

Overview

The AGuS allows you to automaticly launch any given rocket into a desired Orbit.

If you would rather like to create the maneuver nodes yourself you can use the "execute node" function of this software.

The AGuS is still in development, so errors, bugs, or missing features are to excpect. If you have understanding of orbital dynamics, or want to help improve the code performance, readability, design, etc. your support will be more than welcome.

Installation

  1. You need to install krpc into the ksp gamedata folder either manually or with ckan. See the recommended versions here
  2. Download and unzip the newest version of AGuS
  3. Change the settings.ini inside the "settings" according to your needs. See the wiki
  4. Change and add missions inside the "settings/missions/" folder. See the wiki
  5. Start KSP and choose a vessel you want.
  6. Startup the Krpc server
  7. Start the AGuS.jar file and hit connect.

Note that whenn changing the vessel the AGuS has to be restarted too.

Development setup

  1. Get the krpc-java-x.x.x.jar + all dependencies (protobuf + javatuples) + NHLogJava
  2. Download the newest version of the AGuS library here. See the README there for more information.
  3. (optional) if you do not want to use this library, but rather want to change, improve and add content to it you can download the sourcecode from the src folder

Information for developers

AGuS can also be used as a library extending the existing krpc library with usefull additions like advanced vessel info, saving of orbits, automatic staging, automatic node execution etc. That allows easy control, implementation and exstension possibilities, but also comes at the cost of a higher network usage.

Dependencies

Release History

  • 0.8.0
    • First public release

Credits

  • Niklas Heidenreich (Nik4053)
  • Jakob Emmerling (Jack-em)

Downloads

Future plans

  • inclination change
  • better vessel orientation
  • raspberry support
  • displayOtron Hat support
  • planetary transfers
  • rover support
  • landing
  • docking
  • ballistic transfer

License

See LICENSE.md