Jump to content

[1.8.x, 1.9.x, 1.10.x] ModuleAnimGenericResourceUsage


linuxgurugamer

Recommended Posts

This is a collection of three modules which are used to add resource usage to parts which otherwise don't need any.  They were written to add EC usage to various stock parts such as the inflatable Heat Shield, the ISRU, the drills, etc.  By itself they do nothing, they are used by my upcoming mod Realistic Power Draw and Capsule Corp Endeavor, made by forum user @Gabu

Availability

Available via CKAN

Modder Instructions

  • ModuleAnimGenericResourceUsage

This small module simply makes sure that the needed specified resources are available before opening or closing the animation.  When the animation is triggered, the resources which needed to be available will be used (ie:  if 10 EC needed to be able to open a door and it has 15, then opening the door will use 10 ec, eaving 5)

This inherits all fields from ModuleAnimateGeneric, and the animations, etc, work exactly as they do in ModuleAnimateGeneric.

An example module entry is:

    MODULE
    {
        name = ModuleAnimGenericResourceUsage

        ResourceUsed = ElectricCharge
        ResourceAmtNeededToStart = 10
        ResourceAmtNeededToEnd = 5

        // Following is from a test example which was using the deployable docking port
        // as a test.  Replace the values with what's needed for your mod.

        animationName = dockingring
        actionGUIName = #autoLOC_502070 //#autoLOC_502070 = Toggle Shield
        startEventGUIName = #autoLOC_502071 //#autoLOC_502071 = Open Shield
        endEventGUIName = #autoLOC_502072 //#autoLOC_502072 = Close Shield
        allowAnimationWhileShielded = False
    }

 

  •     name                        Name of the mod, required
  •     ResourceUsed                  Name of the resource which has to be present before the startEvent can occur
  •     ResourceAmtNeededToStart    Amount of the resource needed in order for the startEvent to occur
  •     ResourceAmtNeededToEnd        Amount of the resource needed in order for the endEvent to occur


    If no valid resource is specified everything will be as normal

 

  • ModuleAnimGroupResourceUsage

This small module simply makes sure that the needed specified resources are available before starting the animation.  When the animation is triggered, the resources which needed to be available will be used (ie:  if 10 EC needed to be able to open a door and it has 15, then opening the door will use 10 ec, eaving 5).  If/when the available resources drop blow the minimum needed, the animation will stop

This inherits all fields from ModuleAnimationGroup, and the animations, etc, work exactly as they do in ModuleAnimationGroup.

The following is an example:

    @PART[SurveyScanner]:HAS[@MODULE[ModuleAnimationGroup]]
    {
        @MODULE[ModuleAnimationGroup]
        {
            %name = ModuleAnimGroupResourceUsage

            ResourceUsed = ElectricCharge
            ResourceAmtUsedForDeploy = 5
            MinimumResAmt = 5
            PowerConsumption = 1.5

        }
    }
  •     name                        Name of the mod, required
  •     ResourceUsed                Name of the needed resource
  •     ResourceAmtUsedForDeploy    The amount of resources used to start the animation
  •     MinimumResAmt                The minimum amount of resources needed to continue operation
  •     PowerConsumption            How much of the resource is used per second

 

  • ModuleSciExpResourceUsage

This small module simply makes sure that the needed rsources are available before starting the science experiment.  When triggered, the resources which needed to be available will be used (ie:  if 10 EC needed to be able to open a door and it has 15, then opening the door will use 10 ec, eaving 5).  If/when the available resources drop blow the minimum needed, the animation will stop

This inherits all fields from ModuleScienceExperiment, and the animations, etc, work exactly as they do in ModuleScienceExperiment.

The following is an example:

    @PART[sensorAtmosphere]:HAS[@MODULE[ModuleScienceExperiment]]
    {
        @MODULE[ModuleScienceExperiment]
        {
            %name = ModuleSciExpResourceUsage

            ResourceUsed = ElectricCharge
            ResourceAmtUsedForDeploy = 5
        }
    }
  •     name                        Name of the mod, required
  •     ResourceUsed                Name of the needed resource
  •     ResourceAmtUsedForDeploy    The amount of resources used to start the animation
Edited by linuxgurugamer
Link to comment
Share on other sites

  • 2 months later...

@linuxgurugamer, I think I've found a conflict between MAGRU and MechJeb, causing a failure to complete loading of KSP.  Refer to MAGRU GitHub Issue #1, from 25 August.  I've narrowed down the Issue specifically to MJ.  It can be replicated on KSP 1.10.1 (including Expansions) with just the two addons.   I've tried both the latest Release (2.11.0.0) and Dev versions (#1034) of MJ.  I encountered this earlier, trying out @Gabu's Capsule Corp, while using KSP 1.10.0 and MJ #995.

My Module Manager error message reads: 

Mod(s) DLL that are not compatible with this version of KSP

ModuleAnimGenericResourceUsage 0.0.0.4 GameData\ModuleAnimGenericResourceUsage\Plugins\ModuleAnimGenericResourceUsage.dll

Edited by KSPrynk
Noted KSP includes Expansions
Link to comment
Share on other sites

6 hours ago, KSPrynk said:

@linuxgurugamer, I think I've found a conflict between MAGRU and MechJeb, causing a failure to complete loading of KSP.  Refer to MAGRU GitHub Issue #1, from 25 August.  I've narrowed down the Issue specifically to MJ.  It can be replicated on KSP 1.10.1 (including Expansions) with just the two addons.   I've tried both the latest Release (2.11.0.0) and Dev versions (#1034) of MJ.  I encountered this earlier, trying out @Gabu's Capsule Corp, while using KSP 1.10.0 and MJ #995.

My Module Manager error message reads: 

Mod(s) DLL that are not compatible with this version of KSP

ModuleAnimGenericResourceUsage 0.0.0.4 GameData\ModuleAnimGenericResourceUsage\Plugins\ModuleAnimGenericResourceUsage.dll

You can ignore that, it’s  not really an error.  I’ve  used both in 1,10.1 without any problems

Edited by linuxgurugamer
Link to comment
Share on other sites

1 hour ago, linuxgurugamer said:

You can ignore that, it’s  not really an error.  I’ve  used both in 1,10.1 without any problems

Unfortunately, I can't.  Instead of continuing to load after progress gets to "Load Expansion Assets: Breaking Ground  (1/1)" as the last step before the menu screen, there's a new message in the progress bar, "Verifying Expansion: Breaking Ground Squad Expansion/Serenity."  The game just cycles through the various screens of artwork and witty loading phrases.  I've let it run for 15 minutes, with nothing happening. 

I'll have to create another clean instance of KSP 1.10.1 with just the two Addons, with and without the Squad Expansions, and I'll try to get the logs, but that'll have to wait 'til the next day at least.   I'm using the Windows version of KSP, BTW.

Edited by KSPrynk
Link to comment
Share on other sites

The latest versions of MechJeb and this mod will definitely load/work together in 1.10.1 - you might try deleting and reinstalling each of these mods if you're 100% certain something else isn't the problem.

edit - double post

Edited by Idleness
Link to comment
Share on other sites

6 hours ago, KSPrynk said:

Unfortunately, I can't.  Instead of continuing to load after progress gets to "Load Expansion Assets: Breaking Ground  (1/1)" as the last step before the menu screen, there's a new message in the progress bar, "Verifying Expansion: Breaking Ground Squad Expansion/Serenity."  The game just cycles through the various screens of artwork and witty loading phrases.  I've let it run for 15 minutes, with nothing happening. 

I'll have to create another clean instance of KSP 1.10.1 with just the two Addons, with and without the Squad Expansions, and I'll try to get the logs, but that'll have to wait 'til the next day at least.   I'm using the Windows version of KSP, BTW.

It would help if you could provide the Player.log.

This usually is a problem with a bad config

Link to comment
Share on other sites

1 hour ago, linuxgurugamer said:

It would help if you could provide the Player.log.

I see those ReflectionTypeLoadException, too: https://pastebin.com/VrjqUKLD

MJ uses reflection to search for its modules at startup (MJ supports add-ons). Probably no other mod does that, so that's why such errors only show up with MechJeb.

 

Link to comment
Share on other sites

28 minutes ago, KSPrynk said:

@linuxgurugamer, I DM'ed you pastebin links for player log file.

Ok, first, next time post the links in the thread so that other people can look and help.

Second, I looked at both files, and there is absolutely nothing wrong.  No exceptions in either file.  Also, looks like the Player.log stops after dumping ModuleManager log to main log, was this the full file?

Link to comment
Share on other sites

32 minutes ago, linuxgurugamer said:

Ok, first, next time post the links in the thread so that other people can look and help.

Second, I looked at both files, and there is absolutely nothing wrong.  No exceptions in either file.  Also, looks like the Player.log stops after dumping ModuleManager log to main log, was this the full file?

Re-posting for others:

https://pastebin.com/BNzjWdcy

https://pastebin.com/CXBNVUMp

I closed KSP after it stalled.  I'm assuming this explains the Module Manager half of the log showing the same Reflection exception repeating over and over.

As noted earlier, it didn't freeze, but instead kept showing loading artwork for 15 minutes (last night at least), with nothing advancing further on the Progress bar, while displaying the same error message noted earlier. 

Here's the log with just KSP 1.10.1 and nothing else:

https://pastebin.com/MtkiYyae

I can do separate logs for MM+MJ-only and MM+MAGRU-only if anyone thinks that will help.

EDIT: The first two logs make up the contents of Player.log.  There was a Player-Prev.log which is posted in the third link above.  I'm appending the filenames so I can track when and what was installed at the time.

EDIT 2: Re: PLayer.log, I literally just picked a natural break point, which happened to be the start of the MM portion, and copy-pasted the upper half of the log in one file, and the lower half in the other, because Pastebin sets a ~500KB limit for guest accounts.

Edited by KSPrynk
more info
Link to comment
Share on other sites

I'm going to go for run around the block and let KSP sit and stall for a while (start time 1225), to see if it just needs more time to think about itself.  But MM is showing the same "Mod dll not compatible with this version of KSP: MAGRU" error, the artwork and witty remarks keep changing, and the progress bar is stuck at "Loading Expansions...", which is interesting, because I don't have either MH or BG installed.

Link to comment
Share on other sites

@linuxgurugamer and all interested forensic specialists, below is a fresh set of Player.log files, for the MAGRU vs MJ conflict noted earlier, divided at the Module Manager start point, due to Pastebin file size limits.


https://pastebin.com/0Ya8E4vD - KSP MM MAGRU MJ 1of2
https://pastebin.com/KLm3hzXz - KSP MM MAGRU MJ 2of2

https://pastebin.com/M2sdQfyr - KSP MM MJ 1of2
https://pastebin.com/cW9Bd0CD - KSP MM MJ 2of2

https://pastebin.com/wgnaRBZS - KSP MM MAGRU 1of2
https://pastebin.com/Qau6DrtV - KSP MM MAGRU 2of2

I let the first configuration sit in a stalled state for 20 minutes before I forced it closed.  The other two configurations started normally, and allowed me to Quit from the main menu.   I cleaned the four MM files out, in between the three configurations, to force them to start fresh.

Edited by KSPrynk
Made the hyperlinks work
Link to comment
Share on other sites

Did you do an ALT-F12 to open the window, click the Debugging tab (on the left) and then enable the line "Immediately Flush Log File to Disk" (third from the top)?  If you didn't, then that would explain the missing lines from the log file.

Once it stalls, that's the end of anything happening.  So as soon as the game starts to load, try the ALT-F12 as I described above

The only odd thing I can see is at the very beginning, you have the following line:


XInput1_3.dll not found. Trying XInput9_1_0.dll instead...

while when I checked my logs, that line isn't there at all

Edited by linuxgurugamer
Link to comment
Share on other sites

1 hour ago, linuxgurugamer said:

Did you do an ALT-F12 to open the window, click the Debugging tab (on the left) and then enable the line "Immediately Flush Log File to Disk" (third from the top)?  If you didn't, then that would explain the missing lines from the log file.

Once it stalls, that's the end of anything happening.  So as soon as the game starts to load, try the ALT-F12 as I described above

The only odd thing I can see is at the very beginning, you have the following line:




XInput1_3.dll not found. Trying XInput9_1_0.dll instead...

while when I checked my logs, that line isn't there at all

I have the de-bug flush to disk turned on for this one:

https://pastebin.com/d9ESWhEf - KSP MM MAGRU MJ 1of2 8Nov20 1537

https://pastebin.com/utZRmfnH - KSP MM MAGRU MJ 2of2 8Nov20 1537

Did it catch the lines you were looking for?

Edited by KSPrynk
typo
Link to comment
Share on other sites

21 minutes ago, KSPrynk said:

I have the de-bug flush to disk turned on for this one:

https://pastebin.com/d9ESWhEf - KSP MM MAGRU MJ 1of2 8Nov20 1537

https://pastebin.com/utZRmfnH - KSP MM MAGRU MJ 2of2 8Nov20 1537

Did it catch the lines you were looking for?

No, so I'm now stumped.

One thing, try deleting the ModuleManager.ConfigCache and reloading, sometimes that helps

Link to comment
Share on other sites

36 minutes ago, linuxgurugamer said:

No, so I'm now stumped.

One thing, try deleting the ModuleManager.ConfigCache and reloading, sometimes that helps

Here's another.  Deleted MM cache (again).  I turned on as many debug settings for this one as I could find, including missing localization keys...

https://pastebin.com/Ec6tEU1S - KSP MM MAGRU MJ 1of2 8Nov20 1640

https://pastebin.com/43FVMWNe - KSP MM MAGRU MJ 2of2 8Nov20 1640

I suppose I can wait and hope that KSP 1.11 unclogs this, otherwise MJ is probably going to win.  Which is too bad, because I was looking forward to CC when it first came out as a WIP.

Any suggestions for someone on the MechJeb side of the house who could diagnose this?

Link to comment
Share on other sites

3 hours ago, linuxgurugamer said:

I may have missed this, but have you tried it without any of the DLC?

Also, how did you install the mods?

I'm not using the DLC right now.  It's literally just plain vanilla KSP 1.10.1, MM, MAGRU, and MJ.

I install manually,  by downloading the .exe off Squad's site (rather than deal with Steam or something similar), then running the install file while in Admin mode on my computer (a 2014 Alienware laptop, with 16GB of RAM/2 GB VRAM; recently upgraded to Win10 Pro and a fully SS HDD).  From there, I enable security settings on the KSP folder to allow Other User accounts to modify.  I'll go to my Non-Admin User account and create a new shortcut.   This lets me play/work/surf on the Non-Admin User account, just as a measure of security against malware slipping by.

One thing that may have been creating a tangle of .dll files is the fact that I keep one "working" instance of KSP, sometimes a "new version" instance, to try out KSP 1.XX.0 while waiting for the inevitable patch to come out 2-4 weeks later, and, as needed, an "experimental" instance for situations like this.  I've gotten into the habit of assigning unique folder and start menu names for each instance directory, to avoid multiple instances of KSP looking into the same place (aside from the single AppData folder for my Non-Admin User profile).

I install mods manually as well, mostly because I've gotten in the habit of pruning parts I don't use as a way of saving memory.  Plus I've been dabbling in modding existing parts .cfgs to make custom parts.  With no mods or DLC, I'm using a little over 25% of my RAM (8% actually KSP).  Fully DLC/modded out, I'm closer to 70-80% (hence the pruning lately).

When I encountered this situation, I spent a day narrowing down the suspect mods, before I filed the first report here.   I had been running KSP 1.10.0 (took a break while Kopernicus was DOA), then used the Squad upgrade patch to 1.10.1.  THEN I downloaded the full version of 1.10.1 and the updated DLCs.  Because .dlls keep coming up as a red flag, I've since deleted ALL instances of KSP from my computer (backed up my saves, of course), and then I used CCleaner to hunt down and delete, in both Admin and Other User accounts, every registry with the word KSP in it that it flagged as dead.  I then installed a fresh instance of KSP - no DLC - and just MM, MJ, and MAGRU.  It's been pretty consistent in throwing the same error and stalling in the last stage of loading. 

Re-installing Windows is my option of last resort (not how I want to spend my Thanksgiving vacay), but I'd rather wait for KSP 1.11 to come out and hope when everyone recompiles their mods that it'll sort itself out.  OTOH, it sounds like this reflection exception in MJ has been known about for a while, but this is the first time I've heard about it, or gotten stalled by MJ, in six years of playing since KSP 0.24.

EDIT: Sorry, not trying to poke the bear, but it's been frustrating when there's no clear answer evident.  This is the first time I've had to resort to posting full logs to try and resolve a problem.  I'm usually pretty good about narrowing down to re-produce an issue. 

Edited by KSPrynk
typo and de-compressing
Link to comment
Share on other sites

5 hours ago, KSPrynk said:

EDIT: Sorry, not trying to poke the bear, but it's been frustrating when there's no clear answer evident.  This is the first time I've had to resort to posting full logs to try and resolve a problem.  I'm usually pretty good about narrowing down to re-produce an issue. 

Nothing to apologize for.  You've been providing what I've asked for.  It's just weird, I'll try to replicate the exact scenario tomorrow (1:30 am here)

Link to comment
Share on other sites

13 hours ago, KSPrynk said:

EDIT: Sorry, not trying to poke the bear, but it's been frustrating when there's no clear answer evident.  This is the first time I've had to resort to posting full logs to try and resolve a problem.  I'm usually pretty good about narrowing down to re-produce an issue. 

This appears to be something wrong in Mechjeb, I've posted a complete description along with logs in the Mechjeb thread.

For now, try using an older version of Mechjeb, when I get some more time later on I'll do those tests as well.

Sorry I couldn't be more helpful, but you have been a great user, doing exactly what I asked and then even more without complaining.  

Link to comment
Share on other sites

Just now, Stone Blue said:

@KSPrynk@linuxgurugamer sorry both of you... I did read bac thru most of the wall of text, but I couldnt find reference to which version of MJ this is happening with...vOv
ie is it the latest stable, or a dev release?

I used the latest installed by CKAN, according to CKAN, it is 4.1.4

Link to comment
Share on other sites

5 minutes ago, linuxgurugamer said:

I used the latest installed by CKAN, according to CKAN, it is 4.1.4

uhh.. thats the ModuleManager version :P

But I got the info from your CKAN info ;)
Thanx for looking into this... Hoping to add support for this to a mod ;) 
But having other issues with MJ, and KURS camera, rn, too :P
Also, VesselViewer is making MFDs completely unresponsive/unusable in MAS...
I have lots to troubleshoot... lol

Edited by Stone Blue
Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

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.

×
×
  • Create New...