Skip to content

Distribution notes

Eugene Medvedev edited this page Jul 20, 2014 · 24 revisions

Please, if you use this plugin to create a screen or any other prop of your own, do one of the following but not both:

Distributing RPM components with your mod

Distribute a copy of the plugin in this fashion with your mod package:

  • GameData\WhereverYouLikeToKeepYourFiles\...
  • GameData\JSI\RasterPropMonitor\Plugins\*.*

Please do not use anything from the JSI\RasterPropMonitor\Library in this case and make your own versions. (hopefully they're better than what I have in Library...) If you do use anything in the Library, and still feel you need to distribute it, distribute the entire Library. (This will at least prevent people from complaining that "package X installs RasterPropMonitor and it doesn't work for other things")

The correct placement of files is very important, because all configurations rely on full GameData URLs, and multiple copies of plugins will conflict. While GPLv3 license leaves your hands free to do more or less whatever, including taking over the project if I no longer have the interest to continue it, this way at least avoids the DLL conflicts -- the user is meant to overwrite these files with the fresh versions from the package I maintain. Please instruct your users to compare version numbers on the DLLs when doing so -- Windows shows version numbers of DLLs when you attempt to do that.

You also need to include, in whichever readme file you distribute, the link to this GitHub repository, because that's what the GPL license requires of you if you wish to use this plugin without modifying the source code: https://github.com/Mihara/RasterPropMonitor/

If you do modify the source code, patches and pull requests are quite welcome. Please do not distribute binaries of the development build with released work -- it's liable to confuse users because these builds are very much not stable in terms of configuration options.

Depending on RPM distribution package

If you depend on RPM distribution package and tell your users to install RPM, keep the following in mind:

  • The files in JSI/RasterPropMonitor/Library are there for you to reference. They are not expected to change. If they need to change in a non-backwards-compatible manner, new ones will be added instead. If you need to change them, create your own copy, distribute it with your mod and reference that instead.
  • The files in JSI/RPMPodPatches are not expected to be present, do not rely on them. In the future, it is expected they will be split into their own separate package. If you wish to use them anyway, prefer to make your own copy and avoid name conflicts.

Library reference

Files in RasterPropMonitor/Library are meant to be reused, so here's a reference on what's what. You can count on those files existing if RasterPropMonitor is correctly installed:

  • Components -- Contains models and accompanying textures for props meant to be used as a unit. Currently contains:
    • HUD -- A transparent heads up display for aircraft.
      • model.mu -- The model for the HUD. Screen transform is 'HUDScreenObj', can also serve as a button. Has no other named transforms.
      • planeHUDdiffuse.png -- Texture for the diffuse layer of the model.
      • screen.png -- Placeholder texture for the screen mesh.
      • heading.png -- Heading bar texture.
      • hud-overlay.png -- Overlay texture.
      • ladder.png -- Texture for the ladder.
      • leftscale.png -- Texture for the left scale bar.
      • rightscale.png -- Texture for the right scale bar.
    • MDF40v20 -- The basic MFD prop sans configuration of any kind. Names are historical, as the first iteration of the prop was a 40x10, and later a 40x15 character screen. Notice that the only thing this model actually mandates about the screen is that it is square (the model doesn't look very nice otherwise) -- it's resolution and number of characters are up to further configuration.
      • model.mu -- The model itself. Screen transform name is FlatMon40x10Screen. Button transform names are: In top row -- button_A..button_G, in bottom row - buttonR1..buttonR7, in left column -- button_LEFT, button_RIGHT, buttonR9, buttonR10, button_STBY, in right column -- button_UP, button_DOWN, button_ENTER, button_ESC, button_HOME.
      • MFD40x15v2-Diffuse.png -- The texture for the body of the model, includes button markings.
      • MFD40x15v2-Emissive.png -- The emissive texture for same.
      • screen.png, screen-emissive.png -- Placeholder textures for the screen mesh.
    • NavBall -- The navball model. One is required for correct operation of JSIPrimaryFlightDisplay module, though you can always substitute your own if you so wish.
      • NavBall000.png -- The texture for the surface of the navball itself.
      • HDG.png -- The texture for the heading bar.
      • StaticMask.png -- The texture for the static components of the display.
  • Fonts -- The fonts for RPM. While they have descriptive names, they are historical and there's no restriction on using whichever font as the primary one.
    • fontDefinition.txt -- The font definition file. This file is exactly the same as the default hardcoded font definition and is mostly provided for reference.
    • baseFont.png -- A font based on FixedSys Excelsior.
    • extraFont1.png, hudfont.png -- ...wait, I forgot what fonts I made these from.
  • Parts -- Extra parts for RPM.
    • ExternalCameraPart -- An external camera. References the stock model of the singular RCS thruster, and substitutes a texture.
  • Props -- Preconfigured props for you to use. Mostly reference stock models, with a few exceptions.
    • CockpitHandle -- A cockpit handle for doubleclick-for-EVA for aircraft, for cockpits which have no identifiable handle on the interior.
    • IndicatorPanelReplacement -- A stock indicator panel with replaced textures, configured so that all lamps actually work.
    • InternalAirlock -- An animated airlock door to use in pods which have no identifiable airlock door on the interior.
    • InternalFlagPlate -- A simple textured plate to display the current flag. Doesn't currently work well with alpha flags, which will need correcting someday.
    • InternalHatch -- A transparent collider model configured to be a doubleclick-for-IVA hatch. To be used for pods which do have an identifiable airlock door on the interior.
    • SimpleProps -- A collection of stock prop configurations which actually make them do something useful, or at least pretty.
  • Sounds -- Sounds to use in your IVA.
    • buttonbeep.ogg -- The default button beep.
  • Textures -- Various texture components for use in monitor configuration.
    • bg01.png -- A simple background texture designed to highlight the top line out of twenty on a 20-line monitor.
    • graphgrid.png -- A 7x7 grid to serve as a background for graphs.
    • noscansat.png -- A texture that says "No satellite connection", for use as a failover background in case SCANsat is not installed.
    • nosignal.png -- The default "No signal" texture.
    • scalebar.png -- The scale bar texture for SCANsatRPM.
    • scaleLabels.png -- The scale labels texture for SCANsatRPM.