Skip to content

Changes in previous versions

MOARdV edited this page Jun 11, 2018 · 49 revisions

Changes in RasterPropMonitor v0.30.4

For KSP 1.4.1 - 1.4.3

RasterPropMonitor integrates with the following mods to provide enhanced IVA gameplay. None of these mods are required.

  • Chatterer
  • Docking Port Alignment Indicator
  • Ferram Aerospace Research
  • Kerbal Alarm Clock
  • MechJeb
  • Pilot Assistant
  • RealChute

FIXES

  • The inverted MFD problem has been fixed again (accounting for anti-aliasing affecting whether the MFDs are inverted in DX9, DX11, and DX12). Issue #668.

Changes in RasterPropMonitor v0.30.3

For KSP 1.4.1 - 1.4.3

RasterPropMonitor integrates with the following mods to provide enhanced IVA gameplay. None of these mods are required.

  • Chatterer
  • Docking Port Alignment Indicator
  • Ferram Aerospace Research
  • Kerbal Alarm Clock
  • MechJeb
  • Pilot Assistant
  • RealChute

FIXES

  • The inverted MFD problem has been fixed again (accounting for anti-aliasing affecting whether the MFDs are inverted in DX9 and DX12). Issue #665.

Changes in RasterPropMonitor v0.30.2

For KSP 1.4.1 - 1.4.3

RasterPropMonitor integrates with the following mods to provide enhanced IVA gameplay. None of these mods are required.

  • Chatterer
  • Docking Port Alignment Indicator
  • Ferram Aerospace Research
  • Kerbal Alarm Clock
  • MechJeb
  • Pilot Assistant
  • RealChute

FIXES

  • The inverted MFD problem in DX12 has also been resolved. Issue #665.

Changes in RasterPropMonitor v0.30.1

For KSP 1.4.1 - 1.4.3

RasterPropMonitor integrates with the following mods to provide enhanced IVA gameplay. None of these mods are required.

  • Chatterer
  • Docking Port Alignment Indicator
  • Ferram Aerospace Research
  • Kerbal Alarm Clock
  • MechJeb
  • Pilot Assistant
  • RealChute

FIXES

  • The mass of the JSI external camera has been reduced from 40kg to 4kg. Thanks to GitHub user Corax for the recommendation. Issue #661.
  • The Mk1 cockpit has had some prop orientation problems fixed. Thanks to KSP forum user Levelord for the fix.
  • The inverted MFD problem in DX9 has been resolved. Issue #659.

Changes in RasterPropMonitor v0.30.0

For KSP 1.4.1 - 1.4.3 - RPM Build #14726

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required. Versions indicate the version of the mod that RPM was tested against. Strikethrough indicates versions previously known to work that are untested with the current RPM release.

  • Chatterer v0.9.93
  • Docking Port Alignment Indicator v6.7.0
  • Ferram Aerospace Research v0.15.9
  • Kerbal Alarm Clock v3.8.5
  • MechJeb v2.6.1
  • Pilot Assistant v1.13.0
  • RealChute v1.4.4

KNOWN ISSUE

  • Certain MFD components are rendering inverted on DX9 (PFD navball + textures, camera display). Issue #659.

NEW FEATURES

  • Ability to tell RPM to ignore certain parts or part modules in the per-module data tracking. Feature by SerTheGreat. Issue #648.
  • Recompiled and rebuilt shaders for KSP 1.4.x. NOTE: Remove the old installation prior to installing this version to avoid having stale asset bundles. Issue #657.

ATTENTION IVA MAKERS

  • Support for cameraTransform in the PAGE nodes of an MFD has been removed. MFDs using cameraTransform need to be updated to use the JSISteerableCamera background node. Issue #621.

Changes in RasterPropMonitor v0.29.3

For KSP 1.3.1 - RPM Build #14830

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required. Versions indicate the version of the mod that RPM was tested against. Strikethrough indicates versions previously known to work that are untested with the current RPM release.

  • Chatterer v0.9.93
  • Docking Port Alignment Indicator v6.7.0
  • Ferram Aerospace Research v0.15.9
  • Kerbal Alarm Clock v3.8.5
  • MechJeb v2.6.1
  • Pilot Assistant v1.13.0
  • RealChute v1.4.4

FIXES

  • RasterPropMonitor works with MechJeb dev builds #742 and later (but see notes in ATTENTION IVA MAKERS).

NEW FEATURES

  • RPM's per-module data tracking (alternator output, engine performance, etc) can be overridden so RPM ignores certain parts, or ignore certain modules in parts. By user Ser, Issue #648.

ATTENTION IVA MAKERS

  • Due to changes in the MechJeb spaceplane autopilot interface, the following JSIMechJeb features are deprecated. They work with MechJeb 2.6.1 or earlier, and they work with MechJeb dev builds #741 and earlier, but they will have no effect when using later versions of MechJeb: ButtonSpacePlaneHoldHeading, ButtonSpacePlaneHoldHeadingState, SpaceplaneAltitudeProximity, SpaceplaneHoldAltitude, SpaceplaneHoldHeading, SpaceplaneGlideslope, SetSpaceplaneHoldAltitude, SetSpaceplaneHoldHeading, and SetSpaceplaneGlideslope.
  • The use of cameraTransform in the PAGE nodes of an MFD is deprecated. This is an old code path that has been superseded by the JSISteerableCamera background node. MFDs using a cameraTransform need to be updated, since support for this feature will be removed in an upcoming release. Issue #621.

Changes in RasterPropMonitor v0.29.2

For KSP 1.3.1 - RPM Build #13391

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required. Versions indicate the version of the mod that RPM was tested against. Strikethrough indicates versions previously known to work that are untested with the current RPM release.

  • Chatterer v0.9.93
  • Docking Port Alignment Indicator v6.7.0
  • Ferram Aerospace Research v0.15.9
  • Kerbal Alarm Clock v3.8.5
  • MechJeb v2.6.1
  • Pilot Assistant v1.13.0
  • RealChute v1.4.4

FIXES

  • Monitors blank when power is depleted (or, if the MFD is configured to support it, when communications are lost). Issue #645. Thanks to forum member snakeru for reporting.
  • Alternator EC output has been corrected. Issue #646. Thanks to forum member Ser for reporting.

NEW FEATURES

  • A MATH MODULO operator is now available for IVA makers. Issue #614.

ATTENTION IVA MAKERS

  • The use of cameraTransform in the PAGE nodes of an MFD is deprecated. This is an old code path that has been superseded by the JSISteerableCamera background node. MFDs using a cameraTransform need to be updated, since support for this feature will be removed in an upcoming release. Issue #621.

Changes in RasterPropMonitor v0.29.1

For KSP 1.3.1 - RPM Build #13152

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required. Versions indicate the version of the mod that RPM was tested against. Strikethrough indicates versions previously known to work that are untested with the current RPM release.

  • Chatterer v0.9.93
  • Docking Port Alignment Indicator v6.7.0
  • Ferram Aerospace Research v0.15.9
  • Kerbal Alarm Clock v3.8.5
  • MechJeb v2.6.1
  • Pilot Assistant v1.13.0
  • RealChute v1.4.4

FIXES

  • Recompiled for KSP 1.3.1.

NEW FEATURES

  • Relays can now be filtered in the Target menu of the MFD. Issue #639.

Changes in RasterPropMonitor v0.29.0

For KSP 1.3.0 - RPM Build #12445

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required. Versions indicate the version of the mod that RPM was tested against. Strikethrough indicates versions previously known to work that may or may not work now.

  • Chatterer v0.9.93
  • Docking Port Alignment Indicator v6.7.0
  • Ferram Aerospace Research v0.15.8
  • Kerbal Alarm Clock v3.8.5
  • MechJeb v2.6.1
  • Pilot Assistant v1.13.0
  • RealChute v1.4.4

FIXES

  • Recompiled for KSP 1.3.0. Issue #624.
  • Fixed JSILabel crashing some Macs. Issue #631.
  • Fixed JSIVariableLabel and JSISwitchableVariableLabel text orientation. Issue #632.
  • Shaders finally work on Linux distros. Issue #634.
  • JSIVariableAnimators using a power-off animation correctly initialized when starting with depleted power. Issue #635.

OTHER CHANGES

  • Updated asset bundle and shaders. New asset bundle now includes LiberationSans-Regular and LiberationSans-Bold fonts as cross-platform replacements for Arial.

Changes in RasterPropMonitor v0.28.1

For KSP 1.2.2 - RPM Build #22030

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required - they simply provide additional IVA control or information options. Versions indicate the version of the mod that RPM was tested against. Strikethrough indicates versions previously known to work that may or may not work now.

  • Chatterer v0.9.91
  • Docking Port Alignment Indicator v6.5
  • Ferram Aerospace Research v0.15.6.1
  • Kerbal Alarm Clock v3.8.3
  • MechJeb v2.6.0
  • Pilot Assistant v1.13.1
  • RealChute v1.4.1.2

FIXES

  • The mk1 demo cockpit has had its hatch rotated 90 degrees so it doesn't look so odd, thanks to hidude398. Issue #619.
  • Various NREs that slipped into the code. Issue #623, Issue #628.

NEW FEATURES

  • The variables COMMNETCONNECTED, COMMNETSIGNALSTRENGTH, and COMMNETVESSELCONTROLSTATE provide feedback on the vessel's connection with CommNet. Courtesy user Virindi-AC.
  • MFDs may now be disabled when CommNet connectivity is lost. This feature is disabled by default (so it is unchanged from previous RPM behavior). Also courtesy user Virindi-AC.

KNOWN ISSUES

  • Ferram Aerospace Research integration is not confirmed (FAR for KSP 1.2.x has not been released). Issue #593.
  • Pilot Assistant integration may or may not work (unable to test locally). Issue #593.
  • Text rendering quality may or may not be good on some props (have not reproduced it locally). Issue #596.

Changes in RasterPropMonitor v0.28.0

For KSP 1.2.2 - RPM Build #18220

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required - they simply provide additional IVA control or information options. Versions indicate the version of the mod that RPM was tested against. Strikethrough indicates versions previously known to work that may or may not work now.

  • Chatterer v0.9.91
  • Docking Port Alignment Indicator v6.5
  • Ferram Aerospace Research v0.15.7.2
  • Kerbal Alarm Clock v3.8.3
  • MechJeb v2.6.0
  • Pilot Assistant v1.13.0 (untested)
  • RealChute v1.4.1.2

BREAKING CHANGE

  • ATTENTION IVA MAKERS: Due to KSP's change from TextMesh to TextMeshPro, the color tags (eg [#00ff00] must be changed to an HTML-style format <color=#00ff00>).

CHANGES

  • Patches for HullCam VDS are now being maintained in the HullCam mod, so the RPM external camera patches have been removed. Issue #602.

FIXES

  • RPM works with -force-glcore. Issue #521.
  • Fixed an error with global variables causing null dereference exceptions. Issue #560.
  • Compatible with KSP 1.2. Issue #592, #601.
  • Included fonts were re-exported to their correct size to fix the blurry fonts. Issue #596.
  • A bug in reflection that was exposed by Contract Configurator has been fixed. Issue #600.
  • The texture and config for the JSI Primitive External Camera have been updated to work with the new Squad model. Issue #611.

KNOWN ISSUES

  • Ferram Aerospace Research integration is not confirmed (FAR for KSP 1.2.x has not been officially released). Issue #593.
  • Pilot Assistant integration may or may not work (unable to test locally). Issue #593.
  • Text rendering quality may or may not be good on some props (have not reproduced it locally). Issue #596.

Changes in RasterPropMonitor v0.27.1

For KSP 1.1.3 - RPM Build #19157

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required - they simply provide additional IVA control or information options. Versions indicate the version of the mod that RPM was tested against. Strikethrough indicates versions previously known to work which may not work now.

  • Chatterer v0.9.90
  • Docking Port Alignment Indicator v6.4
  • Ferram Aerospace Research v0.15.6.1
  • Kerbal Alarm Clock v3.7.1
  • MechJeb v2.5.8
  • Pilot Assistant v1.12.5
  • RealChute v1.4.1.1

Fixes

  • RADARALTVERTSPEED no longer gets stuck reporting NaN or Infinity. Issue #575.
  • JSISetInternalCameraFOV now correctly re-hides Kerbals when exiting / entering IVA. Issue #582.

New Features

  • JSIVariableAnimator has an experimental mode that may reduce overhead, although some props (generally some types of blinking lights) will behave differently. This mode may be enabled by editing rpm-config.cfg and adding UseNewVariableAnimator = true to the config file. Feedback on this change would be appreciated. Issue #564.
  • CUSTOM_ variables can test inputs for being NaN or Inf. Issue #580.
  • TARGETSAMESOI returns 1 if the current target is in the same SoI as the vessel, or 0 if it is not, or if there is no target. Issue #588.
  • Courtesy linuxgurugamer, two newer Hullcam models now work with RPM's ExtCam feature. Issue #589.

Known Issues

  • Running KSP with -force-glcore causes RPM shaders to fail to load, resulting in pink blocks instead of text (along with other visual artifacts). Issue #521.
  • Nav waypoint markers no longer appear on the PFD navball. Issue #539.

Changes in RasterPropMonitor v0.27.0

For KSP 1.1.3 - RPM Build #35259

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required - they simply provide additional IVA control or information options. Versions indicate the version of the mod that RPM was tested against. Strikethrough indicates versions previously known to work which may not work now.

  • Chatterer v0.9.8
  • Docking Port Alignment Indicator v6.4
  • Ferram Aerospace Research v0.15.6.1
  • Kerbal Alarm Clock v3.7.1
  • MechJeb v2.5.8
  • Pilot Assistant v1.12.5
  • RealChute v1.4.1.1

Major Changes

  • Persistent variables and RPM's variable query pipeline have changed. Ships in existing save games will "forget" settings, so you will need to flip a few switches to get everything back to where it was.
  • The shell modules for JSITransparentPod and JSINonTransparentPod that provided warnings that obsolete modules were installed have been removed, since they caused problems for other mods.
  • The foundations of this mod were redesigned with this update. For most users, performance should be improved (particularly with complex IVAs, such as alexustas's ALCOR lander and Mk1-2 IVA - the example IVA included in this mod will not be impacted much).

Fixes

  • Various problems with docking and undocking have been resolved. Issue #524.
  • JSIPilotAssistant.SetThrottleMode no longer incorrectly tries to change the horizontal hold mode; solution identified by DeputyLOL. Issue #559.

New Features

  • JSISteerableCamera now supports post-processing effect shaders with configurable parameters. Current effects include grayscale (aka black-and-white), greenscale (aka night vision), a blur effect, and a noise effect (to simulate static in an analog television signal). Additional effects are planned. Issue #285.
  • The JSIHeadsUpDisplay ladder can now be shifted from the center of the window by using the config field horizonOffset. In addition, it can be turned on and off using horizonEnableVariable and horizonEnableRange. Issue #418.
  • JSIInternalRPMButtons GetEnginesPrimaryMode and SetEnginesPrimaryMode reports whether any multimode engines are running in primary mode, and toggles all active MME, respectively. Throttle setting can now be set using a numeric value. Thrust reverser animations can now be tracked and controlled through JSIInternalRPMButtons. Issue #430.
  • JSISetInternalCameraFOV can be used to control hiding a Kerbal's head or entire body while in IVA, with per-seat settings. Issue #437.
  • RasterPropMonitor now uses an AssetBundle to contain all of the shaders and fonts used by the mod, which brings RPM into compliance with Unity 5. Issue #477.
  • The JSILabel module replaces JSIVariableLabel and JSISwitchableVariableLabel with more configuration options, including font selection and alignment, as well as non-emissive text. Issue #486.
  • Concurrent with the addition of JSILabel, RasterPropMonitor now bundles three fonts for use with JSILabel specifically for IVA prop use. Licenses are included in the distribution.
  • Variables CURRENTENGINEFUELFLOW and MAXENGINEFUELFLOW report the fuel flow rate for all active engines in grams/second. Issue #522.
  • JSIInternalRPMButtons now has the methods RecoverVessel and CanRecoverVessel. The first method will recover a landed craft, and the second returns true when a craft can be recovered. Issue #525.
  • JSIVariableAnimator can apply a modulo operator to animations. This is principally valuable for props that have an animated sweep hand that rotates more than once, such as the hands of altimeters. Using this operator allows the hands to return to zero immediately, instead of having to "unwind" several laps. Issue #526.
  • Kerbals can be kicked out of the craft (err, "sent on EVA") using the Target Menu in the MFD. Issue #530.
  • Many props can use custom named colors. This makes it easy for an IVA maker to change lighting colors by editing a value in one place instead of many. Overrides for the named colors can be placed in the RasterPropMonitorComputer module, allowing per-part changes to those colors without having to clone parts. Issue #532.
  • ELECOUTPUTALTERNATOR, ELECOUTPUTFUELCELL, ELECOUTPUTGENERATOR and ELECOUTPUTSOLAR report power production from alternators, fuel cell (ModuleResourceConverter), generators, and solar panels, respectively. Issue #540.
  • CURRENTINTAKEAIRFLOW reports the airflow of all enabled intakes in grams/second. Issue #541.
  • Deployable solar panels can now be controlled through JSIInternalRPMButtons, and there are queries to determine if any deployable panels may be deployed, and whether any may be retracted. Issue #545.
  • PERIODRANDOM_# functions the same as RANDOM, except the value is updated every '#' update ticks, allowing for a low-frequency random number (good for blinking lights). Issue #556.
  • ORBITBODYINDEX and TARGETBODYINDEX return the index in the FlightGlobals table for the body the vessel is currently orbiting and the index for the currently-targeted celestial body (or -1 if there is no target, or it's not a body). The indices are written to the log when RasterPropMonitor debug logging is enabled. Issue #561.
  • Deployable landing gear status and position can be queried through JSIInternalRPMButtons. Wheel damage state, repairability state, and current stress can all be queried through JSIInternalRPMButtons, as well. Likewise, the brake force tweakable can be queried and changed. Issue #562.
  • RANDOMNORMAL returns a random number that approximates a normal distribution with a mean of 0 and a stddev of 1.
  • Monitors can use buttons located off-prop to select pages by including prop ID numbers to provide more flexibility in IVA design.

Miscellaneous

  • Updated to ModuleManager 2.6.25.

Known Issues

  • Running KSP with -force-glcore causes RPM shaders to fail to load, resulting in pink blocks instead of text (along with other visual artifacts). Issue #521.
  • Nav waypoint markers no longer appear on the PFD navball. Issue #539.

Changes in RasterPropMonitor v0.26.0

For KSP 1.1.2 - RPM Build #19575

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required - they simply provide additional IVA control or information options. Versions indicate the version of the mod that RPM was tested against. Strikethrough indicates versions previously known to work which may not work now.

  • Chatterer v0.9.8
  • Docking Port Alignment Indicator v6.3
  • Ferram Aerospace Research v0.15.6.1
  • Kerbal Alarm Clock v3.6.1
  • MechJeb v2.5.7
  • Pilot Assistant v1.12.5
  • RealChute v1.4.1.1

Major Changes

Fixes

  • NRE / missing formatting for custom RPM formats in JSIVariableLabel. Issue #506.
  • Mk2 Inline IVA disabled, since the stock IVA was updated. If anyone wants to update the RPM IVA, feel free. Pull request #512.
  • Updated to ModuleManager 2.6.24.

New Features

  • RPM can now set and get the speed units and reference speeds for Pilot Assistant, as well as toggle pausing PA. Issue #449.
  • PODMAXSKINTEMPERATURE and PODMAXSKINTEMPERATUREKELVIN report the max skin temperature of the pod in Celsius and Kelvin, respectively. Issue #518.
  • AMBIENTTEMPERATURE and AMBIENTTEMPERATUREKELVIN report the ambient temperature of the air outside the craft (ignoring any heating effects). Issue #518.
  • ORBITBODYSURFACETEMP and ORBITBODYSURFACETEMPKELVIN provide the sea-level (or datum) temperature of the body being orbited. Issue #518.
  • TARGETBODYSURFACETEMP and TARGETBODYSURFACETEMPKELVIN do the same thing for a targeted world. Issue #518.
  • TARGETISPOSITION returns 1 when the current target is a position target, -1 if there is no target, or 0 if there is a target, but it is not a position target. Issue #520.

Known Issues

  • Running KSP in Windows with -force-glcore causes RPM shaders to fail to load, resulting in pink blocks instead of text (along with other visual artifacts). Issue #521.
  • Undocking behaves badly (controls 'forget' what setting they were on, etc).

RasterPropMonitor v0.25.1

For KSP 1.1 - RPM Build #25955

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required - they simply provide additional IVA control or information options. Versions indicate the version of the mod that RPM was tested against. Strikethrough indicates versions previously known to work which may not work now.

  • Chatterer v0.9.8
  • Docking Port Alignment Indicator v6.2.1 BETA
  • Ferram Aerospace Research v0.15.6
  • Kerbal Alarm Clock
  • MechJeb v2.5.7
  • Pilot Assistant v1.12.5
  • RealChute v1.4

Fixes

  • Misaligned text on some monitor pages has been fixed (faulty end-of-line processing).
  • Resource queries on resources that are not present no longer lead to exceptions. Issue #494.
  • StringProcessor.FormatString wraps all formatting steps in try blocks to prevent unhandled exceptions. Issue #501.
  • Changed shader configuration to fix the Pink Blocks bug with some OpenGL renderers. Issue #503.

New Feature

  • External cameras now have a near plane distance of ~37cm, instead of 400cm, allowing nearby objects to obscure their view. Issue #505.

RasterPropMonitor v0.25.0

For KSP 1.1

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required - they simply provide additional IVA control or information options. Versions indicate the version of the mod that RPM was tested against. Strikethrough indicates versions previously known to work which may not work now.

  • Chatterer v0.9.8
  • Docking Port Alignment Indicator v6.2.1 BETA
  • Ferram Aerospace Research v0.15.6
  • Kerbal Alarm Clock
  • MechJeb v2.5.7
  • Pilot Assistant v1.12.5
  • RealChute v1.4

Breaking Changes

  • RPM Assembly versioning now follows normal conventions, where the assembly version and assembly file version are linked. This only affects mods that hard-link to the RPM code without using KSPFileAssembly (which is fixed a 0, 17). If you're not a plugin writer, and you don't know what this means, you probably don't need to worry about it.
  • JSITransparentPod is now obsolete (sorry for the short notice). Support for it has been removed from RasterPropMonitor. To replace it, JSIAdvTransparentPod, in its own DLL, is now included in the RPM distribution. The new module takes advantage of the stock cutaway functionality. Courtesy JPLRepo. Issue #476.
  • Not really breaking, per se, but the way persistent variables are stored has changed. Craft that are in-flight will find some/many controls have been reset. I recommend recovering crewed vessels before installing if updating a save from KSP 1.0.5 or earlier. Issue #482.

Fixes

  • KSP 1.1 compatibility. Issue #474.
  • Atmospheric density computations used for EASPEED and IASPEED have been updated to match FAR computations. Issue #459.
  • Engine temperature variables (HOTTESTENGINE*) no longer ignore internal temperature (stupid copy-paste bug). Issue #460.
  • Fixes for empty vessel descriptions to prevent null derefs courtesy phroggster. Issue #466.
  • Fixed not-working "NO SIGNAL" bug in background camera pages, courtesy phroggster.

New Features

  • RPM can now interact with Chatterer. RPM knows when the pod is talking to Capcom (or sending an SSTV) and when Capcom is talking to the pod. Insta-chatter can be triggered by IVA button push. Issue #292.
  • JSICallbackAnimator provides most of the functionality of JSIVariableAnimator, but instead of polling its variable, the RasterPropMonitor vessel processor notifies JSICallbackAnimator that the variable has changed, reducing the processing workload. Issue #343.
  • SELECT variables can contain string literals, not just numbers and defined variables. Issue #422.
  • There is a new Mk1 Cockpit IVA courtesy DeputyLOL (note: the Mk1 inline cockpit has not been updated). Issue #428.
  • Many new variables related to MNODE (decomposition of the maneuver into the orbital basis components, post-maneuver orbital parameters, and post-maneuver target intercept parameters). Issue #451.
  • The transfer function in JSIActionGroupSwitch can transfer directly from arbitrary defined and custom variables. Issue #452.
  • MATH variables support POWER (x^y), ANGLEDELTA (difference between angles in degrees), and ATAN2 (arctan), courtesy DeputyLOL. Issue #465.
  • JSIVariableLabel text coloring from a variable can now be controlled automatically, instead of having to use hash colors [#RRGGBBAA] in the formatter string to change the text. This reduces the overhead on those labels when the only thing the formatting string is used for is to change the text color. Issue #486.
  • RasterPropMonitor now has a config file to control enabling extensive message logging. It also contains an option to track variable query frequency (profiling / workload data). Issue #488.
  • New TIMEWARP meta-variables tell you when the craft is warping, and what the current warp rate is. Issue #498.

Miscellany

  • ModuleManager updated to 2.6.22
  • Debug log spamming has been disabled by default. People requiring support will need to enable RPM logging before submitting logs. Issue #484.
  • Multiple changes to reduce the amount of string duplication per-update with monitors. Should help reduce garbage collection, maybe help with performance as well in glass cockpits. Issue #487.

RasterPropMonitor v0.24.2

For KSP 1.0.5

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required - they simply provide additional IVA control or information options. Versions indicate the version of the mod that RPM was tested against.

  • Docking Port Alignment Indicator v6.2
  • Ferram Aerospace Research v0.15.5.2
  • MechJeb v2.5.5
  • Pilot Assistant v1.12.3
  • RealChute v1.3.2.4

Fixes

  • Log spamming when using MATH_ subtraction variables has been eliminated. Issue #450.

New Features

  • Configurable horizontal bars in JSIHUD, allowing for scrollable displays other than the heading strip. Issue #329.
  • MAPPED variables may now use variables for the mapped range, not just numbers. Issue #456.

RasterPropMonitor v0.24.1

For KSP 1.0.5

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required - they simply provide additional IVA control or information options. Versions indicate the version of the mod that RPM was tested against.

  • Docking Port Alignment Indicator v6.2
  • Ferram Aerospace Research v0.15.5.2
  • MechJeb v2.5.3 dev build 520
  • Pilot Assistant v1.12.1
  • RealChute v1.3.2.4

Fixes

  • HORZSPEED no longer generates a NaN sometimes (like when sitting on the runway). Issue #431.
  • RPM no longer generates exceptions during menu load. Issue #433.
  • Fixed some precision problems when looking at large numbers (such as UTSECS) as part of MATH_ custom variables. Issue #440.
  • Looping audio continues to play when exiting / re-entering IVA. Issue #446.
  • JSIRadar no longer tries to lock on to targets when it's not on the active vessel.

New Features

  • A JSIActionGroupSwitch can now be configured to function as a momentary switch by setting momentarySwitch = true in its config. A momentary switch is 'on' only which the switch is held. Issue #312.
  • JSIPilotAssistant allows RasterPropMonitor to interact with the Pilot Assistant mod. Issue #368.
  • TARGETPLANELAUNCHTIMESECS provides a countdown until a target's orbital plane crosses the craft's launch site. Issue #421.
  • JSIInternalRPMButtons methods TrimNeutralState, SetAllTrimNeutral, SetPitchTrimNeutral, SetPitchTrim (and their Roll and Yaw siblings) allow setting trim, as well as determining if the trim parameters are all near neutral. Issue #434.
  • TIMEOFDAYSECS returns the time of day (the hours, minutes, and seconds of UT), correctly calibrated to Kerbin time or Earth time, depending on the game's configuration. Issue #436.
  • HOTTESTPARTTEMP, HOTTESTPARTMAXTEMP, HOTTESTPARTTEMPRATIO and HOTTESTPARTNAME provide the hottest part's current temperature (in K), its maximum temperature, its temperature ratio (current / max), and the name of the part. "Hottest" is defined as the part whose temperature is closest to the max temp. It checks skin temperature as well as internal temperature. HOTTESTENGINETEMP, HOTTESTENGINEMAXTEMP, and HOTTESTENGINETEMPRATIO do the same thing, but only considering engines (parts with ModuleEngines or ModuleEnginesFX). Issue #438.
  • TIMETOATMOSPHERESECS returns the time until the next time the craft crosses the edge of the atmosphere, or 0 if the craft doesn't enter / exit the atmosphere. Issue #447.
  • JSIMechJeb:MatchVelocities allows MechJeb to generate a "match velocities at closest approach" maneuver. JSIMechJeb:MatchVelocitiesState returns true when MJ can generate such a maneuver.
  • Resource consumption (SYSR_*DELTA and SYSR_*DELTAINV) are updated every time other values are updated, so gauges tracking resource consumption are much more responsive.

Miscellany

  • Mk1 cockpits no longer have RPM-enabled IVAs, since the stock IVAs have changed. The config files have been renamed to .noconfig so KSP doesn't try to load them.
  • Tinkering to possibly improve behavior and performance.

Known Issues

  • Using a MATH_ subtraction variable will spam the log with debug messages. Issue #450.
  • RPM is unable to set speed in Pilot Assistant v1.12.3. Issue #453.

RasterPropMonitor v0.24.0

For KSP 1.0.5

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required - they simply provide additional IVA control or information options. Versions indicate the version of the mod that RPM was tested against.

  • Docking Port Alignment Indicator v6.2
  • Ferram Aerospace Research v0.15.5.2
  • MechJeb v2.5.3 dev build 520
  • RealChute v1.3.2.4

Fixes

  • KSP 1.0.5 compatibility
  • Fix MechJeb SetSmartass method so it works again. Issue #417.

New Features

  • JSIMechJeb.SetLaunchInclination and .GetLaunchInclination can be used to control launch inclination.
  • JSIParachute.ParachutesSafeState now works with RealChute (requires RealChute 1.3.2.4). Issue #296.
  • JSIParachute.ParachuteSafetyValue returns 1 if all parachutes may be deployed safely, 0 is some of them may be, and -1 if none of them may safely deploy.
  • JSINavBall is a replacement for the InternalNavBall module that allows a variable to control whether the navball is enabled or not, and provides a parameter to control how quickly the navball can move. Issue #403.

New Variables

  • ACCELPROGRADE, ACCELRADIAL, ACCELNORMAL decompose the craft's current acceleration into the local orbit coordinate system. ACCELFORWARD, ACCELRIGHT, ACCELTOP do the same, but within the craft's own local frame of reference. ACCELSURFACEPROGRADE provides the surface velocity relative acceleration. Issue #420.
  • The SYSR_ suffix DEPLETED returns 1 when a craft or stage has capacity for a resource, but the resource is effectively depleted (< 0.01 units).
  • IASPEED returns indicated air speed in m/s.

Miscellany

  • TIMETONEXTAPSIS returns 0 instead of NaN when the orbit is invalid.
  • ATMOSPHEREDEPTH uses the stock value (same as the atmosphere gauge) when it is available. Issue #426.
  • Updated to MM 2.6.13 (included).

Known Issues

  • The new Mk1 cockpit does not have an RPM IVA. I don't have time to work on one soon, so if someone wants to share their IVA, I'll be happy to incorporate it. Issue #428.

RasterPropMonitor v0.23.2

For KSP 1.0.4

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required - they simply provide additional IVA control or information options. Versions indicate the version of the mod that RPM was tested against.

  • Docking Port Alignment Indicator v6.2
  • Ferram Aerospace Research v0.15.5.1
  • MechJeb v2.5.3
  • RealChute v1.3.2.3

Fixes

  • Text rendering colors in OpenGL matches (closely enough) colors in DirectX. Issue #318.
  • JSIHUD ladder depth has been nudged slightly so vertical / horizontal bars are above it, instead of coplanar with it. Issue #328.
  • JSIRadar's ability to automatically target a docking port is now functional. Issue #409.
  • The MechJeb RPM page works again. Issue #410.
  • MechJeb Ascent Autopilot works with MJ dev builds 514 and later. Issue #413.

RasterPropMonitor v0.23.1

For KSP 1.0.4

Fixes

  • InvalidCastException in JSIInternalBackgroundNoise is fixed (and several other potential ICE errors were fixed as well). Issue #383
  • Wiki documentation for JSINumericInput's switchSound and switchSoundVolume were corrected. Issue #384.
  • JSIMechJeb SpaceplaneHoldHeading* and SpaceplaneAutoland* now work (an overlooked typo in the name caused them to fail). Issue #385.
  • Error in JSIHeadsUpDisplay where the horizon texture was not sized correctly in the window has been fixed. Issue #386.
  • JSIActionGroupSwitches using plugin state methods failed to respond correctly to forced shutdown events. Issue #392.
  • Plugin handlers were failing to initialize. Issue #393.
  • NULLREF errors in the VAB with transparent pods have been fixed, courtesy JPLRepo.
  • Problems with IVA portraits and transparent pods have been fixed, also courtesy JPLRepo.

New Variables

  • YAWRATE, PITCHRATE, and ROLLRATE report the rate of change (degrees per second) on each axis based on an inertial reference (vessel.angularVelocity). Issue #387.
  • SELECT_ variables (see Custom Variables) return different variables depending on the evaluation of control variables (similar to JSIVariablePageTextSwitcher). Issue #389.
  • THRUSTMAXRAW, EFFECTIVERAWTHROTTLE return THRUSTMAX and EFFECTIVETHROTTLE when ignoring the thrust limit tweakable on the engines.
  • THRUSTLIMIT returns the current setting of the thrust limit tweakable (as a weighted average if multiple engines have different settings).
  • JSIInternalRPMButtons now has GetSASMode and SetSASMode to allow directly setting SAS mode using JSINumericInput.

New Features

  • JSIActionGroupSwitch, JSIInternalBackgroundNoise, and RasterPropMonitor all now have a resourceName variable used to determine if there is sufficient power to run the prop (when the option needsElectricCharge is true). This resourceName uses a defined variable (by default, 'SYSR_ELECTRICCHARGE'). Issue #397.
  • Related, the JSIVariableAnimator now allows specifying a resourceName for the consumption of resources. In this case, it's the resource's internal name ('ElectricCharge' if none is specified). Issue #397.
  • JSIVariableAnimator VARIABLESET groups can use maxRateChange to control how quickly an animation can transition from off to on. This value indicates how many times per second the animation can switch from full on to full off (and vice versa), so a '2.0' means it takes 1/2 second for the animated object to go from off to on. This field can be used to supply effects like an incandescent bulb fade to a color animation, and to simulate mechanical limits on 'physical' props like gauge needles. Issue #402.
  • MATH_ variables now can return MAXINDEX and MININDEX, which return the index (starting at 0) of the maximum or minimum value, respectively. Issue #407.
  • JSIActionGroupSwitch now has optional parameters loopingSound and loopingSoundVolume that can play an audio loop while the switch is on. This sound can be used in addition to switchSound. Issue #408.

Miscellaneous

  • Internal redesign of variable fetching logic to (hopefully) reduce CPU demand during updates.

RasterPropMonitor v0.23.0

For KSP 1.0.4.

Supported Mod Versions

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required - they simply provide additional IVA control or information options. Versions indicate the version of the mod that RPM was tested against.

Fixes

  • The HUD ladder texture and navball texture have been resized to help with some video card / driver combinations that do not like their dimensions. Appears to resolve Issue #298 and Issue #355.
  • YAW* variables now report values in the range of [-180, 180], so you can tell when the direction you're interested in is behind you.

New Features

  • JSIKAC (see Action handlers) provides access to some Kerbal Alarm Clock information (specifically, information on the current vessel's alarm count and next alarm). Issue #144.
  • JSIRadar (see Part modules) is a new PartModule that will automatically target vessels. There are many options to tune the behavior (range, scan angle, and optional rules for maintaining target lock). Issue #336.
  • JSIInternalRPMButtons (see Action handlers) DockUndock and DockDetach allow a button / switch to undock or release something attached to a docking port. DockDocked, DockAttached, and DockReady provide status. RadarEnable and RadarEnableState provide RPM control over JSIRadar modules. Issue #336.
  • Triggered Events can be defined to cause RPM to trigger events automatically when proper conditions are met. Issue #321.
  • JSIVariablePageTextSwitcher (see Page handlers) now supports multiple pages with separate conditions on each. Issue #344.
  • Custom variables that can do math operations on multiple defined variables (add, subtract, multiply, divide, max, and min), as well as a couple of predefined constants to convert meters to feet and m/s to knots. Issue #353.
  • Waypoint navigation markers appear on the Primary Flight Display (MFD NavBall). Issue #152.
  • Transparent pods Part modules now have a button on the part menu (right-click menu) in the VAB and during flight to control whether the pod IVA is always drawn, never drawn, or drawn only when it is the active reference part or on mouseover. Transparent Pods also have a tuning option in the config to control the distance where they will stop rendering their IVA (no sense drawing IVA when the craft is too far away to see the IVA). Issue #361. Courtesy JPLRepo, who also made a few other performance tweaks in the transparent pod code as well.
  • TIMETOIMPACTSECS will use MechJeb's landing computer (when MechJeb is installed and the computer enabled) to predict the time to impact. This value can also be queried with JSIMechJeb:GetLandingTime.
  • The RPMVesselComputer can be told to update variables by external mods using reflection to call the public method RPMVesselComputer.UpdateVariables(). Courtesy ndevenish.
  • JSINumericInput (see Prop Modules) allows for persistent variables to be changed by button presses, which dovetails in with...
  • JSIActionGroupSwitch (see Prop Modules) now has a transfer actionName, which allows the value stored in a persistent variable to be read from a plugin method or written to a plugin method.
  • JSIMechJeb (see Action handlers) can now enable spaceplane guidance autoland and hold altitude/heading. It is also able to provide the current target altitude and heading, as well as glideslope, and it can provide a simple yes/no response to whether the aircraft is within 500 meters of the target altitude. In addition, the new transfer action in JSIActionGroupSwitch can be used to set ascent guidance target altitude, spaceplane hold heading, spaceplane hold altitude, and spaceplane landing glideslope.

New Variables

  • New variables LIFT, DRAG, LIFTACCEL, and DRAGACCEL report the lift and drag forces in kN and m/s^2. These values work with stock aerodynamics and FAR.
  • TARGETLAUNCHTIMESECS can be used to count down for a timed launch when a craft is targeted. It is roughly tuned for a low-to-mid altitude target over Kerbin.
  • YAWSURFPROGRADE, YAWSURFRETROGRADE and their PITCH companions join the other YAW* and PITCH* variables.
  • RADARALTVERTSPEED provides a smoothed measure of the vertical speed as measured by the radar altimeter. Be aware that radar altitude is very noisy, especially at higher speed over land.
  • MAXISP reports the weighted maximum ISP of enabled engines (it can be used with REALISP to determine when engines are below their maximum efficiency).

Miscellaneous

  • MFD button configs have been updated for new SCANsat v14.2 features, courtesy DMagic. These will not affect the stock MFDs, but it provides a reference if you're going to add SCANsat to a different MFD.
  • The JSIGimbal plugin has been removed. GimbalLock and GimbalLockState are part of JSIInternalRPMButtons. A backwards-compatibility map to support JSIGimbal will remain available for a couple of releases, so please update any props you have that currently use JSIGimbal.
  • Many, many internal changes. Of note for modders writing plugins that interface with RPM, you no longer need a PersistenceAccessor to call ProcessVariable().

RasterPropMonitor v0.22.2

For KSP 1.0.4.

Supported Mod Versions

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required - they simply provide additional IVA control or information options. Versions indicate the version of the mod that RPM was tested against.

Fixes

  • Initialization errors after undocking in certain circumstances have been fixed. Issue #345.

Known Issues

  • Some flavors of Linux 64-bit choke on a couple of the DDS images in this package. Issue #298.

RasterPropMonitor v0.22.1

For KSP 1.0.4.

Supported Mod Versions

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required - they simply provide additional IVA control or information options. Versions indicate the version of the mod that RPM was tested against.

New Variables

  • YAWNODE, PITCHNODE, YAWTARGET, PITCHTARGET now report the yaw and pitch angles between the front of the craft and the next maneuver node or the target. If a node doesn't exist or there is no target, the variables report 0.

Fixes

  • External plugins may successfully access RPM variables. Pull request #338 courtesy GitHub user ndevenish.
  • HEATSHIELDTEMPERATUREFLUX now works (it was named incorrectly in the code). Issue #337.
  • AoA and sideslip markers on the HUD now work correctly. Issue #335.

Known Issues

  • Some flavors of Linux 64-bit choke on a couple of the DDS images in this package. Issue #298.

RasterPropMonitor v0.22.0

For KSP 1.0.4.

Supported Mod Versions

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required - they simply provide additional IVA control or information options. Versions indicate the version of the mod that RPM was tested against.

Fixes

  • Switching from JSITransparentPod-enabled craft to JSINonTransparentPod craft no longer leaves IVA visible under some circumstances. Courtesy forum user JPLRepo.
  • The JSIHeadsUpDisplay optional camera has been restored. Issue #320.

New Features

  • JSIInternalRPMButtons now has ButtonPrecisionMode and ButtonPrecisionModeState to allow props to switch precision control mode on and off. Issue #306.
  • HUD vertical bars can now be configured with enablingVariable and enablingVariableRange to control when the vertical bar is visible. Issue #311.
  • TARGETALTITUDE now reports the altitude of celestial bodies when the active vessel is not orbiting the body. Issue #305.
  • JSIParachute now has ParachuteSafeState, which reports true if all parachutes may safely deploy (NOTE: this feature is limited to stock parachutes at this time; RealChute parachutes require changes to RealChute). Issue #296.
  • Computations and updates have been moved to a VesselModule. This may help performance on complex spacecraft where multiple RPM-enabled IVAs are present. Issue #282.
  • NAND and NOR operations now work for Custom Variables. Issue #327.
  • JSISASMenu now has a menuTitleFormatString for customizing the menu display. Issue #326.
  • The HUD ladder and heading bar may use custom textures for the prograde markers. Issue #322.
  • Generators and Resource Converters that generate electricity may be controlled via JSIInternalRPMButtons:ButtonEnableElectricGenerator (and queried with ButtonEnableElectricGeneratorState). Issue #332.

New Variables

  • PRECISIONCONTROL returns 1 when the inputs are configured for precision control (the KSP UI shows blue arrows), and 0 when precision control is off (default orange arrows). Issue #306.
  • PITCHPROGRADE, PITCHRETROGRADE, ..., YAWPROGRADE, YAWRETROGRADE, ... new variables provide the pitch and yaw angles for all six cardinal orbital directions relative to the craft's nose. Issue #269.

Miscellany

  • RasterPropMonitor now includes ModuleManager 2.6.7.
  • Other (major) internal tweaks / refactoring.

Known Issues

  • Some flavors of Linux 64-bit choke on a couple of the DDS images in this package. Issue #298.
  • AoA and sideslip markers on the HUD are inaccurate when banking. Issue #335.

RasterPropMonitor v0.21.2

For KSP 1.0.4.

Supported Mod Versions

RasterPropMonitor integrates with the following mods, providing additional control and information options when these mods are available. None of these mods are required - they simply provide additional IVA control or information options. Versions indicate the version of the mod that RPM was tested against.

Fixes

  • Assorted Null Reference Exceptions (including Issue #307).
  • Props sometimes don't start until you click something (Issue #308).
  • The HUD ladder no longer draws outside of its bounds (Issue #272).
  • The HUD now correctly says kPa instead of Pa for dynamic pressure.

New Features

  • JSIActionGroupSwitch now includes an optional config field refreshRate like many other prop configs.
  • The ability to query spoiler state and flap position from FAR, along with the ability to toggle spoilers and adjust flaps, is available using FAR v0.15.4.

Known Issues

  • The 64 bit version of KSP in Linux chokes on two of the DDS textures in this package. Issue #298.

RasterPropMonitor v0.21.1

For KSP 1.0.4.

Supported Mod Versions

Fixes

  • Various bugs related to MechJebRPM and JSIFAR have been fixed. Issue #293.
  • The JSI external camera now can be found in the basicScience tech node instead of scienceTech. Thanks to forum user Yemo for pointing out the tech tree change.

New Features

  • The ability to query spoiler state and flap position from FAR, along with the ability to toggle spoilers and adjust flaps. At the present, this requires building a dev version of FAR (it is unsupported in the latest released version of FAR). Issue #280.

Miscellany

  • A couple of minor tweaks were done to text rendering.

Known Issues

  • The HUD ladder draws outside its bounds (drawing on the vertical strips / heading strip) when rolled. Issue #272.
  • The 64 bit version of KSP in Linux chokes on two of the DDS textures in this package. Issue #298.

RasterPropMonitor v0.21.0

For KSP 1.0.4.

Supported Mod Versions

Breaking Changes

  • JSIHeadsUpDisplay has been completely rewritten. Existing HUD configs written by other authors will have to be updated to the new format, or the HUD will only partially work. One benefit of the change is that the "black HUD textures in OpenGL" bug is dead.
  • JSIPrimaryFlightDisplay has been completely rewritten, as well. Existing PFD (navball) configs will need to be updated, or you won't see much of anything. Static Overlay textures have changed, as well (they now should be sized to match the size of the screen).

New Variables

  • PERIOD_#HZ - a customizable periodic variable that toggles from 0 to 1 at the frequency specified by the '#' - for instance, PERIOD_2HZ toggles 0-1-0-1 every game second. Any positive number may be used for the '#'.
  • PODSKINTEMPERATURE - reports the skin temperature of the current command pod.
  • When MechJeb is installed, PREDICTEDLANDINGLATITUDE, PREDICTEDLANDINGLONGITUDE, and PREDICTEDLANDINGALTITUDE will tell you where your vessel is likely to land. All three return 0 if MJ is not installed or landing predictions are unavailable. Issue #253.
  • SCIENCECOUNT - a count of the number of experiments stored on the vessel, courtesy Tahvohck.
  • TARGETLATITUDE, TARGETLONGITUDE - these are aliases for LATITUDETGT and LONGITUDETGT.
  • TERMINALVELOCITY reports the terminal velocity at the vessel's current location. It's not useful in space.

New Features

  • MechJebRPM.dll is no longer required. RPM will interface with MechJeb 2.5.2 without requiring a separate DLL. If you are installing this version of RPM over an older version, please delete MechJebRPM.dll and BundledVariableHandlers.cfg. Issue #251.
  • MechJebRPMButtons now supports activating MechJeb's docking autopilot through ButtonDockingGuidance() and ButtonDockingGuidanceState(). Issue #253.
  • JSIGimbal is now available for IVA developers. At present, it supports the GimbalLock action and GimbalLockState state method.
  • Related to MechJebRPM.dll no longer being needed: RPM will now automatically use MechJeb for some variables (DELTAV, DELTAVSTAGE, for instance), instead of using RPM's own internal computations.
  • When FAR is installed, RPM will use FAR for TERMINALVELOCITY and DYNAMICPRESSURE.
  • A JSIVariableAnimator using loop animations can now specify a "stop animation" using stopAnimationName. When specified, this animation is called instead of stopping the "on" animation.
  • JSISASMenu is now available. This is a simple menu that allows toggling SAS as well as setting the SAS mode. It is available on the default MFD as an alternate autopilot page. Press the autopilot button to switch between MechJeb and SAS control.
  • Formatting prefixes U2K (units to kilo-units) and U2M (units to milli-units) have been added to apply fixed scaling to defined variables. U2K rescales the value by 1/1000 (for instance, it will convert ALTITUDE from meters to kilometers), while U2M rescales the value by 1000 (converting DYNAMICPRESSURE from kPa to Pa). Issue #278.

Fixes

  • MechJeb-reported DELTAV and DELTAVSTAGE are more accurate.
  • Initialization error on entering flight has been fixed. Issue #261.
  • Pages using obsolete resource names have been fixed, courtesy user bgse.
  • The HUD textures no longer appear black in OpenGL. Issue #155.
  • Resource consumption tests for JSIActionGroupSwitch have been fixed. Partial fix for Issue #197.
  • The sign of ROLL has been reversed to comply with MISB ST 0601.8 standards. Issue #273.
  • Audio alarms are no longer fixed in space (causing them to fade as you move away). Issue #250.

Miscellany

  • Many of the PFD and HUD on-screen textures have been converted to DDS.
  • More internal code reorganization.
  • PFD, HUD, and text use custom shaders.
  • DYNAMICPRESSURE now reports Q in kPa, not Pa.

Known Issues

  • The HUD ladder draws outside its bounds (drawing on the vertical strips / heading strip) when rolled. Issue #272.

RasterPropMonitor v0.20.0

For KSP 1.0.2. MechJebRPM linked to MechJeb 2.5.1.

Breaking Changes:

  • Resource variables names deprecated in v0.17.0 have been removed. If you start seeing names instead of numbers on your pages, you need to update your pages.
  • An old upgrade MM patch (0.16-0.17-upgrade-patch.cfg) has been removed. If some of your MFDs disappear, the IVA that used it needs to be updated. The update can be done manually by finding the internal config file and replacing "RasterPropMonitorExampleMFD" with "RasterPropMonitorBasicMFD".

New Variables:

  • DISTTOATMOSPHERETOP returns the vertical distance from the vessel to the top of the atmosphere (or a negative value if the craft is above the atmosphere, or there is no atmosphere). Issue #221.
  • IMPACTALARM returns 1 any time the surface velocity of the craft exceeds the crashTolerance rating of the pod. This variable is intended for IVA makers in creating custom variables.
  • Per-pod persistent variables can be queried with PERSISTENT_(variable name). Keep in mind that persistent variables are case-sensitive, so this variable is, as well. Issue #168.
  • HEATSHIELDTEMPERATURE, HEATSHIELDTEMPERATUREKELVIN, HEATSHIELDTEMPERATUREFLUX - reports the temperature of the hottest heat shield on the craft (in Celsius and Kelvin), as well as the net flux on the part (to track whether it is heating or cooling).
  • Plugin state functions can be queried using variable names of the form PLUGIN_(module):(function) - for instance, PLUGIN_JSIParachute:DeployParachuteState will return '1' if any parachutes have been deployed, or 0 if none have.
  • ANGLEOFATTACK and SIDESLIP report ... angle of attack, and side slip angle. When FAR is installed, FAR is used to compute these values. Part of Issue #269.

New Features:

  • JSISteerableCameras now has a parameter skipMissingCameras that will skip over missing cameras when the user changes cameras (next camera / previous camera).
  • JSIActionGroupSwitch has a parameter initialState that can be used to set a switch to 'on' at startup. This feature only applies to custom switches ('intlights' or 'dummy', or 'plugin' if the plugin function is missing).
  • JSIActionGroupSwitch has a parameter switchGroupIdentifier that can be used to make a group of switches function like a "radio button group", where only one of the switches can be on at a time.
  • JSIActionGroupSwitch also has paramaters masterVariableName and masterVariableRange that can be used to enable the switch only when the named variable falls within the specified range.
  • JSISteerableCamera stores the index of its active camera in a special per-prop field, allowing the value of the index to be used like a regular defined variable.
  • The Target Menu will use Docking Port Alignment Indicator names when DPAI is installed; otherwise, it displays the part name (such as "Clamp-o-Tron Docking Port"). Lots of internal changes on the target menu, as well.
  • The External Camera page in the RPM stock MFD now uses JSISteerableCamera with skipMissingCameras, so only installed / existing cameras are displayed. You now need to use the Prev / Next buttons to select cameras.
  • The new module JSIParachute allows IVA buttons to control deploying and cutting parachutes. If RealChute is installed, the player can also arm and disarm RealChute parachutes (in addition to deploying and cutting them). Issue #239.
  • New JSIInternalRPMButtons functions are available to select full throttle or cut throttle at the push of a button (the same as default US keyboard shortcuts 'Z' and 'X').
  • Custom Variables can use defined variables for their range parameter, not just numbers.

Fixes:

  • HORZVELOCITYRIGHT and HORZVELOCITYFORWARD both report surface-relative values. HORZVELOCITYRIGHT is defined as the left-right component of the surface velocity vector, while HORZVELOCITYFORWARD is defined as the forward-back component of the surface velocity vector (where forward-back is derived from the cross product of local "up" and craft "right"). Issue #225.
  • Tourists can no longer EVA, or use any RPM controls, for that matter. Issue #219.
  • Transparent pods that are not the root of a craft now show interiors correctly. Issue #220.
  • Lots of internal code refactoring (compute fewer variables per update to reduce computation costs of the update).
  • DELTAV and DELTAVSTAGE provide better results when MechJeb is installed.
  • Various time displays on the MFDs have been corrected to use the MET formatter instead of KDT.

Known Issues:

  • The HUD looks bad in OpenGL. Issue #155.

###RasterPropMonitor v0.19.4

For KSP 1.0.2. MechJebRPM built against MechJeb 2.5.1.

####New Variables

  • ENGINEFLAMEOUTALARM - triggered when any active engine flames out (out of fuel, out of oxygen, etc).

####New Features

  • JSIGraphingBackground - allows multiple highly-configurable bar graphs and "indicator lamps" to be drawn on the background of a page. Issue #203.
  • JSIActionGroupSwitch can be configured to be disabled unless a separate switch identified by perPodMasterSwitchName is switched on. Issue #169.
  • New SURF MechJebRPM options (in the MJ menu and through RPMButtons callbacks) for surface prograde, retrograde, horizontal +, horizontal -, and Up (Vertical +). Issue #206.
  • JSIVariableAnimator can query an RPM button state (or any method in a module that takes no parameters and returns a bool) using stateMethod.
  • MFD pages now "remember" which page was showing when they were switched away, and they restore that page when they're switched back. Issue #207.
  • Mk1 inline and M3 cockpit RPM treatments courtesy Enceos on the forum. Issue #174.
  • Some textures converted to DDS courtesy Enceos.

####Fixes:

  • NREs initializing JSISwitchableVariableLabel have been eliminated (didn't affect game play, but did show up in the log). Issue #209.
  • Fixed JSITransparentPod (for real, this time) in flight. Issue #205.
  • A bug that caused the HUD ladder to flicker when on the launch pad (for rockets) has been fixed. Issue #213.
  • The MFD now uses RADARALTOCEAN instead of RADARALT. Issue #223.

RasterPropMonitor v0.19.3

For KSP 1.0.2. MechJebRPM built against MechJeb 2.5.

####New Variables:

  • EXTERNALTEMPERATURE and EXTERNALTEMPERATUREKELVIN report external temperature. Issue #177.
  • LATERALBRAKEDISTANCE - estimate of how far the craft will travel if it used maximum thrust to kill horizontal velocity. Issue #162.
  • PODTEMPERATUREKELVIN reports the pod hull temperature in Kelvin. PODTEMPERATURE reports the temperature in Celsius (like it did pre-1.0). Issue #177.
  • PODMAXTEMPERATURE and PODMAXTEMPERATUREKELVIN report the maximum pod temperature. Issue #196.
  • PODNETFLUX reports the flux affecting the pod - positive values mean temperature is increasing, negative values mean temperature is decreasing.
  • SUICIDEBURNSTARTSECS - estimates how soon a full-thrust retrograde burn needs to start in order to land. Issue #162.
  • SURFSPEEDMACH - reports the surface speed as a Mach number (or zero in a vacuum).
  • TARGETGROUNDDISTANCE - the distance between the vessel and the target, as measured on the ground. Issue #162.

####New Features:

  • HullCam VDS wide-angle camera is now supported. Issue #189.
  • New props in the library using stock models.
  • A mechanical switch model in the prop library created by Alexustas, available under the terms of CC 3.0 BY-NC-SA, plus some props using them.
  • Custom mapped variables, allowing IVA makers to rescale values. Issue #202.
  • Looping animation support in JSIVariableAnimator, as well as optional electrical charge consumption. Currently only available for threshold variables. Issue #197.

####Fixes:

  • VesselView flicker has been resolved. Issue #178.
  • Can no longer EVA when the Astronaut Complex is level 1. Issue #183.
  • Max Thrust computation is correct when in atmosphere. Issue #186.
  • JSITransparentPod problem in the ASET ERS command pod is fixed. Issue #201.

RasterPropMonitor v0.19.2

####New Features:

  • JSITransparentPod now supports a field disableLoadingInEditor (defaults to false) to allow people with low-spec computers to disable IVA rendering while in the VAB / SPH. A Module Manager patch to make this default behavior on all parts can be enabled by removing ".noload" from GameData/JSI/RPMPodPatches/DisableTransparencyInEditor.cfg.noload (Issue #157).
  • Fixed bug with camera backgrounds not being erased (Issue #172).
  • Fixed bug with missing skybox in external camera views (Issue #175).

RasterPropMonitor v0.19.1

####Significant Changes:

  • The formatting string KDT (previously used for displaying UT and MET) now adds one to the day field (lower-case 'ddd'). This change will allow UTSECS displayed with yyy:ddd to match the UT displayed by the KSP UI. A new formatting string MET can be used for situations where that feature is undesirable (such as for METSECS). The whole days field DDD is unchanged, so displays using KDT+DDDD:hh:mm:ss for METSECS are unaffected by this change. Existing configs using METSECS and time to apses will need to be updated.

####New Features:

  • New variables SASMODESTABILITY, SASMODEPROGRADE, SASMODENORMAL, SASMODERADIAL, SASMODETARGET, SASMODEMANEUVER to report the new 0.90 SAS modes.
  • New variables TARGETDISTANCESCALEDX and TARGETDISTANCESCALEDY that provide a value between -100 and +100 for each axis courtesy artwhaley.
  • New crew member suffixes TITLE, LEVEL, and EXPERIENCE (eg. CREW_0_TITLE).
  • A page for NavyFish's Docking Port Alignment Indicator in the included RPM MFD.
  • Add JSIInternalRPMButtons for all of the SAS modes added in 0.90, so IVA builders can add SAS control switches.
  • Add Custom Variables (prefixed by CUSTOM_) that allow IVA developers to create their own custom compound alerts.
  • Variables for asteroids: TARGETSIGNALSTRENGTH, TARGETSIGNALSTRENGTHCAPTION, TARGETLASTOBSERVEDTIMEUT, TARGETLASTOBSERVEDTIMESECS, and TARGETSIZECLASS.
  • Add support to control arming / disarming asteroid grapples in the Target Menu.
  • Added nli2work's SPP configs to the RPM distro.

####Bug Fixes:

  • TGTRELX, TGTRELY, TGTRELZ fixed courtesy artwhaley.
  • KSP 1.0 compatibility fixes.

####Miscellany:

  • Bundled Module Manager updated to version 2.6.1.
  • MechJebRPM compiled against MechJeb 2.5.

RasterPropMonitor v0.19.0

This was a KSP 1.0 compatibility release that accidentally had some debug stuff in it.

RasterPropMonitor v0.18.3

This is a maintenance release to make RPM work with KSP 0.25 again.

  • Bundled ModuleManager version updated to 2.5.1.
  • Bug where transparent pods would cause spurious configuration error warnings has been fixed.

RasterPropMonitor v0.18.2

This is a bugfix point release to take care of problems that cropped up after all the changes introduced by KSP 0.24+

Bugs fixed:

  • In certain cases, when used with transparent pods, RPM monitors could report initialization errors in editor, even though they work fine in flight. That's because some things they need simply don't exist before they go to flight, and as such, generate errors while in the editor. A few of such problems were caught and fixed.
  • JSISwitchableVariableLabel would trigger a spurious configuration error warning if the label has no text.
  • The ModuleManager patch to install the RPM-ified Mk1 pod IVA into every pod would also install it into the DERP lifeboat, where it would spam the user with error messages asking where's the IVA when the pod is not inflated. An exception has been added. Thanks to Kaa253 for catching this.

New features

  • Not much of a feature, but thanks to ArcFurnace, the Basic MFD now has more data on the PFD screen, because it's a good idea.

RasterPropMonitor v0.18.1

This is a maintenance release, mostly to get rid of the version compatibility warnings with KSP 0.24.2 (it worked fine) and shoehorning in a few bug fixes for certain obscure issues.

Bugs fixed:

  • It was possible to hear an alarm sound while out of IVA by going out of IVA while it is playing. Now, if you do that, the volume of the alarm sound is reduced to zero, so that you don't hear it, but when you come back, it won't attempt to continue playing from the same position it had when you left.
  • Transparent pods had a chance to misplace the portraits of their denizens in certain cases, hopefully this will no longer be the case.
  • More advanced error detection should distinguish between cases of being broken by a third party mod killing the startup chain and being incorrectly configured.
  • BasicMFD's MODEL {} had incorrect texture URLs in it. They still worked, but they were wrong.

New features:

  • Not much of a feature, but Junk Systems Inc. now has a flag and will offer contracts in the same manner as the stock agencies do -- please don't blame me when those become silly.
  • Monitors within transparent pods will update even when the user is not in IVA, so if they're visible from outside their contents will change.

RasterPropMonitor v0.18

This is (mostly) a maintenance release corresponding with the release of KSP 0.24 and includes certain minor renovations.

  • A minor change in version numbering policy -- version numbers now change after a release, not before. This should not affect anyone.
  • MechJeb version 2.3 is now required if you want interfacing with MechJeb. (That's the earliest version that runs with 0.24 anyway, I believe.)
  • KSP-AVC version-file format is now supported for stating the version of RPM.
  • SCANsat will support RPM directly in the release that should be uploaded very soon. As such, SCANsatRPM.dll is no longer supplied -- if you have the appropriate version of SCANsat installed, it will Just Work. If you still somehow have any copies of SCANsatRPM.dll in your game, get rid of them.
  • Bundled version of ModuleManager updated to current.

Bugs fixed:

  • The lost texture on the primitive camera model has been returned.
  • The model for the internal flag plate prop has been updated with a new one that correctly handles transparent flag textures, but is otherwise identical.

New features:

  • FUNDS, REPUTATION variables show what you would expect.

RasterPropMonitor v0.17

Breaking changes

  • A new system for addressing resources by name is meant to future-proof RPM against mods coming up with new resources. Every resource can now be addressed as SYSR_<system name of resource in upper case>. Old names for resources are now undocumented and deprecated. They will keep working for a few more months, but in version 1.0 at the latest they will be gone.
  • Due the the introduction of JSITransparentPod, the example model of the MFD had to be replaced with a new one. (The old one has broken colliders, which cause Unity to complain profusely when it is exposed to rigors of real space.) The new one has identical dimensions and orientation, but has more buttons, which is likely to screw up your customization.
  • Since I had to introduce a new model, I reorganized the structure of the distribution to finally settle the question 'Mod X wants to use RPM, but it messes with the rest of my pods' for good. It is recommended that the users delete GameData/JSI/RasterPropMonitor AND GameData/MechJeb2RPM completely before installing this version. Please double check your IVAs using RPM and look at the fresh Distribution Notes in the wiki.
  • Because blizzy78 told me that Mu finally disclosed how KSPAssembly and KSPAssemblyDependency work, (why isn't this written anywhere?) MechJebRPM.dll no longer requires it's own separate GameData directory. So now it lives in JSI/RasterPropMonitor/Plugins where it should have been from the start.
  • Just in case, the files will continue henceforth to have the AssemblyVersion number of 0.17.0.0, to facilitate things for people who hardlink to RPM instead of using the API cleanly like they should. (Yes, HoneyFox, that's about you.) The actual visible version of the DLL is kept in AssemblyFileVersion instead, and that is what will change in the future. That should further cut down on the number of incompatibilities.
  • A side effect of the above, the modified IndicatorPanel prop is now called IndicatorPanelRPM, and no longer attempts to install itself into every pod that ever used IndicatorPanel.
  • At the request of K3|Chris, a contributor to B9 Aerospace, the patches for B9 cockpits were moved to GameData/B9_Aerospace/RPM/Patches, so be careful when installing if you want to keep your B9 cockpits with RPM monitors. In the upcoming release of B9, B9 components will natively include RPM support and overwrite these files. When this happens, the next RPM release will no longer include them.

Bug fixes

  • UTSECS did not observe Kerbin time game setting. Oops.
  • MechJebRPM is now compiled against the latest development version of MechJeb. Since version numbering in MechJeb builds has been changed to accomodate Squad's plugin loader braindead versioning policies, this should make it possible to always use the most current version of MechJeb. Due to API changes in MechJeb, a developer build number 254 or later is required, though.
  • SCANsatRPM is now compiled against the version of SCANsat maintained by technogeeky at https://github.com/S-C-A-N/SCANsat -- this should stay compatible throughout. Use the 6.0 build of SCANsat with the SCANsatRPM.dll from this package. In the foreseeable future, SCANsatRPM will be integrated into SCANsat proper, and this particular source of annoyance will be gone.
  • The bundled version of ModuleManager has been updated to 2.1.5.

New features

  • New variable ISLOADED_<assembly name in upper case> returns 1 if a specific plugin is loaded and 0 otherwise.
  • New variable RPMVERSION reports the version number of RPM itself.
  • Stored strings. RasterPropMonitorComputer module configuration can contain a 'storedStrings' parameter which is a list of pipe-separated strings, accessible as variables STOREDSTRING_0, STOREDSTRING_1, etc.
  • JSIActionGroupSwitch module can now be configured to actually consume resources when toggling as well as when whatever it switches is active.
  • JSISelectivelyVisibleProp module permits you to make a prop that is only visible to the occupant of one specific seat, which is handy for transparent projection HUD displays.
  • The JSITransparentPod module will clean your pod windows just like the infamous sfr's plugin would. The drawback is that you can't see any internals within transparent pods if you are IVA. I'm not sure this KSP limitation is possible to work around -- the challenge isn't that you can't see them, the challenge is that you would see double. Warning, this is still highly experimental because I keep finding new things wrong with it.
  • Access to pages can now be limited depending on whether a specific tech has been purchased in career mode.
  • New variables: SEMIMAJORAXIS, TARGETSEMIMAJORAXIS
  • A patch to add RPM into K-P0110 capsule by Ledenko is now included, up until the time Ledenko decides to make his own.

RasterPropMonitor v0.16

This is a maintenance release, released early because MechJeb's version number changed yet again. This version now requires MechJeb version 2.2.1 or a subsequent development build that still has this version number. (0.15 was compiled for 2.2.0).

Bugs fixed

  • Courtesy of John FX, the provided camera model now has a marking on it allowing you to tell where the top side is.
  • textOverlay option would obey localMargins, when the intent was specifically that it would not do so.
  • Paths for the Orbital Orb patch have been corrected to conform to the new installation locations.

New features

  • It is now possible to change the default filter mask for JSITargetMenu. The default has been changed to include landers.

RasterPropMonitor v0.15

Known issues in this version

  • There is still no way to arm and disarm the grappling claw from IVA, even though you can release it from the targeting menu just like a docking port. There will be in the future, but in the meantime you can use action group buttons.

Bugs fixed

  • Variables that have been deprecated and undocumented since version 0.10 have been completely removed.
  • TARGETDISTANCEZ would be negative if the target was in front of the ship and positive if it was behind. The sign on that was flipped to get it to make more sense.
  • LONGITUDETGT actually returned latitude.
  • Looping alarm sounds did not actually work.
  • STAGEREADY accounts for manual stage locking/disabling.
  • JSIActionGroupSwitch's "stage" feature likewise checks to see if staging is locked.
  • Fixed a bug where showing JSIOrbitalDisplay and JSIHUD at the same time would show incorrect colors for the HUD textures.
  • Fixed a bug where the prograde icon in the JSIHeadsUpDisplay pitch ladder was drawn upside down.
  • Fixed a bug where the prograde icons in JSIHUD were invisible if drawn on a transparent prop (like a HUD).
  • Time formatter now observes the KERBIN_TIME system settings. If the system says your day is 6 hours long and year is 426 days long, so will your monitors. For your convenience, a variable named ISONKERBINTIME will return 1 if the game is set to use Kerbin time.
  • Courtesy of angavrilov, closest approach calculations now correctly work with landed vessels.
  • Courtesy of angavrilov, SCANsatRPM now correctly plots post-node trajectory.

New features

  • The new grappling claws had cameras installed in them, available just as docking port cameras are, and are otherwise supported in the targeting menu. ISCLAWREFERENCE variable tells you if the current reference point is a claw, ISREMOTEREFERENCE tells you if the current reference port is not a pod.
  • Claws can be disengaged from the targeting menu just like docking ports.
  • The Target Menu can now select asteroids that are being tracked under the Space Objects menu item.
  • The needsElectricCharge option in JSIActionGroupSwitch is now applicable to all actions.
  • A new option in handler configuration now lets you write background and page handlers which are aware of each other.
  • textOverlay option in page definition can now overlay a static text print over other sources of text, like a page handler, allowing you to make button hints on screen with text.
  • By popular request, you can now disable taking the screenshots of individual monitors by setting doScreenshots option in their configuration to false.
  • By popular request, most of the informational logging can be turned off.
  • JSIVariableAnimator can now also scale props.
  • JSIExternalCameraSelector has a configuration option that disables the light cone automatically turning on when it's picked up.
  • JSIOrbitDisplay now makes better decisions on what to display, making it more useful.
  • JSIOrbitDisplay will now draw the orbits and positions of all celestial bodies orbiting the body that the vessel is orbiting (for instance, the Mun and Minmus when the ship orbits Kerbin).
  • JSISteerableCamera supports multiple cameras (selected with the new nextCamera and prevCamera config parameters). JSISteerableCamera now also has a seekHome config parameter. When the button associated with this parameter is pressed, the currently-displayed camera returns to its initial position (pitch and yaw are set to 0).
  • MechJebRPM new buttons: Force Roll 0, Force Roll +90, Force Roll 180, and Force Roll -90. Landing Guidance (Land at Target / Land Somewhere) and Docking Autopilot are both in the MJRPM page handler. A Rendezvous Autopilot button exists, but it requires a MechJeb update to function.
  • JSIHeadsUpDisplay now displays a prograde icon on the heading bar and the pitch ladder to represent slip and angle-of-attack.
  • Stage locking can now be done using RPM with JSIInternalRPMButtons.ButtonStageLock().
  • And the speed display mode (ORB / SRF / TGT) can be changed with JSIInternalRPMButtons.ButtonSpeedMode().
  • The prograde icon in the JSIHeadsUpDisplay heading strip can be suppressed with showHeadingBarPrograde = false.
  • Added NEXTAPSIS, TIMETONEXTAPSIS, and NEXTAPSISTYPE variables.
  • Added JSIOdometer, which emulates a mechanical odometer to display numerical values in either raw numeric format (8 digits + sign), SI format (3.3 precision plus an SI prefix), or HHH:MM:SS time format.

RasterPropMonitor v0.14

Bugs fixed

  • JSIHeadsUpDisplay computed pitch upside down.
  • Shader in JSIHeadsUpDisplay changed so the ladder will now render correctly on transparent screens.
  • Radial markers on JSIPrimaryFlightDisplay were backwards. Why do people only notice this now?
  • Numerous problems in stock and mod IVA patches fixed. (sigh)
  • Hauling kerbals in IVA-less pods beside RPM-based pods should no longer cause breakage.

New features

  • Sam Hall's Mk2 cockpit got the full prop replacement treatment. If it is installed as distributed, the patch will be automatically used, otherwise you will get the usual Generic Space with props.
  • Certain plane cockpits now have a special transparent HUD prop.
  • Numerous improvements to JSIOrbitDisplay.
  • Custom formatters now support ;-splitting (somewhat).
  • Courtesy of MOARdV, JSISwitchableVariableLabel permits you to have a VariableLabel-style prop that cycles between multiple display strings based on button clicks.
  • JSIInternalEVAHatch can now play an animation of the hatch opening.
  • Action handler API permits JSIActionGroupSwitch actions to be defined in foreign plugins. Thanks to this, the MechJeb control buttons in ALCOR will now work. :)
  • JSIActionGroupSwitch can now also animate things on the pod exterior. BobCat wanted this one.
  • So can JSIVariableAnimator, for completeness. Now you can have your pod lit up if it has electric charge, or something of the sort.
  • JSIVariableAnimator can now also animate texture offset and scale.
  • JSISCANsatRPM will now draw maneuver nodes, post-node projected orbits, and ascending/descending nodes.
  • JSIVariableGraph can now have graphs with adaptive vertical scale.
  • Variable handler API now permits other modules to provide variables. This is the first step towards mathematical expressions in variables, by the way.
  • MASSPROPELLANT and MASSPROPELLANTSTAGE will give you the masses of propellant resources only. Consequently, very, very rough delta V calculation is available in DELTAV and DELTAVSTAGE variables. Due to the variable handler API, this calculation magically becomes about as precise as they get if you have MechJeb installed on the vessel.
  • AGSTATE group of variables returns the state of action group toggles.
  • TARGETISVESSELORPORT, TERRAINDELTA.
  • Resource variables now have a DELTA qualifier. Also a DELTAINV qualifier in case you prefer resource drain to be a negative value.

RasterPropMonitor v0.13

Bug fixes

  • Adjustments to conditions for DOCKINGSPEEDALARM, GEARALARM, ALTITUDEALARM, SLOPEALARM to be slightly less conservative.
  • DOCKINGANGLEALARM would not detect negative angles. Fixed.
  • GROUNDPROXIMITYALARM considerably more sensible now.
  • Thrust calculation now properly accounts for limiting maximum thrust with tweakables.
  • Indicator panel replacement had a broken FUEL indicator due to a typo.

Breaking changes

  • Module functions have been consolidated to simplify some things and enable certain new features. Everywhere you would previously write "JSIInternalPersistence", you need to replace it with "RasterPropMonitorComputer" instead. There's a ModuleManager patch included to that will do it automatically, but it's best that you update for this. Saves should not be affected, except by losing non-critical persistence information.
  • JSISetInternalCameraFOV can now also set the internal camera's maximum rotation and pitch to enable you to see those hatch handles that you can't normally get at, but the syntax has changed completely to enable doing this per-seat. Well, it's not like anyone used this module before anyway, so nobody should be affected.

New features

  • You can now use vessel descriptions (you did know KSP had them for a while, didn't you?) to record your action group assignments (On a new line, 'AG0=Air brakes', etc) and the capsules to have buttons with actual labels with what you wrote, providing an equivalent of the Firespitter's FSInfoPopup that works in line with RPM components. The rest of the text can be available on a monitor page.
  • SCREENSHOT! as the debug logs like to say. If you're currently in IVA and controlling a kerbal, (rather than just watching with a camera from an InternalCameraSwitch) pressing F1 to take a screenshot will also make every monitor in the capsule take a screenshot of it's own screen and save it directly to your screenshots directory -- which is very handy both for debugging monitor output and for mementos. Beware of screens with transparent backgrounds -- they will stay transparent.
  • JSISteerableCamera now has an optional targeting crosshair that points at the original pre-steering direction of the camera and changes size with zoom.
  • JSIVariableLabel now has an extra option for labels which you don't expect to change after being created. Labels that can't change after being created because they don't contain variables work like that by default.
  • JSITargetMenu will now give you the direction a docking port is pointing into relative to the capsule you're in (when you're selecting a reference part) or to the target vessel's reference part (when you're selecting a target port) which will help figuring out which port is which.
  • JSITargetMenu now also has an 'Undock' submenu which will decouple pre-attached or undock docked ports without going out of IVA. Be careful with that.
  • Kerbal Space Center has been forced to cough up access to SURGEON console. Crew list now permits you to access the data on STUPIDITY, COURAGE, BADASS -- which was kind of obvious, just nobody wanted it, but most importantly, current WHEE and PANIC levels. Which are the base values that go into facial expressions of your Kerbals and can be used to construct a biomonitor.
  • There is now also a separate pod-local crew list as opposed to the vessel-global list it was previously.
  • JSIInternalEVAHatch allows the kerbal you currently control in IVA to go EVA by doubleclicking on the hatch from the inside.
  • Stock IVAs that have visible hatches or hatch handles on the inside -- namely, Mk1 pod, Mk1 lander can, Mk2 lander can, cupola and the crew cabin have been equipped with this feature. Mk1-2 pod needed a new prop to be the hatch -- the stock IVA itself seems to be welded shut otherwise. Mk1 cockpit had a special handle installed. The location you want to click is the hatch handle in Mk1 pod, a handle in Mk1 cockpit, and the middle of the cross on the door everywhere else.
  • JSIExternalCameraSelector can now also translate camera transforms for better compatibility with Hullcam VDS. The package now comes with a patch that makes Hullcam VDS cameras into RPM external cameras where possible.
  • JSIVariableAnimator can now also rotate and translate transforms.
  • Which enabled the packaged Mk1 cockpit IVA to have knobs showing current trim settings without adding any extra models or textures.
  • Bar formatter now has an option to fill the string right to left rather than just left to right, as well as terminate it with a different character.
  • Courtesy of MOARdV, we now have a full implementation of the data you would typically get from the Protractor plugin, i.e. phase angles, ejection angles and other things helpful in computing interplanetary transfers.
  • Likewise, MOARdV actually completed what I couldn't and made JSIHeadsUpDisplay, an aviation-style primary flight display module, with 'ladder' instead of the usual navball.
  • But most importantly, he actually wrote JSIOrbitDisplay -- an on-screen representation of orbital map. There's still a few more things it needs before we'll call it complete, but that's already good enough for most purposes.
  • It is now possible to have context-aware page buttons, though the syntax is kind of convoluted. This involves lots of extra new options for PAGE blocks.
  • By request, for added realism, there are now options to make the cameras randomly cut out for a random number of frames.
  • Resource variables now have per-stage versions, as well as masses and densities. Per-stage versions MAY return nonsense, because they exactly mimic what KSP shows in the resource tab -- and that is sometimes nonsense. The list of other new variables added got too long for this change list, there's an unholy bloody lot.
  • B9 cockpits got the full prop replacement treatment.
  • Orbital Orb internal got an RPM-based patch in this version.
  • Bundled ModuleManager version updated to 1.5.6.
  • Patch files for internals rewritten to take advantage of ModuleManager wildcard functionality and cover mod capsules that use stock internals automatically.

RasterPropMonitor v0.12

Bugs fixed

  • JSIExternalCameraSelector would start all parts with cameras in them in show FOV mode, which would create problems when loading a craft with a large number of them. It will now remember the state of FOV cones, so if you saved the craft with them off, they will remain off upon loading.
  • More kicking to JSIPrimaryFlightDisplay. If that doesn't get you a correct target vector now, I don't know what will.
  • Force roll settings would fail to change if force roll was actually enabled.
  • Illegal characters would actually produce worse log spam than before. Fixed.
  • ALTITUDEBOTTOM was actually returning nonsense instead of the altitude of the lowest point of the ship above the terrain. Fixed.
  • Visual Enhancements clouds and city lights are now shown in cameras as good as they're probably ever going to, provided you're using release 6-3 of Visual Enhancements.
  • Multi-mode engines should now be supported correctly for ISP and other calculations. Hopefully.
  • Now the MechJebRPM plugin is compiled for the latest full release of MechJeb, which should maintain the MechJeb control menu compatibility for the subsequent development builds of MechJeb. Hopefully.

New features

  • PartModules can now provide page and background handler functions, with certain restrictions.
  • There is now a special reserved camera transform name, "CurrentReferenceDockingPortCamera", which always looks out from the current reference (i.e. 'control from here') docking port, if that reference transform is in fact a docking port. And you can change the current reference transform from the targeting menu, thus permitting you to look out of any docking port, no matter how many do you have or whether they're mod or stock. It works with JSISteerableCamera too.
  • Consequently, the patch to include external camera selector modules into docking ports has been removed and the docking port cameras button has been freed up for other pursuits, because that feature makes separate docking cameras completely extraneous.
  • By popular demand, the package now comes with an explicit external camera part, for those people who don't wish to use the ALCOR one.
  • A new formatter extension lets you draw values as horizontal bar charts, handy for resource screens.
  • Fonts can now be printed in half width and double width using tags. They are compatible with subscript/superscript, i.e. [hw][sub]m/s[/hw][/sub] will work just fine.
  • Font definition files now permit you to create fonts that contain any unicode character. I.e. if you wanted to write page definition files in Russian without resorting to transliteration, now you can.
  • A monitor can now have as many fonts as you like, provided their dimensions are the same, and they can be switched using [font...] tags.
  • JSIVariableAnimator now supports handling multiple indicators using one instance of the module and shifting texture colors instead of animations.
  • JSIActionGroupSwitch can also do color shifting in addition to animations.
  • JSIInternalFlagDecal is the equivalent of the stock FlagDecal PartModule for use inside IVA -- now you can have a mission flag inside the IVA as well.
  • Most components which can fail to initialise due to configuration errors will now display an unhelpful message saying that they're broken if that happens.
  • Page locking/unlocking options to support touchscreen-style page selectors.
  • There is now an option to plaster a texture over a page as the last step in rendering it, as well as do the same after the background has finished rendering but before text starts printing.
  • New IVA patches for Mk1 pod, Mk1 cockpit, Mk1 lander can, Mk2 lander can, Cupola and Mk1-2 pod with much more monitors -- basically redoing the stock IVA prop placement entirely and preferentially using monitors for instruments, leaving stock instruments in only as backups when appropriate console space is available.
  • A separate included patch completely guts the stock indicator panel and fits it with JSIVariableAnimator-driven lights, all of which actually work.
  • JSISCANsatRPM now also displays AP/PE markers on orbits.
  • New variables: STAGEREADY, APPROACHSPEED, VERTSPEEDROUNDED, TERRAINHEIGHT, GEARALARM, GROUNDPROXIMITYALARM, ISDOCKINGPORTREFERENCE, ALTITUDEALARM, TUMBLEALARM, SLOPEALARM, DOCKINGANGLEALARM, DOCKINGSPEEDALARM.

RasterPropMonitor v0.11

Bugs fixed

  • A massive, ancient bug which resulted in color values never being actually read from config files has been uncovered and squashed. Why am I only learning about this now?... Well, since I had to fix that, might as well declare that from now on, colors are to be given in the much easier to read format where individual color values range from 0 to 255 instead of 0 to 1 -- it didn't work properly before anyway.
  • Icons in JSISCANsatRPM will no longer have the washed-out overbright colors.
  • Despite all precautions, targeting the Sun would still produce nonsensical results and log spam because it has no orbit. Fixed.
  • Failure to specify any noSignalTextureURL could cause the monitor to fail to load. Fixed. Until the release of 0.11, please make sure the option is present in the config file and empty even if you don't want to use a noSignalTextureURL;
  • Incorrectly giving the name of a button transform will not cause log spam obscuring the real problem. Now it will just output an error message in the log and continue on it's merry way with a non-working button. Time will tell if that's a better way to deal with what actually is a fatal error that should cause the entire program to quit.
  • Trying to print a character that isn't present in the font will no longer cause log spam either, instead producing a warning only once.
  • Turns out, the position of prograde/retrograde markers is supposed to be dependent on speed display modes, which JSIPrimaryFlightDisplay previously did not handle at all. In "Target" speed display mode, prograde and retrograde markers point at what MechJeb calls "TGT+" and "TGT-" respectively. This necessitated introducing a button to switch display modes and a SPEEDDISPLAYMODE variable to show the current mode. Strangely, markers on PFD correspond nicely to MechJeb's directions, but are off from what the stock IVA navball shows when the reference part is not itself, but from that I conclude that the stock IVA navball doesn't expect the reference part could be something other than the pod. (The sun's light source certainly doesn't either!) If you have previously used JSIPrimaryFlightDisplay to make your own navball page, please check the manual for changes.
  • JSIFlightLog gave no indication that the log is empty when it actually was, which confused users. Fixed.

New features

  • All buttons can now be located on any other prop in the pod, not just the same prop the module lives in. They can even be located on the internal model itself. One button can now be used to trigger any number of things simultaneously. If you wanted to make an Enterprise display with a control pad located by the captain's seat, you have the tools now.
  • JSITargetMenu now has a submenu that lets you select the reference point of your vessel, as if you clicked "control from here" on it while you're still in IVA. (Going IVA normally makes the pod you're in the reference point.) That's the last missing piece for docking without ever poking your nose out of IVA. An annoying side effect is that the sun shines from the wrong direction when you do that -- I'll see what I can do about manually moving the sun later. (Well, I know I can turn it off...)
  • JSIVariableGraph background handler lets you draw pretty graphs of variables changing over time, with certain limitations.
  • Courtesy of MOARdV, JSISteerableCamera background handler lets you make a camera that doesn't just zoom in and out but can also yaw and pitch, and MechJebRPM page handler will give you a menu that lets you control SmartASS and execute maneuver nodes from the comfort of your cozy IVA.
  • A useful side effect of that is that now handler modules can also take action not only on when buttons are pressed, but also when they are released.
  • Color tags now permit you to omit the alpha value, in which case it will be assumed to be maximum -- that's less of a mouthful to type.
  • The introduction of 'nudge tags' allows you to shift symbols by specific number of pixels, which may be important when adjusting them to fit a graphical background.
  • There are now tags for superscript and subscript, which do exactly what you would expect. It doesn't look particularly good, but should suffice for things like "m/s²"
  • JSIVariablePageTextSwitcher page handler permits you to select between two different page definition files based on the value of a variable, which can take away some of the pain involving particularly complex screens which exist in one of two states.
  • A side effect of the above is that in JSIVariableAnimator, "variableName" can also be a fixed number if you like.
  • New variables SPEEDDISPLAYMODE and SELECTEDSPEED (to make the PFD more closely match the capabilities of the stock navball) and TARGETANGLEDEV (look at the target screen in the example prop and you'll see how this can be used).
  • Switches made with JSIActionGroupSwitch are no longer required to be animated.
  • DLL files of the package will now detect being installed into incorrect locations and complain bitterly.
  • Because more than a few users were confused about which external camera to use when and how to configure that, the MFD in the package now has buttons configured both for the cameras it embeds into the docking ports and ASET ALCOR external cameras.
  • JSIExternalCameraSelector now runs mostly on tweakables.
  • Patches to make the GenericSpace cockpits actually usable, courtesy of therealcrow, are now included.
  • Patches to support more mod docking ports as cameras, courtesy of therealcrow, are now included.

RasterPropMonitor v0.10

Special thanks to MOARdV who is responsible for numerous bug fixes and improvements in this release.

Bugs fixed

  • The SI prefix formatter is now very definitely behaving to spec.
  • Targeting variables now correctly handle special targetable types introduced by MechJeb, i.e. a point on the ground, as well as their names.
  • Targeting variables applicable to celestial bodies will now return correct information about those.
  • Cameras will now try to show the effects produced by the Visual Enhancements mod, inadequately. Proper support will be available when an upcoming release of Visual Enhancements gives unique names to the special camera objects it creates.
  • Color tags were handled incorrectly in cases of two consecutive color tags or a color tag ending the line with no subsequent spaces, which is now fixed.
  • JSISCANsatRPM now correctly draws lines that cross the map around the back, which it previously had to avoid drawing at all.
  • InternalCameraTargetHelper will now prevent all doubleclicking from clearing your target while you're in IVA, not just doubleclicking that results in looking through windows. If you dislike that behaviour, you just need to remove MODULE {name=InternalCameraTargetHelper} from configuration.
  • Time to impact calculations should handle descent in atmosphere and under acceleration better.
  • Some inconsistencies in monitors handling the absence of electric charge in the ship were fixed.

New features

  • One more small breaking API change before I catch anyone else using it, hopefully the last one of those: Background handlers now receive the cameraAspect as a parameter beyond the actual RenderTexture. Which means that JSIPrimaryFlightDisplay no longer needs the screenAspect parameter and will ignore it.
  • There are now custom string formatters for degrees-minute-second coordinates and time. Variables that previously returned either of that as pre-made strings still work, but are deprecated and no longer documented, to be removed no later than in v1.0. Yes, you need to go through your page definition files again, but on the up side, you can customise the way these values are displayed to a much higher degree now.
  • The newly introduced JSITargetMenu page handler does exactly what it says on the tin -- gives you an on-monitor-screen menu to select a target. Yes, it can select a docking port.
  • JSISCANsatRPM can now draw arbitrary lines on the map, which permits you to draw airstrip approach "funnels" and other useful information. There are no such markings bundled with the package yet, because nothke, who originally requested this feature, has not yet sent any in, and I have no clue where they should be. :)
  • JSIExternalCameraSelector now has an option to apply extra rotation to the camera transform, which is handy if you're using it with a model you cannot edit. That involves a minor change for the requirements to create a part for it deliberately -- please check the manual.
  • JSIPrimaryFlightDisplay now also displays a docking orientation marker the same way the Navball docking alignment mod does it.
  • Resources from Extraplanetary Launchpads, KSP Interstellar and Near Future are now available by name.
  • All named resources and alphabetically listed resources now also have variables that return percent of total capacity as a number from 0 to 1.
  • Reference information about planetary bodies is now available as variables, for body currently being orbited and for a target celestial body.
  • New ATMOSPHEREDEPTH variable lets you replace the stock atmosphere depth gauge.
  • Multiple pages within the same monitor can now coexist on the same button. They will be cycled between when this button is pressed. This ensures the example prop will remain in service for quite a while. :)
  • Multiple handler blocks (both page and background) are now allowed per page. The first one that successfully loads will be used -- which will be important when there are more alien plugin integration handlers.
  • Cameras can now optionally have their zoom levels (i.e. FOV) controllable by globalButtons.
  • Cameras can now optionally display a "no signal" texture if the camera was not found.
  • Supplied patch for docking ports now also adds cameras to all IACBM and SDHI docking ports. (Except the developer preview version. Because sumghai mentioned native RPM use in Karmony IVAs.)
  • Numerous patches for stock and mod capsules by Nazari and therealcrow are included.

Please pay special attention to documentation on new formatters. See the full list of deprecated variables and their suggested replacements.

I think I'll finalise version 1.0 once KSP 0.23 is well tested. At that time, deprecated variables will be gone.

RasterPropMonitor 0.9

Bugs fixed

  • Monitor would choke on pages which contained no sources of text. Not anymore.
  • When switching from a page with a working camera to a page where a camera is missing, the screen would keep showing the working one. Fixed.
  • An obscure API issue has been caught before anyone but me used it, whee.
  • Some inconsistencies which could have hindered using transparent colors for certain elements were corrected, if you previously tried to make a transparent display and it didn't work, try again the same way.

New features

  • I promised SCANsat integration, and here it is, for suitably small values of "here": Meet JSISCANsatRPM. I'd wager those suitably small values will suffice for just about anyone, though. There probably still are some bugs in it. It will obviously remain inactive if SCANsat is not installed.
  • Colortags! All text on the monitors can now be colorised letter by letter by using [#rrggbbaa] color sequences in the text -- see the documentation. Associated changes make it easier to create a transparent display, since default text transparency can also be set.
  • JSISetInternalCameraFOV module can help you get around the fact that the FOV of IVA cameras is not configurable and fisheye deformation can be too high for some pod layouts.
  • By popular demand, slope of the surface in degrees is now available as a variable. Also, biome name. (Exactly the way MechJeb displays it). Also a shortened biome name for when you can't be bothered to use the full one.
  • Pages with background handlers that could not be loaded (for example, if JSISCANsatRPM did not load, because the user doesn't have SCANsat) will now fallback to camera or texture background if those are also present in the page configuration. The same thing will happen with page handlers -- if the handler did not load, the page will fallback to text defined by other means.
  • The example prop is replaced by the new MFD courtesy of alexustas, which lets me enable the navball plugin and the map plugin on it -- there's enough buttons now and some are left over. The old example prop will continue working if you installed it into any other pods, unless you do the silly thing and delete it.

RasterPropMonitor 0.8

Bug fixes

  • JSIActionGroupSwitch would make sounds even if you're out of IVA, which is silly when JSIInternalBackgroundNoise makes a point not to.
  • JSIPrimaryFlightDisplay had the icons for direction to target and direction from target backwards.

New features

  • JSIVariableLabel module introduced, to be used when making short variable-based labels that don't warrant the full monitor treatment... though that was out with version 0.7b.
  • A small breaking API change before anyone actually releases anything using it -- page handler functions now get the screen size in characters as arguments. If anyone has been using it and not telling me, sorry folks.
  • JSIExternalCameraSelector now displays a rough indication of where the camera is pointing while in the editor, (it's "rough" because it does not reflect the final field of view and uses the default of 60 degrees, since external camera parts can't know what it will be) and allows you to select the camera ID during construction. Mouse over the camera and press space to do increment the ID. Hold down U to display the fields of view of all bolt-on cameras. Camera IDs are selected in order as you add parts. (Except when you're adding parts in symmetry, in which case all symmetric parts start out with the same ID and changing it breaks symmetry.) This works for the cameras patched the into stock docking ports by the enclosed package as well. It might still be a little buggy, so if you break it, I'd love to see exact steps to replication.
  • Monitors and internal light switches, as well as the background noise module now require electric charge to work. They do NOT actually consume power -- I believe ModuleCommand's electric charge consumption is sufficient to reflect the power needs of flight instruments, and you should mess with that number instead -- they just shut down as ElectricCharge falls below 0.01 units. There's an option to turn that requirement off.
  • A few more new variables -- total effective ISP of all active engines, maneuver node burn time, pod temperature, support for ECLSS-specific resource names, and maybe something else that I missed.

RasterPropMonitor 0.7

Bug fixes

  • Bug introduced in 0.6 which caused RPM to be unable to use page text defined in prop.cfg fixed. Who'd have thought that the exception KSP throws when a file isn't found is not FileNotFound, but something else entirely!
  • More issues with SI prefix formatter caught. If anyone's up to getting this right, I'd love patches, because right now it's a fairly crude hack of a function originally taken from MechJeb and not actually meant to fit specific numbers of characters. I can't get it to mess up display alignment anymore, but it doesn't behave completely true to spec either.
  • Stage switch in JSIActionGroupSwitch now actually activates the next stage as it was meant to. Parts with no physical significance still had their mass computed, which is kinda wrong.
  • Package of the monitors fitted into the stock pods now uses JSIExternalCameraSelector to let you select which of the available docking ports is going to be your camera -- so you can switch between cameras inside ports as desired, though not from the inside. Duh, I've been using the wrong transform for it.
  • InternalCameraTargetHelper did not account for the fact that when you switch back from a window view by doubleclicking, your target also gets lost.

New features

  • The biggest addition to the package is the JSIPrimaryFlightDisplay background handler module, which is exactly what it sounds like -- an overcomplicated building block for a page that can replace the stock navball with something flatter, because a 3D navball in a 3D world is obviously not high tech enough looking. So we render a 3D navball to a 2D plane to display on a 2D screen in a 3D world to heighten your immersion. Like the Enhanced Navball (where many of the ideas and a little code comes from) it displays more directional markers than the stock ball. This example package does not enable it on it's screens, as all of them remain side by side with the stock navball. But you can uncomment the lines in the prop.cfg to take a look at it with my really rough placeholder textures... For a properly polished example, you will want to see ALCOR.
  • There are now variables for time to ascending and descending node with target. Also equivalent airspeed. And an altitude measurement that takes your landing legs into account. There's probably a few more miscellaneous variables I forget.
  • There's a considerable block of new variables to support addressing all the ModularFuels resources by name. And Kethane. And life support resources.
  • Another block of new variables pertaining to input state lets you create a moving joystick using JSIVariableAnimator, or at least should.
  • Monitor can now beep or make other sounds when buttons are pressed. So do switches and buttons made using JSIActionGroupSwitch. Sounds come from the prop itself.
  • JSIVariableAnimator now includes options specifically meant for alarm lights which sound an alarm. (Which you can turn off, of course.)
  • Speaking of sounds, there is now a JSIInternalBackgroundNoise module which can play a background hum for your IVA.
  • Lots of API improvements. Page and background handlers can now subscribe to notifications of when their page becomes active or inactive. They can also subscribe to button clicks from non-page buttons, so making a menu becomes considerably easier. You can also make one instance of a module handle multiple pages, or serve as both a background and a page handler, so it's easier to make a complex system of pages act in concert.
  • The example prop is updated to make use of some of the new features.

RasterPropMonitor 0.6

Bug fixes

  • Format specifiers for SI prefixes had a few bugs which were fixed, and now behave mostly as advertised.

New features

  • Syntax of prop.cfg files has been significantly changed, so if you customized anything in this package, you might have to do some fixing -- see the wickied documentation. This is very much worth it though, because the upsides of that change are...
  • You can now have an unlimited number of pages per prop. Well, it'll crash at around 2.1 billion, but I think you'll run out of memory well before that.
  • Page handlers now no longer need to be loaded as separate modules, RPM will take care of loading them by itself and passing them module configuration.
  • The notion of a camera takes a step back, and now there's a more generalized notion of a page background -- which can be a camera, but it can be something else instead. Which permits such a nicety as a Background Handler plugin. Which permits me to make a Primary Flight Display, which is in the works for the next version(s), because I have finally figured out how to draw something rotated on a RenderTexture.
  • But right now, you can assign a texture to be a page background already, which I'm sure you can find useful.
  • In other news, JSIExternalCameraSelector PartModule is introduced to permit one to have a large array of external cameras without actually creating multiple unique parts and cluttering the part list. Amusingly, while it works on stock docking ports, the resulting cameras are facing the opposite direction of what you need...

RasterPropMonitor 0.5

Bug fixes

  • The only bug actually reported so far fixed, if you want your currently selected page to persist between vessel switches, you need to have MODULE { name = JSIInternalPersistence } on your pod part. It'll keep working if that module is not present, but obviously, won't remember active pages.

New features

  • The new JSIVariableAnimator module lets you create animated gauge props (or any other kind of props with animations on them) driven by the same variables as the RasterPropMonitorGenerator uses -- still using one calculator per pod, even.
  • String.Format is extended by a special format specifier that lets you turn 802975628m into 802Mm right in the page definition file, which should make data displays considerably neater. I'll probably also make the degree/minute/second coordinates formatter and kerbal time formatter into format specifiers later, which will also involve some rewriting of page definitions, but make things much more flexible.
  • Page handler mechanism. It is now possible to create your own plugins that can generate page data during execution in whichever way you please, while the pages are still processed through the same variable substitution system. This lets you do things like creating an onscreen menu in quite a trivial fashion. This might also be the way to hook kOS into the whole thing... I'm not up to doing an actual keyboard with buttons you have to click to make your kerbals type in kOS scripts, but if you want to, this is what I can do from my end to make it easier for you.
  • Lots and lots and lots of minor refactoring all over the place, some of which might result in marginal speed improvements, but I doubt it.
Clone this wiki locally