severedsolo

[1.8.x] Oh Scrap!- A ScrapYard based Part Failure and Reliability Mod 2.0.1 (07/12/2019)

Recommended Posts

 @severedsolo I love your mod. Thank's for all your work. I've created a [Link removed by moderator] and added remote tech support. I know you were waiting for RT2 but I'm impatient. It was done with reflection and a separate failure module so there are no additional dependencies and its easy to remove when RT2 comes out.  I've also fixed a bug or two in the original antenna failure module. (it now respects comm-net settings. Previously if comm-net was disabled, the part could still fail it just wouldn't have any effect besides highlighting,).

I've got a week off work, and I intend to add compatibility patches for a few other mods. Ferram , kerbal health and  (because someone suggested it above and it sounds fun) deep freeze all come to mind. Id like to ensure you have no problems with any of this. I would have liked to have asked you in a private message but my forum account is too new to send messages.

If your against anything I've done or released regarding your content, please let me know. I'm not really sure what proper procedure is around here (other than follow the licence). Otherwise, if you've had any oh scrap bug reports/Requests you'd like me to look into well I'm at it, also let me know! I've got a little free time....

Anyway, Thanks again for your mods man. Scrapyard/Oh Scrap/kct combo has given this game new life for me.

Edited by Snark
Redacted by moderator

Share this post


Link to post
Share on other sites

@NipperySlipples - No problems at all - the only thing I usually ask is that unofficial forks make it clear they won't get support from me (which you've already done, so that's fine).

I don't know if your stuff is ready for release yet, but if it is I'm happy to take a PR - the next update is planned to be a feature update anyway (got a couple of other projects I want to finish up first before I return to Oh Scrap)

Share this post


Link to post
Share on other sites

@severedsoloIt wasn't ready yesterday, it is now!  PR has been put in with working remote tech support and a few bug fixes in other places. That being said. Still got 6 more days off. There will be more coming.

 

Ive also now got a release [Link removed by moderator] ready to go if anyone wants to try it. (DO NOT BUG SEVEREDSOLO IF YOU HAVE AN ISSUE. BUG ME INSTEAD. NOT IN THIS THREAD. PM OR ON GITHUB - Until he merges this , if he merges this, it is not his problem.) 

 

Edited by Snark
Redacted by moderator

Share this post


Link to post
Share on other sites

Hi guys,

Many apologies to @severedsolo and @NipperySlipples, but unfortunately we've had to remove NipperySlipples' links due to forum mod-posting policy.  We're really sorry about that, because clearly this is a great mod that people love, and clearly NipperySlipples has put effort into it to revive it for the community (thus doing everyone a good service), and clearly severedsolo is okay with it, which sounds like a total win for everyone all around, so why do we moderators have to be such a wet blanket, anyway?

Well, unfortunately, it runs afoul of the mod-posting rules.  A fork of a mod is bound by the same rules as the original mod itself (i.e. is treated by us as if it were its own thing), and also it has to abide by the license in the mod.

In this case, OhScrap happens to be licensed All Rights Reserved, as far as we can tell.

https://github.com/severedsolo/OhScrap/blob/master/GameData/Severedsolo/OhScrap/License.txt

Yes, I see that in the OP of this thread, it says,

On 5/20/2017 at 5:57 AM, severedsolo said:

License: MIT

...which of course is about the most wide-open license one could have.  However, the mod-posting rules (see above) specify,

On 1/11/2017 at 10:20 AM, Frybert said:
  • All add-ons, dependencies and packs that are posted on the services maintained by Squad that serve the KSP Community (such as this forum and Curse) must be accompanied by a license for each add-on contained therein, that regulates what other users can do with the copyrighted material.
  • These licenses must be made available in both the download file as a readme or license text, and in the location the user downloads from (such as a forum post or a Curse listing).

Normally that would be the same thing in both places (the forum OP and the license.txt) in the mod, but unfortunately @severedsolo appears to have very different specifications in the two places.  Since the mod download doesn't have the MIT download in it, we can't treat this as MIT, sorry.

We have to treat it as All Rights Reserved, which is a "no touchy" license that says nobody but the original author (severedsolo) can do anything at all with this, other than download and use it for personal use.  You can't fork it, you can't modify it, you can't even redistribute it unmodified.  Totally locked down.  Which I assume is the exact opposite of what severedsolo wants, since he said MIT in the OP of the thread.

Fortunately, this is easily remedied:

  1. @severedsolo, please update your github repo (and any downloadable packages) so that your license.txt file says that it's the MIT license.  Note:  Even though it's fine to just say "License: MIT" in your forum thread, the actual mod download has to include the full text of the MIT license, which you can copy from here.
  2. Once you have done that, so that the mod is clearly and unambiguously MIT... then, @NipperySlipples, you can fork it.
  3. If you want to post your fork, @NipperySlipples, please do it as a mod of its own.  You can create your own mod thread in Add-on Releases, follow the mod posting rules (e.g. link to source code, say what the license is)... and then you're good to go.

We're sorry for all the inconvenience, everyone.  This isn't fun for us either, and the last thing we want to do is stand in the way of modders and their users.  :(  But we gotta do things "by the book", because otherwise this website becomes impossible to maintain and then we'd have to shut it down and everyone would lose.

Thank you for your understanding.

Share this post


Link to post
Share on other sites

Oh Scrap 1.5.1.2 released

  • Changed license back to MIT as I apparently forgot to do this in the main repo

Apologies @Snark - this was a bit of a mixup from back when the whole EULA thing was flaring up. I temporarily changed the license to ARR then changed it back, and apparently forgot to actually update the license in the main repo.

How embarrassing - I'm usually so careful with licensing issues. Anyway, should be all fixed now.

Share this post


Link to post
Share on other sites

@Snark No need to apologize for protecting our content/ this website. That's 100% my fault, I should have read the licensing in full. I saw MIT in the OP and never opened the actual licence. In fact I should be thanking you. Technically I was in violation of his licence and had he wanted to , severed could have taken action on that. So, thanks for the good work and apologies for not following through with the rules properly before posting.

I was only posting here in case someone could find a bug I missed before Severed got to see it. Ill refrain from creating my own thread or posting it again until severed has a chance to look at the PR. He mentioned above he was working on other projects first. It was silly of me to post it in this thread and say "don't ask for help here" anyway.

I am pretty sure severed has plans for OhScrap going forward, hes just been busy pumping out content for other mods.  I'd rather not post a derivative mod if that's the case. If it turns out I'm a garbage coder and he doesn't like my PR,  I will separate JUST the compatibility patches and not the bug fixes/code changes (leaving all original code intact) to post as a separate  .dll that could be added to the current OhScrap for people who wanted it. As long as severed is still actively developing OhScrap, his thread should be where you have to go to find it. So, for anyone interested. You can follow the Fork on github if you'd like to try it out.

 

Really at the heart of it, I worked on OhScrap because i have an install with 167 mods that I really wanted to add ohscrap/scrapyard to. I just wanted them compatible so that I can enjoy all of Severed's future content.

Share this post


Link to post
Share on other sites
14 hours ago, SpinkAkron said:

Oh dear!

xaMtpZI.png

And the award for most hilarious bug goes to.... Man, I almost don't want to fix this.

Share this post


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

And the award for most hilarious bug goes to.... Man, I almost don't want to fix this.

I don't know if it's a bug or  just a wonderful little mod synergy. For whatever reason, Open Cockpit has the crew member getting the TAC resources instead of the cockpit part.

Share this post


Link to post
Share on other sites

A few random questions, trying to pick between this and BARIS for part failures and not exactly sure how a few things work.

Subsequent models of the same part have higher reliability, is there a cap to this or does the part eventually become so reliable it doesn't fail? 

And are there random part failures? Say you've got a ship you've produced thousands of times and it's very reliable, will there still be times where you'll have random failures during launch or in orbit?

Share this post


Link to post
Share on other sites
10 minutes ago, Raccoon said:

Subsequent models of the same part have higher reliability, is there a cap to this or does the part eventually become so reliable it doesn't fail? 

There is a cap yeah, the minimum failure chance is 1% (this is configurable in the settings cfg though). This is usually achieved after ten "new builds" or you can get there quicker by recovering your parts (parts get a massive boost if they have been tested, I'm fairly certain you can get to Safety Rating 10 on Gen 2 with a recovered part)

10 minutes ago, Raccoon said:

And are there random part failures? Say you've got a ship you've produced thousands of times and it's very reliable, will there still be times where you'll have random failures during launch or in orbit?

See above - there isn't a "you get to this point and it's going to fail no matter what you do". It will roll randomly, it's just that the more reliable your parts are, the less likely this is to fail.

There is a little weighting, so failures are more likely to happen on launch. Basically while in atmosphere, the mod checks every ten (kerbal) seconds for the first two minutes, after which it assumes your vessel is a plane and will switch to checking every 2.5 minutes (the more often we roll, the more likely it is to happen).

While in space, or on the ground, it will only check every 30 minutes. The checks are also rate limited to one every 0.5 seconds, so if you are timewarping, you don't get a whole bunch of failure rolls thrown at you at once.

Edited by severedsolo

Share this post


Link to post
Share on other sites
36 minutes ago, severedsolo said:

There is a cap yeah, the minimum failure chance is 1% (this is configurable in the settings cfg though). This is usually achieved after ten "new builds" or you can get there quicker by recovering your parts (parts get a massive boost if they have been tested, I'm fairly certain you can get to Safety Rating 10 on Gen 2 with a recovered part)

That makes sense, I'm happy the failure chance is configurable. I was worried I'd end up having the mod stop existing halfway through a career save.Can you also configure the rate that safety ratings go up with subsequent models to make it take even longer?

39 minutes ago, severedsolo said:

There is a little weighting, so failures are more likely to happen on launch. Basically while in atmosphere, the mod checks every ten (kerbal) seconds for the first two minutes, after which it assumes your vessel is a plane and will switch to checking every 2.5 minutes (the more often we roll, the more likely it is to happen).

Alright, so failures are more likely to happen two minutes into atmosphere? Does that also count if you're heading into atmosphere back from orbit? It makes sense for the atmospheres of planets affecting parts more. It'd be nice for Eve missions to have to deal with much harsher atmospheres and increased part failures than say Duna missions, but I assume that's not how it works at the moment.

And one more question, does reliability going up only decrease how often failures happen or does it affect severity as well? Also thanks for answering!

Share this post


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

Can you also configure the rate that safety ratings go up with subsequent models to make it take even longer?

You can change the base chance of a failure occurring by editing the MM configs.

3 hours ago, Raccoon said:

Does that also count if you're heading into atmosphere back from orbit? It makes sense for the atmospheres of planets affecting parts more. It'd be nice for Eve missions to have to deal with much harsher atmospheres and increased part failures than say Duna missions, but I assume that's not how it works at the moment.

Re-entries are counted the same as "plane mode" (every 2.5 minutes) - frankly I can't tell if you are re-entering or flying a plane, so I just use that mode for any time the mission clock is above 2 minutes.

3 hours ago, Raccoon said:

And one more question, does reliability going up only decrease how often failures happen or does it affect severity as well? Also thanks for answering!

How often they fail. Parts that have multiple ways they can fail (off the top of my head, I think that's just engines) - will pick a possible failure at random (assuming it makes sense).

Share this post


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

You can change the base chance of a failure occurring by editing the MM configs.

How exactly would this take it longer to build up reliability, wouldn't it just make failures much more common as well? I like the current failure chances but I'd like if it took much longer to increase safety ratings.

Share this post


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

How exactly would this take it longer to build up reliability, wouldn't it just make failures much more common as well? I like the current failure chances but I'd like if it took much longer to increase safety ratings.

To directly answer your question: no you can't. It's hardcoded, but a little explanation is in order:

So safety ratings are not a fixed "if a part is this likely to fail it gets this rating". Because different parts have different chances, the rating is relative to the baseSafetyRating.  A safety rating of 10 literally means "this part is 10 times less likely to fail than the same part with a rating of 1".  The general idea is to give you a quick glance to see whether you need to scrap that old part and build a new one/

Share this post


Link to post
Share on other sites
3 minutes ago, severedsolo said:

To directly answer your question: no you can't. It's hardcoded, but a little explanation is in order:

So safety ratings are not a fixed "if a part is this likely to fail it gets this rating". Because different parts have different chances, the rating is relative to the baseSafetyRating.  A safety rating of 10 literally means "this part is 10 times less likely to fail than the same part with a rating of 1".  The general idea is to give you a quick glance to see whether you need to scrap that old part and build a new one/

Gotcha, so that's how the ratings work, much simpler than I thought. I'll still dream of being able to change it, but I'll survive for now. Thanks for all the answers!

Share this post


Link to post
Share on other sites

And back I come with another question :P How does Oh Scrap work with vessels you leave alone for ages, I assume they just completely break down? Like say if you put a space station around the Mun but leave it there for years, I assume things will still break despite it not being loaded or used? Or a interplanetary mission to one of the OPM planets, by the time you arrive won't everything be broken? I can't tell if there's a way to "shut down" parts not in use so they don't break so I'm not sure how to plan for very long missions.

Share this post


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

I assume things will still break despite it not being loaded or used?

Nope. Unloaded vessels will be left alone. 

Im looking into the possibility of having relays fail when unloaded but that's as far as I'm planning to take it. 

Share this post


Link to post
Share on other sites
Just now, severedsolo said:

Nope. Unloaded vessels will be left alone. 

Im looking into the possibility of having relays fail when unloaded but that's as far as I'm planning to take it. 

Alright, good to know! Yeah it'd definitely be fun for relays and maybe stations having failures you need to deal with so you can perform repair and maintenance missions, plus it doesn't make much sense for your very first relay sat being able to survive for decades without any issues. With KIS it'd be great fun performing repair missions to relays and stations.

Share this post


Link to post
Share on other sites

I really like this mod, but is there any way to make it so that parts dont get damaged beyond repair? im fine with not being able to repair things remotely, but if i get an engineer to the part in person, they ought to be able to fix it, imo. (or does "part damaged beyond repair" really just mean "you need a higher level engineer"?)
also, where do i adjust the settings for how much of an effect the engineer's level has?
also, is there any way to adjust a parts safety rating or failure status in the save file? i started using this mod a little late and already have a few stations and a lot of satelites, all of which have the lowest safety ratings apparently.
also, im ok with the idea of relays failing while unloaded, but definitely wouldnt want it to go any further, and just be careful you're not creating the potential for a huge amount of hassle thats not fun anymore. either way, please make it optional in the settings :)

Share this post


Link to post
Share on other sites
42 minutes ago, Speedj2 said:

I really like this mod, but is there any way to make it so that parts dont get damaged beyond repair?

No there isn't. You get ONE shot to repair that part. If you do a remote repair, it's 20%, a normal kerbal 40% and an engineer 40%+(10% for each level). If you fail the roll, that's it (you can assume that the fix made things worse/the part is too damaged to be fixed). In other words, if you want your lv5 engineer to repair it, don't try and repair it until he gets there.

44 minutes ago, Speedj2 said:

also, where do i adjust the settings for how much of an effect the engineer's level has?

You don't, it's hardcoded.

44 minutes ago, Speedj2 said:

also, is there any way to adjust a parts safety rating or failure status in the save file? i started using this mod a little late and already have a few stations and a lot of satelites, all of which have the lowest safety ratings apparently.

Yes, but it's not exactly simple.

You'll need to find the part in the save file. Then find the Module node of the failure module (this name will vary, but it will always be *FailureModule) - you can change "hasFailed" to false to stop the failure. You may be tempted at this point to change chanceOfFailure - don't bother, it will be recalculated when you next load the part.

Instead, you then need to find "ModuleSYPartTracker" under the same part, and get the id. Ctrl-F on that ID until you find it under a Part Node in UPFMData. You'll know it because it will look something like this:

Spoiler

        PART
            {
                ID = 1871995686
                Generation = 1
                Tested = True
            }

There you can change the "Generation" to give yourself a boost.

Share this post


Link to post
Share on other sites

How do you "test" parts?  I try to launch my first rocket, it fails and remains on the pad, so I recover it.  However, in the VAB it says the rocket is "untested" and now gen 2 (and it takes roughly the same time to build).  How do I use those prior "tested" gen 1 parts?

I've seen other videos where, after the same type of failure, the new rocket is "tested" and only takes an hour or so to roll out.  What am I missing?

Thanks!

Edited by ble210

Share this post


Link to post
Share on other sites

So I've run into a couple situations where I figure this might be helpful.  When a part fails be able to trigger a series of events or trigger an action group. For example, I'm sitting on the pad, everything looks good.  I engage MechJeb and hit the space bar to get things rolling and spool up my main engines.  As soon as the engines ignite, I see a failure on one of the SRBs.  In this case, if I disengage MechJeb quick enough I can shut down the engine, recover the whole thing to the VAB and change out the SRB for a more "experienced" one.  Problem being, some times I can't hit the disengage fast enough and jeb stages, which ignites the SRBs and disengages the launch clamps.  Now I'm pretty committed to lifting off with one less SRB.  The chances of making orbit or even flying in a straight line are pretty low, so I usually manually hit the abort at that point. 

It's all gonna be pretty dynamic for each scenario and I know there are going to be a million cpmbinations,  but some basic ones like if a failure is detected on your on the ground, then disengage Mechanic and shutdown all engines.  Is this something more suited for KOS or something like that?  Can you detect failures in KOS?  Maybe Jeb's Panic Box?   I'm not sure where exactly this functionality would go. 

Share this post


Link to post
Share on other sites
On 3/22/2019 at 9:29 PM, ble210 said:

How do you "test" parts?  I try to launch my first rocket, it fails and remains on the pad, so I recover it.  However, in the VAB it says the rocket is "untested" and now gen 2 (and it takes roughly the same time to build).  How do I use those prior "tested" gen 1 parts?

I've seen other videos where, after the same type of failure, the new rocket is "tested" and only takes an hour or so to roll out.  What am I missing?

Thanks!

I usually setup some girders held to the group by launch clamps and strap a bunch of engines, fuel tanks and SRBs to it.  Fire em up and let them run till they flame out.  Then a normal recovery puts them into the Scrapyard inventory and they show as tested and it also seems to increment the generation so newer ones are less prone to failing. 

When I unlock some new engines or SRBs, I never use them any more until I've run them trough a couple of test fires on the launch pad.  Some times I've even rolled out a ship, static fired it, recovered the whole thing to the VAB, Refuled, etc and pushed it out with actual Kerbal's and tourists in it.  In a couple cases the SRBs failed and I could replace them with good ones.   Useful when your playing with re-spawn turned off, or when that bug was failing SRBs left and right.  I know you can't really test fire or refuel an SRB in real life, but it is a game after all.  I suppose you could always mark SRBs as "trash part" when they are fired and be forced to use a "new" one just pretending it went off to the plant and got re-poured.  Maybe some parts, such as SRBs could be "not refuelable" and you would have to replace them with what ever you have inventory or with a new one?

the problem I have is how do you tell when parts are starting to get to the far side of the bathtub curve and are starting to get prone to failing again.  It would be nice if you could browse the DB of scrap yard parts and it would show you which ones you should not use any more. Maybe an auto prune when they drop to a safety level of x.   I know I've probably got a couple SRBs in there that are getting sketchy. 

Edited by Eugene Moreau
had a thought.

Share this post


Link to post
Share on other sites

Trying to launch something and when I hit stage for to kick in the the SRBs and release the launch clamps, the whole thing just flips and and explodes.  Not your usual in flight flip more of an instantaneous thing right on the launch clamps.  Poking through the log file I find OhScrap throwing a divide by zero exception.  The only thing I changed today is updating KCT to 1.4.6.  Not sure if it's a OhScrap or KCT problem or either?

Log file can be grabbed at:  https://1drv.ms/f/s!AgRoSICLtAZ6gYBZWbgnUkrmLPbKQA

Tried downgrading to 1.4.5.10 of KCT and it works like a charm.  Not sure where the problem lies.  

Edited by Eugene Moreau
further testing

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.