Skip to content

A dynamic linked libary project based on kRPC C++ Lib which aims to provide krpc users with easy access to complex operations .

License

Notifications You must be signed in to change notification settings

RafertyLee/Kraken

Repository files navigation

Project Kraken

Language


While Deep Space Krakens are randomly popping up at your journey to Duna and ruining your great day, come and check out Project Kraken!

About Kraken

Project Kraken is currently in the start-up stage. All the descriptions below are what we expect to realize.

kRPC is a mod for the game Kerbal Space Program. With kRPC, you can take control of the vehicles in the game via programming. Project Kraken is a dynamic linked libary project based on kRPC C++ Lib. It aims to provide players with easy access to complex operations such as automatic ascending, landing and docking as well as detailed tutorials about Project Kraken.

Features

  • Cross lingual: just like kRPC, you can call Kraken lib in popular programming languages like Java, Python, C#, C and so on.
  • Based on kRPC: we use the same data structures in kRPC and Kraken can be mixed with kRPC coding.
  • Modular: Project Kraken is based on a variety of basic physics functions and controlling algorithms. Function modules at different levels and purposes are constructed and the corresponding APIs will be provided.

Goals

  • More Programming Enjoyment: Many KSP players enjoys watching their neat and tidy computer programs automatically controls their rockets lifting off. We aim to enhance the enjoyment by providing players with easy access to complex and advanced controlling method.
  • Better gaming experience: Lots of repeated operations exists in KSP, which is kinda boring when you need to launch numerous same vehicles to complete a mission or contract. We aim to reduce or eliminate such operations, thus boosting gaming experience.
  • Easier learning: If a player who is not familiar with programming or even the fundamental pyhsical rules in the aerospace field, the kRPC is extreamly hard to begin with. Although Kraken is also coding, you can use few lines to implement some specific procedures like automatical launch or docking very quickly.
  • Better guidance: kRPC is lack of advanced examples, leading to that players need to spend desent amount of time "exploring" kRPC. We aim to provide more tutorial and examples for players to quick get the hang of Project Kraken.
  • Less duplication: kRPC gives a lot of data interfaces and the forms of interaction, but no solutions to a specific procedure like launch or recovery is provided. It's common but wasteful that you can find almost every kRPC developers has a unique PID controller written by themselves. We want to give some frequently-used modules to avoid duplication.
  • Intuitive Visualization: The computation in the programming is ABSTRACT. We aim to provide players with intuitive graphs and 3d animations that we may also see at real-world mission control centers. You can check whether the data in the computing space is same to your imagination or not immediately.

Community

Communities bring greatness. We hope to make Project Kraken a community for KSP players to stay, a community for people with great professional knowledge and skills to contribute in this large project.

Plans

  1. Interop Functionality: communicate with kRPC mod running in a KSP instance.

  2. API: query and pack in-game information for user access, eg. vehicle position and velocity, reference frame, similar to what kRPC API does.

  3. Modules: provide modules ranging from physical calculation and approximation to automatic controlling, with all modules designed to be highly modular and easy-to-use.

  4. Visualizations: create visualization tools, brining abstract operations into intuitive graphs.

  5. Documentations and Examples: create detailed documentation and examples for players' reference.


Join us!

Project Kraken is a large and complex project to work with. We sincerely welcome passionated kerbals like you to join us in the project and collabrate with members in our community.

Contact us

About

A dynamic linked libary project based on kRPC C++ Lib which aims to provide krpc users with easy access to complex operations .

Resources

License

Stars

Watchers

Forks

Packages

No packages published