my-th-os / KML

Kerbal Markup Lister - A persistence file editor for Kerbal Space Program
GNU General Public License v3.0
36 stars 8 forks source link
kerbal-space-program kerbalspaceprogram ksp

KML - Kerbal Markup Lister v0.9.4 - 2023-04-21

A persistence file editor for Kerbal Space Program

KSP Forum: http://forum.kerbalspaceprogram.com/index.php?/topic/133971-win-kml-persistence-file-editor/

Do you face a problem with broken docking ports or need just a little fuel-cheating? Do you got tired of editing save games in a text editor with long loading time and so much scrolling to compare different parts and vessels? So did I and decided to make a more helpful external editor to display the XML-like structure (the "KML" - Kerbal Markup Language) in a tree view and pick out vessels, kerbals and parts to be displayed in more eye-candy way.

The current version is almost feature-complete and functional, and already helps with quite a few problems (or some cheating if you choose to do so).

Any feedback, more testing, bug reports and suggestions are very welcome.

Sceenshots

New Features

Features

TODO

Install

Windows
Linux, Mac

Instructions, Hints, FAQ

Command Line Interface

When you download the KML_Mono.zip, you will get no graphical user interface (GUI), but only a command line interface (CLI). The benefit of this version is that it runs on Windows, Linux and Mac. The latter need to have Mono installed.

The full Windows version KML_Windows.zip includes the GUI and a CLI. To access the CLI, you just call it with any dashed argument.

$ ./KML.exe --help
KML: Kerbal Markup Lister 0.9 © 2021 Oliver Pola (Mythos)
Use: KML [Opt] <save-file>
Opt: --tree             | -t : List tree
     --vessels          | -v : List vessels
     --kerbals          | -k : List kerbals
     --warnings         | -w : Show warnings
     --repair           | -r : Repair docking and contract problems, includes -w
     --select           | -s : Show numbers, select one by -s=<Sel>
     --multiselect      | -m : Select all occurences by tag/name, includes -s
     --version               : Show version and check online for updates
     Actions on selection, need -s=<Sel> or -m=<Sel>, only one of:
     --export=<file>         : Export selection, no -m, defaults <file> to stdout
     --import-replace=<file> : Import file to replace selection, no -m
     --import-before=<file>  : Import file as new before selection, no -m
     --import-after=<file>   : Import file as new after selection, no -m
     --delete                : Delete selection, -m is allowed
Sel: < number | tag-start | name-start >[/Sel]
     Only in tree you can select by tag or go deep into hierarchy

What most users need, is to check for warnings (change path to KML.exe and *.sfs to your situation)

$ ./KML.exe saves/test/persistent.sfs --warnings

and then repair docking and contract problems automatically.

$ ./KML.exe saves/test/persistent.sfs --repair

To learn more, check the COMMANDLINE.md introduction.

Developers