severedsolo

[1.7.x] Oh Scrap!- A ScrapYard based Part Failure and Reliability Mod 1.6.3 (22/06/2019)

Recommended Posts

2 hours ago, PhoenixSpaceIndustries said:

Yeah good point :D

Although, having said all that, "Oh, Scrap!" is not a bad name.

Share this post


Link to post
Share on other sites

Beta 5 Now Available:

  • Fixed failures not persisting between scene changes (again)
  • Added "safety threshold" setting in Custom Difficulty Settings.
  • Added GUI window that will pop up a warning in the Editor if a parts failure rate is above the safety threshold.
  • Improved failure rate updating in the editor (may sometimes be a bit funky still, apply the inventory to ensure you have the correct rates)

 

Edited by severedsolo

Share this post


Link to post
Share on other sites

I don't know if these are already planned, but I think that a toolbar presence for the mod would be great, and more importantly (for me anyway), some sort of persistent messaging system regarding the failures that have occurred would be great! I think it would be best if it went through the stock messages system, just so you can track what's gone wrong. Just my thoughts, and thanks for all the awesome work you've been doing!!!

Share this post


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

I don't know if these are already planned, but I think that a toolbar presence for the mod would be great, and more importantly (for me anyway), some sort of persistent messaging system regarding the failures that have occurred would be great! I think it would be best if it went through the stock messages system, just so you can track what's gone wrong. Just my thoughts, and thanks for all the awesome work you've been doing!!!

I agree this.

 

I don`t know if it is upfm or Scrap Yard but I have a lot of errors in my log like this:

Quote

(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebugBindings.gen.cpp Line: 42)

NullReferenceException
  at (wrapper managed-to-native) UnityEngine.Object:get_name ()
  at Untitled_Part_Failure_Mod.BaseFailureModule.Initialise () [0x00000] in <filename unknown>:0
  at Untitled_Part_Failure_Mod.BaseFailureModule.OnSYInventoryAppliedToVessel () [0x00000] in <filename unknown>:0
  at EventVoid.Fire () [0x00000] in <filename unknown>:0
UnityEngine.DebugLogHandler:Internal_LogException(Exception, Object)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
UnityEngine.Logger:LogException(Exception, Object)
UnityEngine.Debug:LogException(Exception)
EventVoid:Fire()
ScrapYard.Utilities.InventoryManagement:ApplyInventoryToVessel(IEnumerable`1)
ScrapYard.ScrapYard:VerifyEditor()
 

 

and this:

Quote

(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebugBindings.gen.cpp Line: 42)

True

(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebugBindings.gen.cpp Line: 42)

False

 

 

You can find the full Log here:

output_log.txt

 

Share this post


Link to post
Share on other sites
7 hours ago, Cheesecake said:

I don`t know if it is upfm or Scrap Yard but I have a lot of errors in my log like this:

Can you confim you are running Beta 5? Those messages look exactly like an error I just fixed, so want to check that's not the problem before I go chasing ghosts.

9 hours ago, PhoenixSpaceIndustries said:

importantly (for me anyway), some sort of persistent messaging system regarding the failures that have occurred would be great!

I can do that, presumably you just want a message posted that says "xyz part has failed" or similar? - perhaps I could put whether it's been permanently damaged and the chances of a successful repair too?

Regarding toolbar: I'm not 100% sure what this would achieve? What would be the purpose of the toolbar button in your eyes?

Edited by severedsolo

Share this post


Link to post
Share on other sites

@severedsolo

Thank you. I had Beta 4. I didn`t know that there are a newer version. :wink:

 

Edit:

I used now the Beta 5 and the issue in Quote 1 is fixed. But the issue with  true/false is still there and I don't know what that caused.

Edited by Cheesecake

Share this post


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

I used now the Beta 5 and the issue in Quote 1 is fixed. But the issue with  true/false is still there and I don't know what that caused.

Thats not UPFM. I don't have it in my own log, and all UPFM logging starts with [UPFM]:

It looks like the sort of thing you'd get if you coded something like: Debug.Log(condition)

My guess is that one of your other mods is not following proper logging best-practice (perhaps they forgot to turn a debug log event off)

Edited by severedsolo

Share this post


Link to post
Share on other sites

@PhoenixSpaceIndustries - something like this perhaps? - if UPFM has not (yet) decided that the part can't be repaired, then the bottom line is replaced with "Chance of Repair: x%"

rkqTwJH.png

Edited by severedsolo

Share this post


Link to post
Share on other sites

I found the mod causing this issue. it was SmartActuators and there`s a new release that fixed this issue.
Thank you for your help.

Share this post


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

I found the mod causing this issue. it was SmartActuators and there`s a new release that fixed this issue.
Thank you for your help.

Yup sorry about that. I bundled my testing version instead of the release version by accident.

Edited by TheRagingIrishman

Share this post


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

Yup sorry about that. I bundled my testing version instead of the release version by accident.

Sounds like my release ritual.

1) Create release on Github.

2) Upload zipped GameData folder.

3) Remember that I didn't copy the new dll into the zip.

4) Remove release, and quickly upload the right one, hoping nobody has downloaded it yet.

Every. Single. Time. You'd think by now I'd have set up a Post Build event to automatically move the new dll to the folder, but nope.

Share this post


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

Every. Single. Time. You'd think by now I'd have set up a Post Build event to automatically move the new dll to the folder, but nope.

I did that enough times that I set up the build server so that I wouldn't be able to mess it up anymore. I can give you some space on my build server if you want.

Share this post


Link to post
Share on other sites
15 hours ago, magico13 said:

I did that enough times that I set up the build server so that I wouldn't be able to mess it up anymore. I can give you some space on my build server if you want.

I will take you up on that, although I might need your help actually getting everything set up.

Will probably have to wait until next weekend though, I've got a busy week ahead of me, and it's fathers day today, apparently "messing with your computer all day" doesn't count as quality father/daughter time. Pfft.

Share this post


Link to post
Share on other sites

Is it normal to have 4 failed parts in under a minute just sitting on the pad? I'm just testing things out in sandbox, and it seems like the latest release is a little extra fail prone..

Share this post


Link to post
Share on other sites
2 minutes ago, Errol said:

Is it normal to have 4 failed parts in under a minute just sitting on the pad? I'm just testing things out in sandbox, and it seems like the latest release is a little extra fail prone..

Hmm, I haven't changed anything regarding that, but I did move some code around so it's possible I broke something. I think I'm going to turn the base failure rate down a little in the next version anyway (and make it changeable by MM)

Is it consistent? Or was it just the RNG messing with you? Also, a log would be helpful

Edited by severedsolo

Share this post


Link to post
Share on other sites
11 minutes ago, Errol said:

RNG? 

KSP.log:
https://www.dropbox.com/s/92azivsfei1svbg/KSP.log?dl=0

I loaded the flight scene and had failures in under a minute both times. This is a fresh sandbox save, with KCT and Scrapyard, I'm running simulations in KRASH. Haven't run any builds yet.

RNG = Random Number Generator

You had 45 potential failures on that build, all first builds so at 50% each, sounds like working as intended (just going by the log).

Admittedly, I didn't really think about Sandbox. As I only play career, I was thinking of my own games, where I start small, and build up an inventory of "more reliable" parts, but yes a first flight with that many new parts is going to fail very quickly.

At some point in the future (as soon as I learn how to use reflection properly) I want to disable failures in KRASH simulations.

Next build will allow the failure rate to be tweaked by MM. I may also turn the defaults down a little anyway.

I may also turn failures on the pad off (it's mostly on because it's easy to test)

Edited by severedsolo

Share this post


Link to post
Share on other sites

BETA 6 (0.6) now available:

  • Exposed baseChanceOfFailure and expectedLifetime in the cfg (should now be editable via MM)
  • Will now send messages via the stock messaging system when a part fails.
  • Parts will not think about failing until the vessel is launched
  • Improved logging

Oh poop, I meant to expose maxTimeToFailure too - will do that in the next build.

 

Edited by severedsolo

Share this post


Link to post
Share on other sites
On 17/06/2017 at 6:53 AM, severedsolo said:

I can do that, presumably you just want a message posted that says "xyz part has failed" or similar? - perhaps I could put whether it's been permanently damaged and the chances of a successful repair too?

Regarding toolbar: I'm not 100% sure what this would achieve? What would be the purpose of the toolbar button in your eyes?

2

Yeah, that message format sounds great, the repair chance is awesome. For the toolbar, obviously this might be a longer term thing, but a window showing what has failed, and perhaps 'critical' parts (that are more likely to fail) would be great. This could potentially be tied into the tech tree (i have no idea how tricky this sort of thing is) so that you get more information with more advanced telemetry systems. For example, the basic telemetry systems could just tell you that a part has failed, then you can unlock specifics on what's failed, then perhaps repair chances, then information on what might fail in the future. This would be a relatively realistic progression of abilities, and you could (after some research...) work out where to focus maintenance, especially on larger stations with many parts which could go wrong... 

 

Just some thoughts :-) 

Share this post


Link to post
Share on other sites
2 minutes ago, PhoenixSpaceIndustries said:

For the toolbar, obviously this might be a longer term thing, but a window showing what has failed, and perhaps 'critical' parts (that are more likely to fail) would be great

This is probably doable, I could extend the EditorWarnings functionality to include the flight scene as well. All it would probably do is list parts that have failed, and parts that are above the "safety threshold" (essentially what the Editor window already shows you, but would include failed parts too.) - I could also mark down whether a part is unrecoverable/repair chances as well.

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.