MOARdV

[WIP] [1.6.x] MOARdV's Avionics Systems - MAS Interactive IVA! (v0.94.0, 2 February 2019)

Recommended Posts

What is it?  MOARdV's Avionics Systems (MAS) is a replacement for Mihara's RasterPropMonitor. The goal of MAS is to provide an updated flexible toolkit for creating interactive IVA experiences in KSP.

What isn't it? It is NOT a collection of ready-to-go IVAs.  It does not have a complete collection of MAS-enabled props yet.  MAS is intended to be a toolkit, like alexustas's ASET Props Pack and ASET Avionics Pack.

What is included? MAS includes an IVA for the MRK DM command pod from Commonwealth Rockets, as well as an IVA for the stock Mk 1 Pod and Mk1-3 Pod.

3B7eyD.jpg

How do I make MAS IVAs? Download the latest release from GitHub.  Download the ASET Props Pack.  Look at the example prop configs in MOARdV/MAS_ASET.  Look at the example IVAs.  Look at the wiki on GitHub to see what functionality is available and to see some introductory prop config walkthroughs. Brush up on Lua, if you really want to push MAS to the extremes.

The prop configs in MAS_ASET use models from the ASET Props Pack (required, not included).  The IVAs in MAS require Module Manager (also not included).

CKAN? Not supported.

Other questions? GitHub wiki

Download: GitHub releases

Source: GitHub source

License: The MAS plugin uses the MIT license.  Licenses for included components are documented in the download.

Documentation: The MAS Wiki has a fair amount of documentation, including some examples.

MOAR IVA? If the basic Mercury-style IVA isn't enough of a challenge, take a look at a Bluedog Design Bureau compatible Apollo IVA for a more immersive experience:

This mod includes version checking using MiniAVC. If you opt-in, it will use the internet to check whether there is a new version available. Data is only read from the internet and no personal information is sent.
 

Edited by MOARdV
v0.94.0
  • Like 44

Share this post


Link to post
Share on other sites

Cheers! First btw :wink: Ran out of likes for the day, will be back. :) 

  • Like 1

Share this post


Link to post
Share on other sites

Updated the DLL and release - there is an example IVA now in the package (the Mk3-9 from Nertea's Near Future Spacecraft) so IVA makers can see some of what MAS can do.

  • Like 3

Share this post


Link to post
Share on other sites

Sweet! So glad to see development going forward on this.

@MOARdV

EDIT: Currently, the pack ships with a cfg that causes an issue. MOARdv/MAS_ASET/Primitives/Primitive_TRIANGLE_Beveled_DarkGray.cfg says:

PROP
{
    name = MAS_Primitive_TRIANGLE_Beveled_DarkGray

	MODEL
	{
		model = ASET/ASET_Props/Misc/Primitives/Primitive_TRIANGLE_90_Beveled
		texture = Primitive_Black,ASET/ASET_Props/Misc/Primitives/Primitive_DarkGrey
	}
}

The mismatch between the texture name and the texture name in the texture path causes the game to hang on loading.

Edited by theonegalen

Share this post


Link to post
Share on other sites
13 hours ago, theonegalen said:

Sweet! So glad to see development going forward on this.

@MOARdV

EDIT: Currently, the pack ships with a cfg that causes an issue. MOARdv/MAS_ASET/Primitives/Primitive_TRIANGLE_Beveled_DarkGray.cfg says:


PROP
{
    name = MAS_Primitive_TRIANGLE_Beveled_DarkGray

	MODEL
	{
		model = ASET/ASET_Props/Misc/Primitives/Primitive_TRIANGLE_90_Beveled
		texture = Primitive_Black,ASET/ASET_Props/Misc/Primitives/Primitive_DarkGrey
	}
}

The mismatch between the texture name and the texture name in the texture path causes the game to hang on loading.

Hmm.  Yeah, go ahead delete that prop config.  It was an experiment to see if I could get the 90 degree beveled triangles to work.  They don't, although I'm not getting a hang on load here - it simply doesn't show up in-game (although it's visible in Unity).  Hopefully alexustas can get that primitive working.

  • Like 1

Share this post


Link to post
Share on other sites
3 hours ago, MOARdV said:

Hmm.  Yeah, go ahead delete that prop config.  It was an experiment to see if I could get the 90 degree beveled triangles to work.  They don't, although I'm not getting a hang on load here - it simply doesn't show up in-game (although it's visible in Unity).  Hopefully alexustas can get that primitive working.

Yeah... i remember getting some part loaading errors from ASET, and IIRC, that is one of the 3 or 4 textures that were throwing...

Also, @MOARdV, are you using the Yarbrough IVA for work on this? I'm hoping to get back to improving that whole capsule... I wont bother playing with RPM, Flight Systems or MAS if you're already using it for the dev work for MAS...

Edited by Stone Blue

Share this post


Link to post
Share on other sites
1 hour ago, Stone Blue said:

Yeah... i remember getting some part loaading errors from ASET, and IIRC, that is one of the 3 or 4 textures that were throwing...

Also, @MOARdV, are you using the Yarbrough IVA for work on this? I'm hoping to get back to improving that whole capsule... I wont bother playing with RPM, Flight Systems or MAS if you're already using it for the dev work for MAS...

I shelved the Yarbrough when I put MAS on hiatus over the winter.  I really like the pod, but there were some things in the exterior model that needed updating, and a couple things in the interior that I would like to have seen tweaked.  Since the author's been gone for a year or so, I figured those things weren't getting fixed.  I spent the last week using Nert's Mk3-9 pod (the in-progress version of which is currently packaged with MAS), and I spent today tweaking the KP0110 IVA for use in the BDB Kane pod.  I'll be putting that through its paces this evening, I think.

If you're interested, I can put the Yarbrough MAS IVA up on DropBox for you to use as a kicking-off point.  There are some props that may be missing from the current MAS pre-release, but I can track those down fairly easily.

Share this post


Link to post
Share on other sites
20 hours ago, MOARdV said:

If you're interested, I can put the Yarbrough MAS IVA up on DropBox for you to use as a kicking-off point.  There are some props that may be missing from the current MAS pre-release, but I can track those down fairly easily.

Yes, please do! You did an awesome job in it with the FSRedux, and I like it a lot, but I'd also like to see a more modern layout, too...I know one of the things you wanted was better interior lighting, which I think I got... Akron had helped me with the exterior texture. I need to do external lights, and redo the heatshield. I may try to reshape the the lower deck portholes, and maybe evn add some lower deck detail.

It will be nice to use the other pods as examples, to see if I can figure out the MAS props, :) too

  • Like 1

Share this post


Link to post
Share on other sites
18 hours ago, Stone Blue said:

Yes, please do! You did an awesome job in it with the FSRedux, and I like it a lot, but I'd also like to see a more modern layout, too...I know one of the things you wanted was better interior lighting, which I think I got... Akron had helped me with the exterior texture. I need to do external lights, and redo the heatshield. I may try to reshape the the lower deck portholes, and maybe evn add some lower deck detail.

It will be nice to use the other pods as examples, to see if I can figure out the MAS props, :) too

Okay, the Yarbrough pod is on Dropbox, since I know some of the props it refers to aren't in the current dev build.  If you need some of those props updated (like the DSKY), let me know and I'll see what I can do about getting them refreshed.

I've also added a BDB Kane IVA that I'm using - that's in the 0.1.2 release of MAS that I pushed to GitHub a few minutes ago (along with more prop configs).

  • Like 3

Share this post


Link to post
Share on other sites

Rebuilt for KSP 1.3.0, and camera functionality is now available (although post-processing effects aren't implemented).  And a few more props are available.

  • Like 6

Share this post


Link to post
Share on other sites

Now updated with functional camera shaders.  And documentation on the wiki.  If anyone is trying this out to configure props, I'd appreciate any feedback you are willing to provide on the documentation: Is the example helpful?  Can you find the information you need?  If not, what's missing, or how can I make it easier to find?

  • Like 4

Share this post


Link to post
Share on other sites

I have so far been too intimidated by the lua aspect of MAS to give it a try. I just figured out how to make RPM props work, and the idea of having to switch is scary, although I figure I'll have to anyway eventually.

  • Like 1

Share this post


Link to post
Share on other sites
41 minutes ago, theonegalen said:

I have so far been too intimidated by the lua aspect of MAS to give it a try. I just figured out how to make RPM props work, and the idea of having to switch is scary, although I figure I'll have to anyway eventually.

You don't really need to use Lua for most situations.  Which is fortunate, since the Lua interpreter is slow.  If you've experimented with the MATH and CUSTOM RPM variables, you will (I *hope*) find MAS easier to work with.  If you haven't needed to use those features yet, then there's really not a lot of difference between MAS and RPM from a prop configurator's perspective.  Instead of using all-caps variables with names like 'EASPEED', you'll use less shouty variables like 'fc.EquivalentAirspeed()'.  And, if you want to convert those m/s values into knots, you can do it with a simple multiplication.

Have you given the example walkthrough a look?  Does it go off into the weeds and esoterica too quickly?  I really want to get examples that aren't overwhelming, but I can't gauge my examples, since I wrote the mod and I've been writing software in some capacity for over two decades.

What I hope to do is to make something that is approachable, so IVA and prop creators can try it out, but that is very powerful and flexible, so as people use it, they'll find ways to do all sorts of things without the difficulty that RPM had.  For an example - look at alexustas's ALCOR lander.  In game, that is an incredible game play experience.  Then, take a look at all of the RPM CUSTOM and MATH variables he had to use to create that IVA, and ... wow.  It makes my brain hurt to think of the effort to bend RPM until it could do what was needed.

  • Like 2

Share this post


Link to post
Share on other sites

Yeah, I use a lot of CUSTOM, MATH, and SELECT variables. There is a lot of bending going on, but mostly I base it around what alexustas or you or DeputyLOL did in the first place. Almost all of the props I use with Warbird Cockpits are modified in texture, model, config, or all three.

I'm going to go through the example now. One thing that has been consistently excellent in my RPM experience is the quality of the documentation wiki on github. True lifesaver.

Have you looked at Near Future Spacecraft to see if your config needs updating now that NFS is updated?

 

EDIT: First impressions.

First, I really like that we can set requiring power and a g-limit per IVA in the MASFlightComputer, however, I have a few instruments (like an analog magnetic compass) that are supposed to never be interfered with by power loss. Can I set individual instruments to override the "requiresPower" setting in MASFlightComputer?

Second, I really hope there's an easier and more modulemanager-friendly way to add NAV beacons to the NAV radios in MAS.

@MOARdV, it's clear that your penchant for great documentation is alive and well. I feel a lot better about trying MAS, although I think I'm going to stick with RPM for the next version of Warbird Cockpits.

Edited by theonegalen
  • Like 1

Share this post


Link to post
Share on other sites
11 hours ago, theonegalen said:

Yeah, I use a lot of CUSTOM, MATH, and SELECT variables. There is a lot of bending going on, but mostly I base it around what alexustas or you or DeputyLOL did in the first place. Almost all of the props I use with Warbird Cockpits are modified in texture, model, config, or all three.

I'm going to go through the example now. One thing that has been consistently excellent in my RPM experience is the quality of the documentation wiki on github. True lifesaver.

Have you looked at Near Future Spacecraft to see if your config needs updating now that NFS is updated?

 

EDIT: First impressions.

First, I really like that we can set requiring power and a g-limit per IVA in the MASFlightComputer, however, I have a few instruments (like an analog magnetic compass) that are supposed to never be interfered with by power loss. Can I set individual instruments to override the "requiresPower" setting in MASFlightComputer?

Second, I really hope there's an easier and more modulemanager-friendly way to add NAV beacons to the NAV radios in MAS.

@MOARdV, it's clear that your penchant for great documentation is alive and well. I feel a lot better about trying MAS, although I think I'm going to stick with RPM for the next version of Warbird Cockpits.

I haven't updated NFS yet, although I've been thinking of switching back to that pod again, since I really like cockpit-style IVAs (even though I don't fly fixed-wing aircraft).

The g-limit / power requirements are opt-in per node in a prop.  Even if an IVA is configured to have those effects, the props themselves must use the `fc.Conditioned()` method for those effects to have any impact on the prop.  Thus, you can have a pitot-driven altimeter that works under all conditions, but the backlighting for it can flicker when pulling out of a dive, for instance.  Mechanical gauges wouldn't use the `fc.Conditioned()` modifier on its controlling variables.

The NAV beacons are still up in the air.  There needs to be a way to define them in a config file, and it is probably not complex (name, code, position, type, IIRC), but I need to do some learning on the topic before I dive into it.

EDIT: Oh, and thank you for feedback.  It helps *a lot* to know whether it helps, and what needs to be clearer.

Edited by MOARdV
I need to say Thanks!
  • Like 1

Share this post


Link to post
Share on other sites

I've updated the mod again (after a few quiet updates that I didn't post here).  I am now including an all-new IVA for the Yarbrough08 Mk. 1-1 A2 command pod, since I keep returning to it for IVA development (I still haven't found an IVA layout as well setup for the style of IVA I want to create).  I've arbitrarily bumped the revision a few steps, since I think the DLL interface has stabilized for the most part, and it will be ready for a 1.0 release once I get a couple of other things updated.

  • Like 3

Share this post


Link to post
Share on other sites

Hey! I knew you were working on it, but I hand't seen this thread yet. Glad to know it's out (tho WIP) in the open!

Oh, a question. Back in the day, when Mihara was still developing RPM, I made a config that added default screen configurations to different pods and capsules. With the advent of the RPMFlightComputer (is it called that?), the screen selection became associated with a ship and not a part, and my configs wouldn't work anymore.

Will I be able to do a similar thing here?

Share this post


Link to post
Share on other sites
44 minutes ago, monstah said:

Hey! I knew you were working on it, but I hand't seen this thread yet. Glad to know it's out (tho WIP) in the open!

Oh, a question. Back in the day, when Mihara was still developing RPM, I made a config that added default screen configurations to different pods and capsules. With the advent of the RPMFlightComputer (is it called that?), the screen selection became associated with a ship and not a part, and my configs wouldn't work anymore.

Will I be able to do a similar thing here?

If I follow what you're asking correctly, yes.  You could write a MM patch to add entries to the PERSISTENT_VALUES node in the MASFlightComputer config for the pod in question (or just edit the pod config, of course).  That should set the initial page that is selected at part load time to whatever you specify.  You would need to identify the MFDs, but even that's pretty easy to do with a tweak to the page configs.

Share this post


Link to post
Share on other sites

After a long hiatus, I have released MAS v0.10.0.  This includes a few quality improvements, and one major new feature (support for a context/right-click menu option that can in turn trigger MAS actions).

Available on GitHub.

  • Like 7

Share this post


Link to post
Share on other sites

MAS v0.11.0 is now available on GitHub.  This is a HUGE update that gets MAS close to full release (take a peek at the change log on the release page!).

Some (but not all) of the major new features - a modernized MFD (MFD2, visible in the latest first post screen shot and installed in two of the three left cockpit MFDs in the Yarbrough IVA).  Capability to interact with mods that support RasterPropMonitor MFD pages (SCANsat and DPAI, for instance).  Vastly expanded MFD configuration options.  Support for custom waypoints (selecting the waypoints from the MFD, tracking range and bearing to waypoint).  Radio Navigation support (VOR, NDB, DME, and ILS), including over three dozen navigation beacons scattered around Kerbin defined by @alexustas for the ASET Avionics mods (see the Jebbesen Kerbin Aerocharts).

Many thanks to @alexustas for critical feedback and help on features.  That feedback was a primary force behind many of the improvements in this release.

Because the MAS IVA is complex, I've created a Quickstart Guide for the Yarbrough Mk.1-1A2 cockpit.  I realize the Yarbrough command pod is outdated - I am looking for a suitable command pod that could be used for future development.  This release of MAS includes a Module Manager patch to update the Yarbrough pod to 1.3.1 standards.

I would very much appreciate feedback on this IVA - particularly, how does your KSP game perform when you're flying this pod from IVA?  Does the game lag?  Does game play in IVA feel similar to RPM?  Better?  Worse?  In what way?  Feel free to PM me if you don't want to put the feedback in this thread.  What I want to find out is whether other people using this mod see any performance problems that aren't present when playing with RPM.  My own experience with it is that it feels much more responsive than RPM, and I don't see garbage collections (the pause and the yellow flash of the clock) 

  • Like 6

Share this post


Link to post
Share on other sites

WOW!   Very well done!  I cannot wait to learn all the ins and outs of the props

Trying to zoom in to read the bottom buttons on the two large MFD2's.   View will not aim down far enough.   Is that something you can change in your IVA of the Yarbrough?

  • Like 1

Share this post


Link to post
Share on other sites
12 minutes ago, nukeboyt said:

WOW!   Very well done!  I cannot wait to learn all the ins and outs of the props

Trying to zoom in to read the bottom buttons on the two large MFD2's.   View will not aim down far enough.   Is that something you can change in your IVA of the Yarbrough?

That's interesting - I don't have a problem seeing them.  What resolution is your screen?  The screenshots I took were at 1920 x 1080 windowed.

Share this post


Link to post
Share on other sites

I can read them if I try.  What I'm really looking for is to be able to zoom in on those buttons and the bottom of the screen.   Presently, you cannot "focus you view" any lower than the center of the screen.   When you zoom in, the bottom of the screen (and the buttons) go out of your field of view.     

 

Also:   The "Next / Previous" buttons on the small monitor do not seem to function.   They switch cameras on the large monitor, but not on the small one.

Edited by nukeboyt

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now