Skip to content
MOARdV edited this page May 28, 2018 · 101 revisions

MOARdV's Avionics Systems (MAS)

MAS is an updated replacement for RasterPropMonitor, for Kerbal Space Program.

Take a look at the first parts of the Introduction to get a quick sketch of what this mod is about and why it's here.

Requirements

Most prop config files in the ASET_Props directory require alexustas' ASET Props. The core Avionics Systems DLL has no external requirements (the only dependency is the MoonSharp DLL bundled with MAS). The demo IVA requires installation of the command pod from the appropriate mod (see the readme). KSP 1.3.0 or later is required; x64 version very strongly recommended.

Many / most IVAs using MAS require Module Manager, which is not included in the MAS distribution. Visit Module Manager on the KSP forum to get your copy.

Some features in MAS require other mods in order to function. If the prerequisite mod is not installed, then MAS will still operate, but that feature will be unavailable.

  • Advanced Jet Engine: Required for some engine. features. Visit AJE on the KSP forum.
  • Chatterer: Required for the chatterer. features. Visit Chatterer on the KSP forum.
  • Ferram Aerospace Research: Required for the far. features. Visit FAR on the KSP forum.
  • Kerbal Alarm Clock: Required for the kac. features. Visit KAC on the KSP forum.
  • MechJeb: Required for delta-V computations and all of the mechjeb. functionality. Visit MechJeb on the KSP forum.
  • RealChute: Required for some realchute. features. Visit RealChute on the KSP forum.

Installation Quick Start

The quick start guide for Installation should help you through the manual installation process. Once you're ready to fly, the Yarbrough Quickstart will guide you through the basics of going to space.

Using MAS for Players

MAS allows for immersive IVA play. Typical IVAs will be much more complex than the stock KSP IVA. However, since each IVA is unique, each one needs its own guide.

However, there is a guide available for the MFD2: MFD2 Operations Guide

Development Builds

Dev builds are available occasionally on DropBox. Development builds are released haphazardly in various issues when fixes or features are implemented. Be aware that older dev builds disappear without warning, and I overwrite dev builds with updates using the same version names. These are not formal releases, and they do not follow any formal release process. Dev builds are geared more towards IVA developers and testers than players.

Frequently Asked Questions

The FAQ will (hopefully) answer common questions.

Want to request a feature? Want to report a bug? Please visit the Issues page and create a new issue.

Review the Changelog for updates and a list of known issues. Releases are on the Releases page.

Getting Started for Prop Makers

For a first look at a MAS config file, with an explanation of the what's and why's, look at Tutorial 1 Throttle. For an interactive prop, look at Tutorial 2 Action Group Button. A more involved example is Tutorial 3 RPM Modules, which shows suggested values for using external modules designed to interact with RasterPropMonitor. Tutorial 4 JSIActionGroupSwitch shows how to use MASComponent to duplicate JSIActionGroupSwitch, JSILabel, and JSICallbackAnimator. Tutorial 5 RasterPropMonitor shows a rudimentary start to configuring an MFD, although you're better off looking at MOARdV/MAS_ASET/ALCORMFD60x30 and MOARdV/MFD in the installation. Another description of converting a prop to MAS is available on the KSP Forum. It's primarily geared towards converting an ASET toggle switch to MAS.

Some general discussion for prop makers can be found in the notes for Porting from RPM. There are some examples listed below, but perusing the props in MOARdV/MAS_ASET and MOARdV/Props will give you concrete examples. Tips and Tricks provides some guidelines on how to take advantage of MAS. There are a few Keyword values that may be useful when configuring props. Familiarity with Persistent Variables is a must for immersive IVA development. The Formatted Rich Text used in MAS is very similar to that used in RasterPropMonitor.

Named Colors allow for a consistent look-and-feel in a set of props, and they allow the IVA creator to change those colors by editing only one file, instead of hundreds of prop configurations. In addition, all of the colors from the XKCD color table, as well as some KSP custom colors are available through the Named Color system.

Lua Scripting is a key enhancement for Avionics Systems. Basic MAS has a lot of capability, but you can do much, much more with a little bit of scripting.

If you're suffering from insomnia, you can always peruse the Introduction for some background information and rationale for this mod. If that doesn't put you to sleep, there's also a lengthy look Under the Hood.

Prop Generation Tool

The Prop Config tool is a Windows executable written in C#. It is designed to automate most of the copy/paste/edit tedium of generating MAS-compatible prop configurations for the ASET prop packs.

Avionics Systems Part Modules

The following modules may be added to parts to enhance the IVA experience, or, in the case of MASRadar and MASContextMenu, to enhance gameplay experience in general.

  • MASCamera - This part module allows MFDs to show external camera views. It is similar to JSIExternalCameraSelector, but it has some key differences.
  • MASCameraMount - This part module rotates the part around specified axes in response to pan and tilt commands so that the part can visibly show where the camera is aimed.
  • MASContextMenu - This part module allows a MAS action to be accessed from the context menu of a part. It may only be placed on a part that has a MASFlightComputer.
  • MASIdEngine - Used to provide unique identifiers for supported engine props.
  • MASIdGeneric - The basis for the MAS Identification part modules. It should not be used directly.
  • MASDeployableCamera - This part module allows a MASCamera to be on an extendable boom or other animated part. Deployable cameras are subject to damage from excessive aerodynamic forces.
  • MASFlightComputer - This part module is required on all pods that will use MAS-enabled IVAs.
  • MASRadar - This part module provides a simple automatic target selection feature. It has context menu controls, allowing it to be used without being in IVA.
  • MASThrustReverser - This part module is a simple module used to help MAS identify animations that behave as thrust reversers on engines that use them.

Avionics Systems Prop Modules

MAS uses two prop modules to provide functionality in IVA, and one to extend stock behavior. The first two modules can contain multiple components. The modules are:

  • MASComponent - The general-purpose prop module. It can be used for handling colliders, animating props, providing labels, and so forth.
  • MASMonitor - The prop module for MFDs and other "monitor" style displays.
  • MASNavBall - A drop-in enhancement for the stock InternalNavBall module that allows the navball to be switched off, and provides an option to limit the max navball spin rate to simulate mechanical limitations.

Avionics Systems Variable Documentation

This documentation is automatically generated from the source code. In addition to the detailed listing below, there is the Index of Functions that lists all functions / methods / variables available in MAS in a single, alphabetized index (over 650 functions as of late January 2018). Generally, I update the wiki documentation at about the same time that I update the source code. In addition to the documentation below, there's also a mapping of RPM variables to MAS variables in this document.

  • MASFlightComputerProxy, MASFlightComputerProxy2, and MASFlightComputerProxy3 - fc - The interface with the core Flight Computer module. The module is split across three pages, grouped by category.
  • MASIChatterer - chatterer - The interface with the Chatterer mod.
  • MASIEngine - engine - The interface with aircraft-oriented engine features (thrust reverser) and the Advanced Jet Engine mod.
  • MASIFAR - far - The interface with the Ferram Aerospace Research mod.
  • MASIKAC - kac - The interface with the Kerbal Alarm Clock mod.
  • MASIMechJeb - mechjeb - The interface with the MechJeb mod.
  • MASINavigation - nav - Interfaces to planetary navigation functions, including Radio Navigation emulation and Waypoint selection.
  • MASIRealChute - parachute - The interface with the RealChute mod and methods to control stock parachutes.
  • MASITransfer - transfer - The interface to interplanetary transfer calculations such as those found in the Protractor mod and the MAS Maneuver Planner, which allows for basic orbital maneuvers.

Fonts

Available fonts (for use on MASMonitor displays, and for MASComponent TEXT) are detailed on the Fonts page.

Shaders

MASCamera cameras may apply a post-processing shader to the camera output it creates. The available shaders and the tunable properties of those shaders are described on the Shaders page.

Credits

MOARdV's Avionics Systems coding is primarily the work of MOARdV. Alexustas created the prop models included in the mod, as well as the Mun and Minmus maps used on the MAS MFD. MOARdV thanks Alexustas for the high quality props in the ASET mods, as well as for the many feature requests and bug reports that have made MAS a much better mod. MOARdV also wishes to thank DeputyLOL and theonegalen for their feedback during this mod's development.

Configuring Avionics Systems

MAS Settings Button

Avionics Systems may be configured using the Application Launcher button from the Space Center scene. Take a look at MAS Settings for more detail.

Additionally, custom radio navigation beacons may be added using MAS_NAVAID config files, as described under Radio Navigation.

Clone this wiki locally