MOARdV

[WIP] [1.8.x] MOARdV's Avionics Systems - MAS Interactive IVA! (v1.1.0, 4 November 2019)

Recommended Posts

18 hours ago, MOARdV said:

Please update to MAS 1.1.0.  It looks like you're still using 1.0.0, which exhibited that problem in KSP 1.8.x

Oh wow, thank you!

Share this post


Link to post
Share on other sites
12 hours ago, I likeOxidizerrfuel said:

This is no work because when I installed with all dependencies, it didn't add the nice look IVAs. Moardv if you're reading this, please try to fix this issue. 

Please provide some information.

 

Share this post


Link to post
Share on other sites

As we have fc.SetBits and fc.ClearBits , will there be a fc.GetBits() function to check if a bit is set?  ATM I'm kinda thinking how to check otherwise, but as we don't have bitwise shift commands I am kinda stuck.

Share this post


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

As we have fc.SetBits and fc.ClearBits , will there be a fc.GetBits() function to check if a bit is set?  ATM I'm kinda thinking how to check otherwise, but as we don't have bitwise shift commands I am kinda stuck.

You can use fc.BitwiseAnd(value1, value2) - that returns zero or not-zero:

fc.BitwiseAnd(fc.GetPersistentAsNumber("persistent name"), value)

That's a simple enough statement that MAS can optimize it into IL, instead of needing to invoke Lua (meaning, it's fast to process).

Share this post


Link to post
Share on other sites

So I want to make my Crew Dragon IVA better because right now it just sucks :D 
What kind of screens would you prefer if I would to use some of your screens? I haven't checked the mod out for a while so I'm not sure if you got the touch screens working already.

Share this post


Link to post
Share on other sites
2 hours ago, damonvv said:

So I want to make my Crew Dragon IVA better because right now it just sucks :D 
What kind of screens would you prefer if I would to use some of your screens? I haven't checked the mod out for a while so I'm not sure if you got the touch screens working already.

Touch screens are fully supported by MAS.  I started working on some for Angel-125's KFS Flapjack cockpit, but I hit modding burnout before I finished them, so they didn't get added to the repo. I honestly can't say when I'll get a general-purpose touch screen MFD working - I spent a lot of time modding KSP, and not playing the game or working on other projects, so I'm currently enjoying taking a break from modding.

When I return to KSP modding, I want to get a reference TS MFD implemented.

To actually answer your question (sorry, I'm rambling today - finally got to use some long overdue vacation time, so I'm not too focused right now :) ) - if you need something off the shelf,  the IFMS group of MFDs is the most mature design I have.  You'll need at least one MAS_IFMS_MFD (this is the general-purpose MFD for information display and in-flight tasks), a MAS_IFMS_Terminal (this is the full-keyboard + display, for data entry and management), and maybe a MAS_IFMS_MainCompUnit somewhere (only need one). It looks like I remembered to make GameData/MOARdV/MFD/IFMS/README_IFMS.txt to sort-of document the prop family.

For a touch screen, if you want to try to tackle it yourself, I can put the incomplete KFS touch screens somewhere so you have something for reference.  I'd be more than happy to help out with setting up a general-purpose TS MFD, as long as I've got some feedback on what's needed and whether the design makes sense.  I think part of my burnout with IVA design is that I rarely get constructive feedback.

Share this post


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

Touch screens are fully supported by MAS.  I started working on some for Angel-125's KFS Flapjack cockpit, but I hit modding burnout before I finished them, so they didn't get added to the repo. I honestly can't say when I'll get a general-purpose touch screen MFD working - I spent a lot of time modding KSP, and not playing the game or working on other projects, so I'm currently enjoying taking a break from modding.

When I return to KSP modding, I want to get a reference TS MFD implemented.

To actually answer your question (sorry, I'm rambling today - finally got to use some long overdue vacation time, so I'm not too focused right now :) ) - if you need something off the shelf,  the IFMS group of MFDs is the most mature design I have.  You'll need at least one MAS_IFMS_MFD (this is the general-purpose MFD for information display and in-flight tasks), a MAS_IFMS_Terminal (this is the full-keyboard + display, for data entry and management), and maybe a MAS_IFMS_MainCompUnit somewhere (only need one). It looks like I remembered to make GameData/MOARdV/MFD/IFMS/README_IFMS.txt to sort-of document the prop family.

For a touch screen, if you want to try to tackle it yourself, I can put the incomplete KFS touch screens somewhere so you have something for reference.  I'd be more than happy to help out with setting up a general-purpose TS MFD, as long as I've got some feedback on what's needed and whether the design makes sense.  I think part of my burnout with IVA design is that I rarely get constructive feedback.

Enjoy your well deserved holiday!

I am going to make a new IVA model soon. So only after that I will start thinking what I want on the screens. (I think I want 3 16:9 touchscreens with just a few buttons displaying fuel, navbal, maybe a map, some docking cam action, you name it. I don't want it to be super complicated.

But maybe in a week or 2/3 I can give you some more feedback on what I actually want and if it is possible to make such thing.

Share this post


Link to post
Share on other sites
2 hours ago, slaintemaith said:

Is there a easy path to getting Kermantech's Mk3 IVA (A RasterPropMon IVA) compatible with this?

From looking at the screen shot, it looks like a number of those props already have MAS versions.  Those props could be updated with a Module Manager patch.  If you weren't looking for MFDs that had the exact same pages as RPM, then the MFDs could be replaced with one of the MAS MFDs.  As for an easy path, not currently - MAS needs a lot more RPM props converted before an MM patch could be written to upgrade every IVA from RPM to MAS.

Share this post


Link to post
Share on other sites
Posted (edited)
13 minutes ago, MOARdV said:

From looking at the screen shot, it looks like a number of those props already have MAS versions.  Those props could be updated with a Module Manager patch.  If you weren't looking for MFDs that had the exact same pages as RPM, then the MFDs could be replaced with one of the MAS MFDs.  As for an easy path, not currently - MAS needs a lot more RPM props converted before an MM patch could be written to upgrade every IVA from RPM to MAS.

Thanks for the hasty response!

Okay, so the next question is: has anyone made a Mk3 IVA that's MAS compatible?

Edited by slaintemaith

Share this post


Link to post
Share on other sites
16 hours ago, slaintemaith said:

Okay, so the next question is: has anyone made a Mk3 IVA that's MAS compatible?

 

Share this post


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

 

Just to touch on that one, the "Mr. Glass" variant will work in current versions of KSP, but Full Retro will not. 

You will also need RPM for those ivas as well. 

Share this post


Link to post
Share on other sites
On 12/24/2019 at 12:57 PM, MOARdV said:

I spent a lot of time modding KSP, and not playing the game or working on other projects, so I'm currently enjoying taking a break from modding.

When I return to KSP modding, I want to get a reference TS MFD implemented.
...

I think part of my burnout with IVA design is that I rarely get constructive feedback.

When you return to KSP modding, I'd be happy and thrilled to help beta test. Also, re: IVA design, happy to give constructive feedback and I have worked both Support and QA at various SaaS companies, so I can write a decent bug report.

Share this post


Link to post
Share on other sites

Tried to convert some props to MAS and got stuck with variables. Github wiki says nothing about variables initialization. If multiple props use the same persistent variable where should I initialize it? Or is it automatically initialized on the first use?

Share this post


Link to post
Share on other sites
2 hours ago, Manul said:

Tried to convert some props to MAS and got stuck with variables. Github wiki says nothing about variables initialization. If multiple props use the same persistent variable where should I initialize it? Or is it automatically initialized on the first use?

fc.GetPersistentAsNumber always returns 0 if a persistent variable does not exist, which is equivalent to saying that the default value for a persistent variable is 0.

If you want a persistent variable to be initialized when the IVA is first started, use PERSISTENT_VARIABLES in the MASFlightComputer part module.  You may also initialize a persistent on a particular prop using fc.InitializePersistent(name, value) in a prop's startupScript field (or, you can run a Lua script in startupScript if you need to initialize multiple persistent values).

If multiple props use the same persistent variable, you probably want to use the PERSISTENT_VARIABLES initializer in MASFlightComputer. so that you are guaranteed the variable is initialized before any props see it.  Otherwise, every prop that may use the persistent variable will need to use startupScript with fc.InitializePersistent, so that you know it's initialized before first use.

Generally, I try to design props so that the persistent value of 0 is the default.  That way, if I forget to add PERSISTENT_VARIABLES to the part module (or someone else is using the prop to design their own IVA), the prop will still have a good starting value.  fc.InitializePersistent is a convenient way to initialize a persistent to a specific value when it's not used by multiple props.

Share this post


Link to post
Share on other sites

Thank you. Now I see that my variables were initialized, i have just messed up with buttons colliders that's why nothing is working.

Is there no GPWS currently in MAS? I didn't find any GPWS-related props so I decided to make the switches but I'm not sure that GPWS itself isn't hidden somewhere within scripts or MFDs

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.