VesselPlanner is a planning, staging, mission-design, delta-v reference, part-selection, and flight-telemetry mod for Kerbal Space Program 1.12.x.
It can analyze an existing stage, size a new stage, compare engine choices, find compatible tank combinations, build and save complete multi-stage vessel plans, create mission plans, browse planet-pack delta-v data, place selected parts into the KSP editor, and record/export flight telemetry.
For detailed change history, see CHANGELOG.md.
VesselPlanner requires:
The dependency folders are normally:
GameData/001_ToolbarControl/
GameData/000_ClickThroughBlocker/
GameData/EngineStagePlanner installation so KSP does not load both assemblies.text
KSP_ROOT/GameData/VesselPlanner/
text
KSP_ROOT/GameData/VesselPlanner/Plugins/VesselPlanner.dll
text
GameData/VesselPlanner/VesselPlanner.version
GameData/VesselPlanner/PluginData/Textures/
GameData/VesselPlanner/PluginData/DeltaVTables/
VesselPlanner can migrate older EngineStagePlanner settings, Stage-By-Stage plans, and stored flight maxima when equivalent VesselPlanner files do not already exist.
VesselPlanner uses one ToolbarController button in both the editor and flight scenes.
The main editor window is horizontally resizable from approximately 1150 to 1850 pixels, and the selected width is remembered. Candidate-table headers scroll horizontally with the rows so columns stay aligned.
The editor modes are grouped approximately as:
Mission Planner | Stage-By-Stage Analyze Existing | Planning Delta-V Table
Use Analyze Existing when a stage already exists on the current craft and you want to understand it or compare replacement engines against the real stage.
Features include:
VesselDeltaV / DeltaVStageInfo mass boundaries when available.Use Planning to design a stage that does not exist yet or to size a stage independently from the current craft.
Planning supports:
Optimization goals include:
Planning's Vacuum and Atmosphere target modes behave differently:
Mission Planner builds an ordered sequence of mission steps. A step can be one of two types:
Mission Planner supports:
Mission steps are intentionally either propulsion steps or subassembly steps; a single step does not mix both types.
Stage-By-Stage lets you design an entire vessel from the payload downward before assembling it in the KSP editor.
Capabilities include:
The Delta-V Table page reads the active planet-pack CSV and shows it as an expandable body tree.
Features include:
Urlum -> Wal -> Tal in OPM.For route values:
Planning and Analyze Existing share a sortable candidate engine table. Available columns include:
Individual columns can be enabled or disabled in Settings.
Candidates come from KSP's loaded part database after editor ExcludeFilters are applied. The currently selected KSP editor category is not used as a VesselPlanner candidate filter.
Engine lists support separate Filter and Exclude fields.
After an engine is selected, VesselPlanner finds compatible storage parts for its propellant requirements.
Tank planning supports:
Tank suggestions require storage parts with both top and bottom attach nodes. Radial or one-ended tanks are intentionally excluded from this list.
VesselPlanner displays KSP part thumbnails in:
Part images use the exact loaded AvailablePart.partUrl when available, which helps distinguish mod parts that share the same internal name.
Hovering over a thumbnail shows a larger rotating preview generated from KSP's editor icon prefab.
Configurable part-image controls include:
Changing these settings invalidates the relevant image cache so new thumbnails/previews use the new configuration.
VesselPlanner uses KSP's normal editor part-selection path for placement. Engine and tank Add actions select the corresponding part on the KSP editor cursor. Analyze Existing and Planning each have independent settings controlling whether the VesselPlanner window closes after a successful Add.
Mission Planner and Delta-V Table share CSV files under:
GameData/VesselPlanner/PluginData/DeltaVTables/
The schema is:
Origin,Destination,dV_to_low_orbit,ejection_dV,capture_dV,transfer_to_low_orbit_dV,total_capture_dV,dV_low_orbit_to_surface,ascent_dV,plane_change_dV,parent,isMoon,order
VesselPlanner uses PlanetPackHeuristics to detect the active system and select a matching table where possible.
Bundled starter tables include:
The CSV files are editable. You can replace or extend rows for your preferred delta-v map as long as the schema and body hierarchy are preserved.
The bundled OPM table includes Sarnus, Urlum, Neidon, Plock, their mapped moons, Eeloo under Sarnus, and the nested Wal -> Tal relationship.
Editor settings are stored in:
GameData/VesselPlanner/PluginData/VesselPlannerSettings.cfg
Show or hide individual columns in the candidate-engine table. Show All and Hide All provide quick presets.
Configure which informational lines are visible in the Existing Stage pane and whether the window closes after a successful Add.
Configure whether Planning closes after a successful engine/tank Add action.
Four independent persistence settings control whether these fields are restored next session:
Appearance settings include:
Tooltips include help for the Part Images numeric fields/sliders and Mission Planner controls.
In flight, the toolbar button opens the Flight Data graph window.
Start at Launch can be armed while the vessel is in PRELAUNCH. When the vessel leaves PRELAUNCH, VesselPlanner clears the existing graph and begins recording automatically.
VesselPlanner can record:
ModuleEnviroSensor outputs found on the vesselAll available sources are recorded while plotting even if they are not currently visible, so display selections can be changed without losing already-collected samples.
Flight Settings can control:
At the bottom of the Flight Data window:
Default locations:
CSV: GameData/VesselPlanner/PluginData/CSV
PNG: KSP_ROOT/Screenshots
CSV export writes the selected plotted series. PNG export saves the currently visible graph, including graph-rendered time labels and axis annotations.
Typical persistent data lives under:
GameData/VesselPlanner/PluginData/
Important files and folders include:
VesselPlannerSettings.cfg — editor and Flight Data settingsDeltaVTables/*.csv — Mission Planner and Delta-V Table dataMissionPlans/*.cfg — saved Mission Planner missionsPlans/*.cfg — saved Stage-By-Stage plansFlightSensorMaxima.tsv — per-vessel historical graph maximaCSV/ — default CSV export folderAdditional configuration files include:
GameData/VesselPlanner/BulkheadProfiles.cfgGameData/VesselPlanner/decouplerMasses.cfgGameData/VesselPlanner/VesselPlanner.versionPNG exports default to:
KSP_ROOT/Screenshots
The source package includes a full manual and focused tutorials under Manual/:
VesselPlanner-Manual.docxVesselPlanner-Analyze-Existing-Tutorial.docxVesselPlanner-Planning-Tutorial.docxVesselPlanner-Mission-Planner-Tutorial.docxVesselPlanner-Stage-by-Stage-Tutorial.docxA Markdown version of the main manual is also included as:
VesselPlanner-Manual.md
ModuleEngines / ModuleEnginesFX data.Analyze Existing prefers KSP's own VesselDeltaV / DeltaVStageInfo stage mass boundaries when available.
Planning solves a new stage iteratively because required propellant affects estimated tank mass, which changes the total mass the propellant must accelerate.
Before a real tank set is selected, estimated tank dry mass is calculated from the configured tank dry/fuel mass ratio.
VesselPlanner derives mass flow from thrust and Isp and uses KSP standard gravity (9.80665 m/s²). Analyze Existing calculates burn duration from the propellant mixture the candidate can actually consume.
VesselPlanner reads the propellant list from each loaded engine module rather than assuming LiquidFuel/Oxidizer. Mass-bearing propellants drive the rocket equation; auxiliary ignoreForIsp resources can still be shown as requirements. Resource volume uses KSP PartResourceDefinition.volume where available.
VesselPlanner is a planning and analysis tool, not a complete replacement for KSP's in-flight fuel-flow simulation.
The following are not fully modeled:
ModuleEngines / ModuleEnginesFX.For unusual modded fuel-flow systems, Planning with a manually entered payload can be more reliable than depending on a complex editor branch scan.
The project is a C# library targeting:
The project references KSP's managed assemblies plus ToolbarController and ClickThroughBlocker.
The Visual Studio project is:
VesselPlanner/VesselPlanner.csproj
The solution is:
VesselPlanner.sln
The project includes build/deploy helpers for copying the DLL, icons, version file, delta-v tables, bulkhead configuration, and decoupler configuration into a KSP development install.
See License.md for the project license.
Raw stats are from the beginning of time until now. Each follower and download entry represents one hour of data. Uneventful hours are omitted.