Root directory
For several tasks, like installing addons or flags, it is important to locate the installation of Kerbal Space Program. Depending on the operating system and if Steam is used, KSP is installed into different directories. Usually file locations are given relative to the root directory if Kerbal Space Program.
Contents
Installation directories
Steam
With Steam installed, it is relatively easy to get to the wanted location. Right clicking[Mac users?] on Kerbal Space Program in the Steam library opens a menu. Selecting properties opens a new window. In the tab local files the button browse local files opens the root directory where Kerbal Space Program is installed in the file browser.
Default location
Steam allows multiple library folders. The defaults on the operating systems are including the path to KSP:
- Windows x86:
C:\Program Files\Steam\SteamApps\common\Kerbal Space Program
- Windows x64:
C:\Program Files (x86)\Steam\SteamApps\common\Kerbal Space Program
- Mac:
~/Library/Application Support/Steam/SteamApps/common/Kerbal Space Program
- Linux:
~/Steam/
, alternatively in~/.local/share/Steam/SteamApps/common/Kerbal Space Program
The default directories on Mac and Linux computers are in the home directories of the user. Within the library folder, Kerbal Space Program is in the SteamApps/common/Kerbal Space Program
directory.
Manual installation
The manual installation is distributed in a zip archive. Depending on the operating system there is either KSP-win, KSP_linux or KSP-osx which contains the root directory of KSP. When this directory is extracted it can be placed anywhere, so this tutorial can't tell where to exactly find it.
KSP_Data
Contains core game assets - textures, models, animations, scenes, etc. Use a Unity assets browser to look inside the .assets archive files.
Managed
Contains DLLs for KSP. This is where you look when linking a mod library. Assembly-CSharp.dll contains the KSP API. You need UnityEngine.dll for pretty much any mod and UnityEngine.UI.dll if you're going to make a GUI.
GameData
Since version 0.20 the GameData directory was introduced in which most of the addons go. There are exceptions, like addons which were created previously and don't support the new directory format yet or addons which change the behaviour of KSP differently.
Subdirectories
The directory for each mod (and Squad) has several standard subdirectories. Each one is optional.
- Agencies. These are the organizations who make parts and give you contracts. Adding your agency here gives you a brand, spawns contracts from them, and lets users find your parts with the "by agency" filter in the VAB. (Making it work in the VAB takes a little extra work.)
- Experience
- FX
- Parts. Possibly the most common subdirectory for mods. Contains information for parts.
- Resources
- Spaces. IVA views for pod parts.
- Contracts. Custom contracts
- Flags. The flags that go on your vessel, can be planted by your Kerbals, and prepresent agencies.
- PartList
- Props
- Sounds
- Strategies. Configs for the admin building
Parts
You put models, textures, and .cfg files for your part here. Many modders give each part its own directory for all the files it needs. However, different parts can coexist in the same directory.
There must be rules for where part module DLLs must go, but I don't know them.
Saves
In the saves directory all saved sessions are stored. In the directory is a directory for each season named after it. Changing the name won't influence how the entry is named in game. In each session directory are a persistent.sfs and if quicksaves were used quicksave.sfs. The persistent.sfs stores the automatic saves done by the game regularly and prior to exiting the session.
Additionally there is a Ships directory which contains two directories containing the saved crafts for both the VAB and SPH. To have saved crafts from one game in another one, the files in those directories needs to be exchanged. When subassemblies were used, a Subassemblies directory directly containing all subassemblies exists.