Added various readouts and updated vectored thrust handling.
Added various readouts and updated vectored thrust handling.

--- a/Documents/CHANGES.txt
+++ b/Documents/CHANGES.txt
@@ -1,3 +1,22 @@
+1.0.12.0
+	Added: Setting in Build Engineer to enable/disable vectored thrust calculations.
+	Added: Thrust torque field in Build Engineer (courtesy of mic_e).
+	Added: New readouts to the vessel category:
+		- Thrust Offset Angle (courtesy of mic_e)
+		- Thrust Torque (courtesy of mic_e)
+		- Part Count:  stage/total
+		- Heading
+		- Pitch
+		- Roll
+
+	Added: New readouts to the surface category:
+		- Situation
+
+	Added: New readouts to the miscellaneous category:
+		- Vectored Thrust Toggle
+
+	Fixed: The category selection within the section editors to not always reset back to 'Orbital'.
+
 1.0.11.3, 11-11-2014
     Changed: Gravity measurements for Isp to 9.82.
 

--- a/KerbalEngineer/Editor/BuildAdvanced.cs
+++ b/KerbalEngineer/Editor/BuildAdvanced.cs
@@ -17,24 +17,22 @@
 //     along with this program.  If not, see <http://www.gnu.org/licenses/>.
 // 
 
-#region Using Directives
-
-using System;
-using System.Linq;
-
-using KerbalEngineer.Extensions;
-using KerbalEngineer.Flight;
-using KerbalEngineer.Helpers;
-using KerbalEngineer.Settings;
-using KerbalEngineer.UIControls;
-using KerbalEngineer.VesselSimulator;
-
-using UnityEngine;
-
-#endregion
-
 namespace KerbalEngineer.Editor
 {
+    #region Using Directives
+
+    using System;
+    using System.Linq;
+    using Extensions;
+    using Flight;
+    using Helpers;
+    using Settings;
+    using UIControls;
+    using UnityEngine;
+    using VesselSimulator;
+
+    #endregion
+
     [KSPAddon(KSPAddon.Startup.EditorAny, false)]
     public class BuildAdvanced : MonoBehaviour
     {
@@ -124,7 +122,7 @@
 
         #endregion
 
-        #region Methods: protected
+        #region Methods
 
         protected void Awake()
         {
@@ -277,10 +275,6 @@
             }
         }
 
-        #endregion
-
-        #region Methods: private
-
         /// <summary>
         ///     Checks whether the editor should be locked to stop click-through.
         /// </summary>
@@ -466,6 +460,11 @@
             GUILayout.Label("Compact mode collapses to the:", this.settingStyle);
             this.compactCollapseRight = !GUILayout.Toggle(!this.compactCollapseRight, "LEFT", this.buttonStyle, GUILayout.Width(100.0f * GuiDisplaySize.Offset));
             this.compactCollapseRight = GUILayout.Toggle(this.compactCollapseRight, "RIGHT", this.buttonStyle, GUILayout.Width(100.0f * GuiDisplaySize.Offset));
+            GUILayout.EndHorizontal();
+
+            GUILayout.BeginHorizontal();
+            GUILayout.Label("Simulate using vectored thrust values:");
+            SimManager.vectoredThrust = GUILayout.Toggle(SimManager.vectoredThrust, "ENABLED", this.buttonStyle, GUILayout.Width(100.0f * GuiDisplaySize.Offset));
             GUILayout.EndHorizontal();
 
             GUILayout.BeginHorizontal();

--- /dev/null
+++ b/KerbalEngineer/Flight/Readouts/Miscellaneous/VectoredThrustToggle.cs
@@ -1,1 +1,56 @@
+// 
+//     Kerbal Engineer Redux
+// 
+//     Copyright (C) 2014 CYBUTEK
+// 
+//     This program is free software: you can redistribute it and/or modify
+//     it under the terms of the GNU General Public License as published by
+//     the Free Software Foundation, either version 3 of the License, or
+//     (at your option) any later version.
+// 
+//     This program is distributed in the hope that it will be useful,
+//     but WITHOUT ANY WARRANTY; without even the implied warranty of
+//     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+//     GNU General Public License for more details.
+// 
+//     You should have received a copy of the GNU General Public License
+//     along with this program.  If not, see <http://www.gnu.org/licenses/>.
+// 
 
+namespace KerbalEngineer.Flight.Readouts.Miscellaneous
+{
+    #region Using Directives
+
+    using Sections;
+    using UnityEngine;
+    using VesselSimulator;
+
+    #endregion
+
+    public class VectoredThrustToggle : ReadoutModule
+    {
+        #region Constructors
+
+        public VectoredThrustToggle()
+        {
+            this.Name = "Vectored Thrust";
+            this.Category = ReadoutCategory.GetCategory("Miscellaneous");
+            this.HelpString = "Shows a control that will allow you to adjust whether the vessel simulation should account for vectored thrust.";
+            this.IsDefault = false;
+        }
+
+        #endregion
+
+        #region Methods
+
+        public override void Draw(SectionModule section)
+        {
+            GUILayout.BeginHorizontal();
+            GUILayout.Label("Vectored Thrust: ", this.NameStyle);
+            SimManager.vectoredThrust = GUILayout.Toggle(SimManager.vectoredThrust, "ENABLED", this.ButtonStyle);
+            GUILayout.EndHorizontal();
+        }
+
+        #endregion
+    }
+}

--- a/KerbalEngineer/Flight/Readouts/ReadoutCategory.cs
+++ b/KerbalEngineer/Flight/Readouts/ReadoutCategory.cs
@@ -56,6 +56,7 @@
         public static ReadoutCategory Selected { get; set; }
 
         public string Description { get; set; }
+
         public string Name { get; set; }
 
         #endregion

--- a/KerbalEngineer/Flight/Readouts/ReadoutLibrary.cs
+++ b/KerbalEngineer/Flight/Readouts/ReadoutLibrary.cs
@@ -17,33 +17,31 @@
 //     along with this program.  If not, see <http://www.gnu.org/licenses/>.
 // 
 
-#region Using Directives
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-
-using KerbalEngineer.Flight.Readouts.Miscellaneous;
-using KerbalEngineer.Flight.Readouts.Orbital;
-using KerbalEngineer.Flight.Readouts.Orbital.ManoeuvreNode;
-using KerbalEngineer.Flight.Readouts.Rendezvous;
-using KerbalEngineer.Flight.Readouts.Surface;
-using KerbalEngineer.Flight.Readouts.Vessel;
-using KerbalEngineer.Settings;
-
-using AltitudeSeaLevel = KerbalEngineer.Flight.Readouts.Surface.AltitudeSeaLevel;
-using ApoapsisHeight = KerbalEngineer.Flight.Readouts.Orbital.ApoapsisHeight;
-using OrbitalPeriod = KerbalEngineer.Flight.Readouts.Orbital.OrbitalPeriod;
-using PeriapsisHeight = KerbalEngineer.Flight.Readouts.Orbital.PeriapsisHeight;
-using SemiMajorAxis = KerbalEngineer.Flight.Readouts.Orbital.SemiMajorAxis;
-using SemiMinorAxis = KerbalEngineer.Flight.Readouts.Orbital.SemiMinorAxis;
-using TimeToApoapsis = KerbalEngineer.Flight.Readouts.Orbital.TimeToApoapsis;
-using TimeToPeriapsis = KerbalEngineer.Flight.Readouts.Orbital.TimeToPeriapsis;
-
-#endregion
-
 namespace KerbalEngineer.Flight.Readouts
 {
+    #region Using Directives
+
+    using System;
+    using System.Collections.Generic;
+    using System.Linq;
+    using Miscellaneous;
+    using Orbital;
+    using Orbital.ManoeuvreNode;
+    using Rendezvous;
+    using Settings;
+    using Surface;
+    using Vessel;
+    using AltitudeSeaLevel = Surface.AltitudeSeaLevel;
+    using ApoapsisHeight = Orbital.ApoapsisHeight;
+    using OrbitalPeriod = Orbital.OrbitalPeriod;
+    using PeriapsisHeight = Orbital.PeriapsisHeight;
+    using SemiMajorAxis = Orbital.SemiMajorAxis;
+    using SemiMinorAxis = Orbital.SemiMinorAxis;
+    using TimeToApoapsis = Orbital.TimeToApoapsis;
+    using TimeToPeriapsis = Orbital.TimeToPeriapsis;
+
+    #endregion
+
     public static class ReadoutLibrary
     {
         #region Fields
@@ -66,6 +64,7 @@
                 ReadoutCategory.SetCategory("Vessel", "Vessel performance statistics.");
                 ReadoutCategory.SetCategory("Rendezvous", "Readouts for rendezvous manovoeures.");
                 ReadoutCategory.SetCategory("Miscellaneous", "Miscellaneous readouts.");
+                ReadoutCategory.Selected = ReadoutCategory.GetCategory("Orbital");
 
                 // Orbital
                 readouts.Add(new ApoapsisHeight());
@@ -109,6 +108,9 @@
                 readouts.Add(new VerticalAcceleration());
                 readouts.Add(new HorizontalSpeed());
                 readouts.Add(new HorizontalAcceleration());
+                readouts.Add(new Heading());
+                readouts.Add(new Pitch());
+                readouts.Add(new Roll());
                 readouts.Add(new Latitude());
                 readouts.Add(new Longitude());
                 readouts.Add(new GeeForce());
@@ -143,6 +145,7 @@
                 readouts.Add(new IntakeAirDemand());
                 readouts.Add(new IntakeAirSupply());
                 readouts.Add(new IntakeAirDemandSupply());
+                readouts.Add(new PartCount());
 
                 // Rendezvous
                 readouts.Add(new TargetSelector());
@@ -170,6 +173,7 @@
                 readouts.Add(new GuiSizeAdjustor());
                 readouts.Add(new SimulationDelay());
                 readouts.Add(new TimeReference());
+                readouts.Add(new VectoredThrustToggle());
 
                 LoadHelpStrings();
             }
@@ -194,7 +198,7 @@
 
         #endregion
 
-        #region Methods: public
+        #region Methods
 
         /// <summary>
         ///     Gets a list of readout modules which are associated with the specified category.
@@ -222,10 +226,6 @@
                 readout.Reset();
             }
         }
-
-        #endregion
-
-        #region Methods: private
 
         /// <summary>
         ///     Loads the help strings from file.

--- /dev/null
+++ b/KerbalEngineer/Flight/Readouts/Vessel/AttitudeProcessor.cs
@@ -1,1 +1,103 @@
+// 
+//     Kerbal Engineer Redux
+// 
+//     Copyright (C) 2014 CYBUTEK
+// 
+//     This program is free software: you can redistribute it and/or modify
+//     it under the terms of the GNU General Public License as published by
+//     the Free Software Foundation, either version 3 of the License, or
+//     (at your option) any later version.
+// 
+//     This program is distributed in the hope that it will be useful,
+//     but WITHOUT ANY WARRANTY; without even the implied warranty of
+//     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+//     GNU General Public License for more details.
+// 
+//     You should have received a copy of the GNU General Public License
+//     along with this program.  If not, see <http://www.gnu.org/licenses/>.
+// 
 
+namespace KerbalEngineer.Flight.Readouts.Vessel
+{
+    #region Using Directives
+
+    using UnityEngine;
+
+    #endregion
+
+    public class AttitudeProcessor : IUpdatable, IUpdateRequest
+    {
+        #region Fields
+
+        private static readonly AttitudeProcessor instance = new AttitudeProcessor();
+
+        private Vector3 centreOfMass = Vector3.zero;
+
+        private double heading;
+        private Vector3 north = Vector3.zero;
+        private double pitch;
+        private double roll;
+        private Quaternion surfaceRotation;
+        private Vector3 up = Vector3.zero;
+
+        #endregion
+
+        #region Properties
+
+        public static double Heading
+        {
+            get { return instance.heading; }
+        }
+
+        public static AttitudeProcessor Instance
+        {
+            get { return instance; }
+        }
+
+        public static double Pitch
+        {
+            get { return instance.pitch; }
+        }
+
+        public static double Roll
+        {
+            get { return instance.roll; }
+        }
+
+        public bool UpdateRequested { get; set; }
+
+        #endregion
+
+        #region Methods
+
+        public static void RequestUpdate()
+        {
+            instance.UpdateRequested = true;
+        }
+
+        public void Update()
+        {
+            this.surfaceRotation = this.GetSurfaceRotation();
+
+            // This code was derived from MechJeb2's implementation for getting the vessel's surface relative rotation.
+            this.heading = this.surfaceRotation.eulerAngles.y;
+            this.pitch = this.surfaceRotation.eulerAngles.x > 180.0f
+                ? 360.0f - this.surfaceRotation.eulerAngles.x
+                : -this.surfaceRotation.eulerAngles.x;
+            this.roll = this.surfaceRotation.eulerAngles.z > 180.0f
+                ? this.surfaceRotation.eulerAngles.z - 360.0f
+                : this.surfaceRotation.eulerAngles.z;
+        }
+
+        private Quaternion GetSurfaceRotation()
+        {
+            // This code was derived from MechJeb2's implementation for getting the vessel's surface relative rotation.
+            this.centreOfMass = FlightGlobals.ActiveVessel.findWorldCenterOfMass();
+            this.up = (this.centreOfMass - FlightGlobals.ActiveVessel.mainBody.position).normalized;
+            this.north = Vector3.Exclude(this.up, (FlightGlobals.ActiveVessel.mainBody.position + FlightGlobals.ActiveVessel.mainBody.transform.up * (float)FlightGlobals.ActiveVessel.mainBody.Radius) - this.centreOfMass).normalized;
+            return Quaternion.Inverse(Quaternion.Euler(90.0f, 0.0f, 0.0f) * Quaternion.Inverse(FlightGlobals.ActiveVessel.transform.rotation) * Quaternion.LookRotation(this.north, this.up));
+        }
+
+        #endregion
+    }
+}

--- /dev/null
+++ b/KerbalEngineer/Flight/Readouts/Vessel/Heading.cs
@@ -1,1 +1,62 @@
+// 
+//     Kerbal Engineer Redux
+// 
+//     Copyright (C) 2014 CYBUTEK
+// 
+//     This program is free software: you can redistribute it and/or modify
+//     it under the terms of the GNU General Public License as published by
+//     the Free Software Foundation, either version 3 of the License, or
+//     (at your option) any later version.
+// 
+//     This program is distributed in the hope that it will be useful,
+//     but WITHOUT ANY WARRANTY; without even the implied warranty of
+//     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+//     GNU General Public License for more details.
+// 
+//     You should have received a copy of the GNU General Public License
+//     along with this program.  If not, see <http://www.gnu.org/licenses/>.
+// 
 
+namespace KerbalEngineer.Flight.Readouts.Vessel
+{
+    #region Using Directives
+
+    using Helpers;
+    using Sections;
+
+    #endregion
+
+    public class Heading : ReadoutModule
+    {
+        #region Constructors
+
+        public Heading()
+        {
+            this.Name = "Heading";
+            this.Category = ReadoutCategory.GetCategory("Vessel");
+            this.HelpString = string.Empty;
+            this.IsDefault = false;
+        }
+
+        #endregion
+
+        #region Methods
+
+        public override void Draw(SectionModule section)
+        {
+            this.DrawLine(Units.ToAngle(AttitudeProcessor.Heading), section.IsHud);
+        }
+
+        public override void Reset()
+        {
+            FlightEngineerCore.Instance.AddUpdatable(AttitudeProcessor.Instance);
+        }
+
+        public override void Update()
+        {
+            AttitudeProcessor.RequestUpdate();
+        }
+
+        #endregion
+    }
+}

--- /dev/null
+++ b/KerbalEngineer/Flight/Readouts/Vessel/PartCount.cs
@@ -1,1 +1,65 @@
+// 
+//     Kerbal Engineer Redux
+// 
+//     Copyright (C) 2014 CYBUTEK
+// 
+//     This program is free software: you can redistribute it and/or modify
+//     it under the terms of the GNU General Public License as published by
+//     the Free Software Foundation, either version 3 of the License, or
+//     (at your option) any later version.
+// 
+//     This program is distributed in the hope that it will be useful,
+//     but WITHOUT ANY WARRANTY; without even the implied warranty of
+//     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+//     GNU General Public License for more details.
+// 
+//     You should have received a copy of the GNU General Public License
+//     along with this program.  If not, see <http://www.gnu.org/licenses/>.
+// 
 
+namespace KerbalEngineer.Flight.Readouts.Vessel
+{
+    #region Using Directives
+
+    using Helpers;
+    using Sections;
+
+    #endregion
+
+    public class PartCount : ReadoutModule
+    {
+        #region Constructors
+
+        public PartCount()
+        {
+            this.Name = "Part Count";
+            this.Category = ReadoutCategory.GetCategory("Vessel");
+            this.HelpString = string.Empty;
+            this.IsDefault = true;
+        }
+
+        #endregion
+
+        #region Methods
+
+        public override void Draw(SectionModule section)
+        {
+            if (SimulationProcessor.ShowDetails)
+            {
+                this.DrawLine(Units.Concat(SimulationProcessor.LastStage.partCount, SimulationProcessor.LastStage.totalPartCount), section.IsHud);
+            }
+        }
+
+        public override void Reset()
+        {
+            FlightEngineerCore.Instance.AddUpdatable(SimulationProcessor.Instance);
+        }
+
+        public override void Update()
+        {
+            SimulationProcessor.RequestUpdate();
+        }
+
+        #endregion
+    }
+}

--- /dev/null
+++ b/KerbalEngineer/Flight/Readouts/Vessel/Pitch.cs
@@ -1,1 +1,62 @@
+// 
+//     Kerbal Engineer Redux
+// 
+//     Copyright (C) 2014 CYBUTEK
+// 
+//     This program is free software: you can redistribute it and/or modify
+//     it under the terms of the GNU General Public License as published by
+//     the Free Software Foundation, either version 3 of the License, or
+//     (at your option) any later version.
+// 
+//     This program is distributed in the hope that it will be useful,
+//     but WITHOUT ANY WARRANTY; without even the implied warranty of
+//     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+//     GNU General Public License for more details.
+// 
+//     You should have received a copy of the GNU General Public License
+//     along with this program.  If not, see <http://www.gnu.org/licenses/>.
+// 
 
+namespace KerbalEngineer.Flight.Readouts.Vessel
+{
+    #region Using Directives
+
+    using Helpers;
+    using Sections;
+
+    #endregion
+
+    public class Pitch : ReadoutModule
+    {
+        #region Constructors
+
+        public Pitch()
+        {
+            this.Name = "Pitch";
+            this.Category = ReadoutCategory.GetCategory("Vessel");
+            this.HelpString = string.Empty;
+            this.IsDefault = false;
+        }
+
+        #endregion
+
+        #region Methods
+
+        public override void Draw(SectionModule section)
+        {
+            this.DrawLine(Units.ToAngle(AttitudeProcessor.Pitch), section.IsHud);
+        }
+
+        public override void Reset()
+        {
+            FlightEngineerCore.Instance.AddUpdatable(AttitudeProcessor.Instance);
+        }
+
+        public override void Update()
+        {
+            AttitudeProcessor.RequestUpdate();
+        }
+
+        #endregion
+    }
+}

--- /dev/null
+++ b/KerbalEngineer/Flight/Readouts/Vessel/Roll.cs
@@ -1,1 +1,62 @@
+// 
+//     Kerbal Engineer Redux
+// 
+//     Copyright (C) 2014 CYBUTEK
+// 
+//     This program is free software: you can redistribute it and/or modify
+//     it under the terms of the GNU General Public License as published by
+//     the Free Software Foundation, either version 3 of the License, or
+//     (at your option) any later version.
+// 
+//     This program is distributed in the hope that it will be useful,
+//     but WITHOUT ANY WARRANTY; without even the implied warranty of
+//     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+//     GNU General Public License for more details.
+// 
+//     You should have received a copy of the GNU General Public License
+//     along with this program.  If not, see <http://www.gnu.org/licenses/>.
+// 
 
+namespace KerbalEngineer.Flight.Readouts.Vessel
+{
+    #region Using Directives
+
+    using Helpers;
+    using Sections;
+
+    #endregion
+
+    public class Roll : ReadoutModule
+    {
+        #region Constructors
+
+        public Roll()
+        {
+            this.Name = "Roll";
+            this.Category = ReadoutCategory.GetCategory("Vessel");
+            this.HelpString = string.Empty;
+            this.IsDefault = false;
+        }
+
+        #endregion
+
+        #region Methods
+
+        public override void Draw(SectionModule section)
+        {
+            this.DrawLine(Units.ToAngle(AttitudeProcessor.Roll), section.IsHud);
+        }
+
+        public override void Reset()
+        {
+            FlightEngineerCore.Instance.AddUpdatable(AttitudeProcessor.Instance);
+        }
+
+        public override void Update()
+        {
+            AttitudeProcessor.RequestUpdate();
+        }
+
+        #endregion
+    }
+}

--- a/KerbalEngineer/Flight/Sections/SectionEditor.cs
+++ b/KerbalEngineer/Flight/Sections/SectionEditor.cs
@@ -119,7 +119,7 @@
             try
             {
                 this.InitialiseStyles();
-                ReadoutCategory.Selected = ReadoutCategory.GetCategory("Orbital");
+                //ReadoutCategory.Selected = ReadoutCategory.GetCategory("Orbital");
                 RenderingManager.AddToPostDrawQueue(0, this.Draw);
             }
             catch (Exception ex)

--- a/KerbalEngineer/Helpers/Units.cs
+++ b/KerbalEngineer/Helpers/Units.cs
@@ -17,17 +17,22 @@
 //     along with this program.  If not, see <http://www.gnu.org/licenses/>.
 // 
 
-#region Using Directives
-
-using System;
-
-#endregion
-
 namespace KerbalEngineer.Helpers
 {
+    #region Using Directives
+
+    using System;
+
+    #endregion
+
     public static class Units
     {
-        #region Methods: public
+        #region Methods
+
+        public static string Concat(int value1, int value2)
+        {
+            return value1 + " / " + value2;
+        }
 
         public static string Concat(double value1, double value2, int decimals = 1)
         {
@@ -83,11 +88,6 @@
             return value.ToString("N" + decimals) + "Mm";
         }
 
-        public static string ToTorque(double value)
-        {
-            return value.ToString((value < 100.0) ? (Math.Abs(value) < Double.Epsilon) ? "N0" : "N1" : "N0") + "kNm";
-        }
-
         public static string ToForce(double value)
         {
             return value.ToString((value < 100000.0) ? (value < 10000.0) ? (value < 100.0) ? (Math.Abs(value) < Double.Epsilon) ? "N0" : "N3" : "N2" : "N1" : "N0") + "kN";
@@ -138,6 +138,11 @@
             return TimeFormatter.ConvertToString(value);
         }
 
+        public static string ToTorque(double value)
+        {
+            return value.ToString((value < 100.0) ? (Math.Abs(value) < Double.Epsilon) ? "N0" : "N1" : "N0") + "kNm";
+        }
+
         #endregion
     }
 }

--- a/KerbalEngineer/KerbalEngineer.csproj
+++ b/KerbalEngineer/KerbalEngineer.csproj
@@ -51,6 +51,7 @@
     <Compile Include="Flight\ActionMenuGui.cs" />
     <Compile Include="Flight\FlightEngineerPartless.cs" />
     <Compile Include="Flight\Presets\Preset.cs" />
+    <Compile Include="Flight\Readouts\Miscellaneous\VectoredThrustToggle.cs" />
     <Compile Include="Flight\Readouts\Miscellaneous\TimeReference.cs" />
     <Compile Include="Flight\Readouts\Miscellaneous\Separator.cs" />
     <Compile Include="Flight\Readouts\Miscellaneous\GuiSizeAdjustor.cs" />
@@ -87,7 +88,12 @@
     <Compile Include="Flight\Readouts\Surface\Biome.cs" />
     <Compile Include="Flight\Readouts\Surface\HorizontalAcceleration.cs" />
     <Compile Include="Flight\Readouts\Surface\VerticalAcceleration.cs" />
+    <Compile Include="Flight\Readouts\Vessel\AttitudeProcessor.cs" />
     <Compile Include="Flight\Readouts\Vessel\DeltaVCurrentTotal.cs" />
+    <Compile Include="Flight\Readouts\Vessel\Roll.cs" />
+    <Compile Include="Flight\Readouts\Vessel\Pitch.cs" />
+    <Compile Include="Flight\Readouts\Vessel\Heading.cs" />
+    <Compile Include="Flight\Readouts\Vessel\PartCount.cs" />
     <Compile Include="Flight\Readouts\Vessel\SuicideBurnDeltaV.cs" />
     <Compile Include="Flight\Readouts\Vessel\SuicideBurnAltitude.cs" />
     <Compile Include="Flight\Readouts\Vessel\SuicideBurnDistance.cs" />

--- a/KerbalEngineer/VesselSimulator/SimManager.cs
+++ b/KerbalEngineer/VesselSimulator/SimManager.cs
@@ -43,7 +43,7 @@
 
         public static bool dumpTree = false;
         public static bool logOutput = false;
-        public static bool vectoredThrust = false;
+        public static bool vectoredThrust = true;
         public static long minSimTime = 150;
 
         // Support for RealFuels using reflection to check localCorrectThrust without dependency

 Binary files a/Output/KerbalEngineer/KerbalEngineer.dll and b/Output/KerbalEngineer/KerbalEngineer.dll differ