zer0Kerbal Posted March 13, 2020 Share Posted March 13, 2020 (edited) OhScrap! (OHS) (formerly UPFM) ScrapYard (SYD) based part failure and maintenance addon plugin for Kerbal Space Program. By zer0Kerbal, originally by @severedsolo adopted with express permission and brought to you by KerbSimpleCo Preamble by @severedsolo Poor Val, she's not having a good day. There she was on her way back from orbit, and this happened: You see, I forgot to take her shiny new ship for a test flight before sending it to space, so the reaction wheels failed. Then her oxygen started venting into space. So she quickly burned retrograde and started her re-entry. Except that as she came into land, the parachute failed too. Like I said, not a good day. Sound exciting? Then why don't you install Oh Scrap! today. Features Spoiler Part Failures: Parachutes, Engines, Gimbals, Resources, Batteries, Reaction Wheels, Control Surfaces - all these failures can make your day turn out like Vals. (all can be disabled or enabled through the difficulty settings menu) Failures follow the bathtub curve - brand new untested parts are more likely to fail than pre-tested models. If you re-use a part too many times though, it will reach the end of it's shelf-life and be more prone to failure. Subsequent "new models" of parts become more reliable than their earlier counterparts. Ie, a part you've just researched is more likely to fail than a part that has been tried and tested many times - even if it's brand new. Repairs - some parts can be repaired remotely, some need an EVA. You always have a better chance of repairing a part on EVA See more Spoiler GitHub Pages Marketing Slicks Discussions or KSP Forums for discussions and news ChangeLog for more details of changes Known Issues for more details of feature requests and known issues YouTube video Lu Localization English Simplified Chinese (简体中文) translation courtesy of ZhaoFJx your translation here HELP WANTED - See the README in the Localization folder or the Quickstart Guide for instructions for adding or improving translations. GitHub Installation Directions 1 Spoiler Use CurseForge/OverWolf App (currently does not install dependencies) I take no part, nor am I interested in maintaining the CKAN mod metadata for my mods. CKAN is a great mod for those that can't use zip tools. If you are having issues please let the CKAN people know and refer to the CKAN thread. My support of CKAN extends as far as me checking the checkbox in Spacedock when I upload. Beware, CKAN can really mess up though it tries very, very, very hard not to. or Dependencies ScrapYard (SYD) to keep track of how many times a part has been built/recovered so that is a hard dependency. (obtained separately) Either 2 Module Manager /L Module Manager Kerbal Space Program 3 Recommends Kerbal Construction Time designed with this with in mind, so would recommend that mod (make sure you use the latest dev version) StageRecovery If you plan to actually re-use your parts (and have them fail), you'll probably want StageRecovery too KRASH Supports USI MKS Suggests On Demand Fuel Cells (ODFC) GPO (Goo Pumps & Oils') Speed Pump (GPO) SimpleConstruction! (SCON) SimpleLogistics! (SLOG) Kaboom! (BOOM) Papa Kerballini's Pizza (PIZZA) TweakScale (twk) Tags plugin, config, information, editor, sound, career, crewed, uncrewed red box below is a link to forum post on how to get support Be Kind: Lithobrake, not jakebrake! Keep your Module Manager up to date Credits and Special Thanks @severedsolo for creating this glorious bad-day plugin! see Attribution.md for more Legal Mumbo Jumbo (License provenance) Spoiler Current (2) - zer0Kerbal Forum: Thread - Source: GitHub License: Disclaimer(s) All bundled mods are distributed under their own licenses All assets, including but not limited to: animations, models, sounds and textures are distributed under their own licenses see Notices.md for more legal Mumbo Jumbo Previous (1) - Author: zer0Kerbal Forum: Thread - Download: CurseForge - Source: GitHub License: Original (0) - Author: @severedsolo Forum: Thread - Download: GitHub - Source: GitHub License: How to support this and other great mods by zer0Kerbal Spoiler Completely voluntary, absolutely amazing, and really does help me out a lot! quote from @cybutek creator of Kerbal Engineer and it is true. Connect with me Track progress: issues here and projects here along with The Short List Release Schedule Spoiler GitHub, reaching first manual installers and users of KSP-AVC. Right now. CurseForge. Right now. SpaceDock (and CKAN users). Soon™ this isn't a mod. ;P↩︎ Be Kind: Lithobrake, not jakebrake! Keep your Module Manager up to date!↩︎ may work on other versions (YMMV)↩︎ Edited December 29, 2022 by zer0Kerbal update links and lasso the birds Quote Link to comment Share on other sites More sharing options...
zer0Kerbal Posted March 13, 2020 Author Share Posted March 13, 2020 (edited) Reserved for Changelog: REMOVE PREVIOUS VERSION! Version 2.1.0.0 - new maintainer, same great taste! zer0Kerbal released this 02 Mar 2020 Version 2.1.0.0 - new maintainer, same great taste! >>-- Adoption by zer0Kerbal --<< recompiled for KSP 1.9.1 recompiled against .NET 4.8 updated file structure updated .csproj to zer0Kerbal's updated to zer0Kerbal's automated build process added Logger.cs use Version.Number from tt processes adjusted log path from /severedsolo/OhScrap/Logs/ to /OhScrap/Logs/ Kerbal Space Program 1.9.1 Unity 2019.2.2f1 .NET Framework 4.8 Edited March 13, 2020 by zer0Kerbal Quote Link to comment Share on other sites More sharing options...
zer0Kerbal Posted March 13, 2020 Author Share Posted March 13, 2020 Reserved for Changelog: Version 2.1.0.0 - new maintainer, same great taste! zer0Kerbal released this 02 Mar 2020 Spoiler Version 2.1.0.0 - new maintainer, same great taste! >>-- Adoption by zer0Kerbal --<< recompiled for KSP 1.9.1 recompiled against .NET 4.8 updated file structure updated .csproj to zer0Kerbal's updated to zer0Kerbal's automated build process added Logger.cs use Version.Number from tt processes adjusted log path from /severedsolo/OhScrap/Logs/ to /OhScrap/Logs/ Kerbal Space Program 1.9.1 Unity 2019.2.2f1 .NET Framework 4.8 Quote Link to comment Share on other sites More sharing options...
derbleifuss Posted March 13, 2020 Share Posted March 13, 2020 What are the Differneces to DangIt? Quote Link to comment Share on other sites More sharing options...
Corax Posted March 13, 2020 Share Posted March 13, 2020 Thank you! Looking forward to the new release. This however has me concerned a little, I hope it is disabled by default for release versions: 8 hours ago, zer0Kerbal said: added Logger.cs [...] adjusted log path from /severedsolo/OhScrap/Logs/ to /OhScrap/Logs/ There are way too many mods writing way too much stuff into way too many logfiles. It's ok for a debug build, but please (this goes to ALL mod authors), please, keep the logging stuff to a minimum when you publish your mod for wider dissemination. Add a config option somewhere to enable it for diagnostic purposes, but in general use, there should be no output at all. Maybe excepting a line stating the mod was loaded, and what version. Everything else you want to output should go into the game UI. If you don't want it there, usually neither do I : ) Quote Link to comment Share on other sites More sharing options...
zer0Kerbal Posted March 13, 2020 Author Share Posted March 13, 2020 (edited) 4 hours ago, Corax said: Thank you! Looking forward to the new release. This however has me concerned a little, I hope it is disabled by default for release versions: There are way too many mods writing way too much stuff into way too many logfiles. It's ok for a debug build, but please (this goes to ALL mod authors), please, keep the logging stuff to a minimum when you publish your mod for wider dissemination. Add a config option somewhere to enable it for diagnostic purposes, but in general use, there should be no output at all. Maybe excepting a line stating the mod was loaded, and what version. Everything else you want to output should go into the game UI. If you don't want it there, usually neither do I : ) I hear you and will consider; though this mod has always (as far as I know) created a log; I just moved where it was created/stored because I adjusted the install path. Logger.cs is my debugging boilerplate code; something I add to most code projects and is normally not turned on for releases, just debug builds. In fact, this switch is automatic in my newer builds due to how it is coded (thanks to code snippet from @linuxgurugamer and @Lisias) If anything, most of the mods I release that include a .dll that I compile come with little to no included debug symbols (the .mdb); I usually turn them off for releases. Have you looked at this directory when you are playing? and both ScrapYard and OhScrap! do have those options in settings; did you look? Spoiler although maybe the settings pages could use a little reorganization... perhaps submit a feature request/issue on github suggesting this. 5 hours ago, derbleifuss said: What are the Differneces to DangIt? that I cannot answer. Have never played with Dangit. Edited March 13, 2020 by zer0Kerbal Quote Link to comment Share on other sites More sharing options...
Lisias Posted March 13, 2020 Share Posted March 13, 2020 3 hours ago, Corax said: There are way too many mods writing way too much stuff into way too many logfiles. Problem is... It's our best tool for diagnosing problems. Messages on the screen are useless, as they don't have enough information (there's no enough screen!) - we usually issue messages on screen to alert about nasty conditions, but pushing on the screen all the messages needed to diagnose the problem is unfeasible. Once a problem happens, diagnosing it is not a mere look on the Exception message - it only tell us what happened, not why , and without the why, there's no possible fix without guessing (what, usually, ends up on finger pointing). So, some logging is needed - otherwise you will not get proper support when things goes badly on this Add'On or even others inducing this one to bork by collateral effect. You may think logs is bad - but it's way worse without them. That said, some logging messages are only meaningful on development (we call these "debugging messages" - and I agree that these ones should be suppressed on releases. Quote Link to comment Share on other sites More sharing options...
Corax Posted March 13, 2020 Share Posted March 13, 2020 1 hour ago, zer0Kerbal said: I hear you and will consider; though this mod has always (as far as I know) created a log; I just moved where it was created/stored because I adjusted the install path. Logger.cs is my debugging boilerplate code; something I add to most code projects and is normally not turned on for releases, just debug builds. In fact, this switch is automatic in my newer builds due to how it is coded (thanks to code snippet from @linuxgurugamer and @Lisias) If anything, most of the mods I release that include a .dll that I compile come with little to no included debug symbols (the .mdb); I usually turn them off for releases. Have you looked at this directory when you are playing? and both ScrapYard and OhScrap! do have those options in settings; did you look? although maybe the settings pages could use a little reorganization... perhaps submit a feature request/issue on github suggesting this. Thanks for your explanations, I've seen the settings and noticed the extra logging option as well, that's how I think things should be handled; however as I said, too many mods simply spam too many messages either into the KSP log itself, or–and I don't know which is worse–spam their own log files all over the place. I hope it is clear wasn't trying to say you or OhScrap does this, just that I am wary of such a situation developing. I highly respect any and all mod authors, whether they spam logs or don't; I just wish some would exercise a little more restraint in that matter : ) and remember to turn their debug logging off when they release. 1 hour ago, Lisias said: Problem is... It's our best tool for diagnosing problems. Messages on the screen are useless, as they don't have enough information (there's no enough screen!) - we usually issue messages on screen to alert about nasty conditions, but pushing on the screen all the messages needed to diagnose the problem is unfeasible. Once a problem happens, diagnosing it is not a mere look on the Exception message - it only tell us what happened, not why , and without the why, there's no possible fix without guessing (what, usually, ends up on finger pointing). So, some logging is needed - otherwise you will not get proper support when things goes badly on this Add'On or even others inducing this one to bork by collateral effect. You may think logs is bad - but it's way worse without them. That said, some logging messages are only meaningful on development (we call these "debugging messages" - and I agree that these ones should be suppressed on releases. I don't think logs per se are bad, and trust me, I know why logging is needed in case of issues. I have done my share of software development myself. Call me elitist, but I also get that "the average user" probably wouldn't know (or care, or even need to care) how to go through a few steps to enable them if they weren't from the start–it's just that I'd like a simple way to disable them if and when I am confident that I don't need them at the moment, and re-enable them if and when issues arise. Without having to grep tons of Unity3d documentation, plugin source code, or symlinking to /dev/null if that doesn't help... Quote Link to comment Share on other sites More sharing options...
derbleifuss Posted March 13, 2020 Share Posted March 13, 2020 1 hour ago, zer0Kerbal said: that I cannot answer. Have never played with Dangit. Like almost every Part can fail in some Way and the Probability of a Failure increases with both the Time it was in Operation and just the Time in general. They can be fixed by an Engineer using the "Spare Parts" Resource and can be maintained by them or checked by any Kerbal to give a temporary Reliability Boost. What it does not include is the Ability to test and validate Parts in order to increase their Reliabilty. There also is a similar Mod that allows you adjust the Build Quality of a Part to make Failures less likely at the cost of Funds which I mistook to bei included in DangIt. Seems like I was wrong and it actually is yet another Mod. Quote Link to comment Share on other sites More sharing options...
Corax Posted March 13, 2020 Share Posted March 13, 2020 (edited) 12 minutes ago, derbleifuss said: There also is a similar Mod that allows you adjust the Build Quality of a Part to make Failures less likely at the cost of Funds which I mistook to bei included in DangIt. Seems like I was wrong and it actually is yet another Mod. Kerbalism has this functionality; there are, or at least were a few other mods addressing part reliability, testing, and failures. "Test Flight" and "Kerbal Mechanics" IIRC, and I think at least one or two others. I think one of them had a rather wacky name, but other than that I don't remember any more details. Edited March 13, 2020 by Corax Quote Link to comment Share on other sites More sharing options...
Lisias Posted March 13, 2020 Share Posted March 13, 2020 56 minutes ago, Corax said: Call me elitist, but I also get that "the average user" probably wouldn't know (or care, or even need to care) how to go through a few steps to enable them if they weren't from the start–it's just that I'd like a simple way to disable them if and when I am confident that I don't need them at the moment, and re-enable them if and when issues arise. Without having to grep tons of Unity3d documentation, plugin source code, or symlinking to /dev/null if that doesn't help... Yep. But, sir, the logs are not for you. The logs are meant for people that will provide support for the Add'Ons. These logs are the reason we can diagnose the problem by just telling the user to send us the logs, instead of going through a tedious and long series of "please try this, please execute these steps, please do that". Quote Link to comment Share on other sites More sharing options...
derbleifuss Posted March 13, 2020 Share Posted March 13, 2020 39 minutes ago, Corax said: Kerbalism has this functionality; there are, or at least were a few other mods addressing part reliability, testing, and failures. "Test Flight" and "Kerbal Mechanics" IIRC, and I think at least one or two others. I think one of them had a rather wacky name, but other than that I don't remember any more details. Oh dear, Kerbalism sounds complex. I do have Life Support but I wanted to keep it "Kerbal" so I chose Snacks. DangIt is really nice for manned Missions where the Engineer has to EVA a pre-Landing Check (like Engines, Tanks, Control Surfaces and Landing Gear on a Shuttle) but with Probes that fly literally for Decades (OPM installed) they will almost inevitably be bricked by a failed Engine or Reaction Wheel. Yup, I'd build Probes with a higher Quality Standart than manned Spacecraft. Possibly one of the most Kerbal Things imaginable. Quote Link to comment Share on other sites More sharing options...
Corax Posted March 13, 2020 Share Posted March 13, 2020 (edited) 17 minutes ago, Lisias said: Yep. But, sir, the logs are not for you. The logs are meant for people that will provide support for the Add'Ons. These logs are the reason we can diagnose the problem by just telling the user to send us the logs, instead of going through a tedious and long series of "please try this, please execute these steps, please do that". Which is almost exactly what I said. But for those who do not require holding their hands, there should be a quick, simple way to disable those logs, without jumping through hoops. Precisely because they are NOT for me. Edited March 13, 2020 by Corax End of discussion. This is getting way off topic. Quote Link to comment Share on other sites More sharing options...
JebIsDeadBaby Posted March 14, 2020 Share Posted March 14, 2020 Would be nice to have this available via CKAN. Quote Link to comment Share on other sites More sharing options...
severedsolo Posted March 14, 2020 Share Posted March 14, 2020 (edited) 13 hours ago, Corax said: Which is almost exactly what I said. But for those who do not require holding their hands, there should be a quick, simple way to disable those logs, without jumping through hoops. Precisely because they are NOT for me. The particular logs you are talking about are for balance testing reasons. So basically: I used to get alot of people coming to me saying "the mod fails too much/not enough" - and it's really difficult to quantify that, because people suck at wrapping their head around random numbers. It logs so I (and now zer0kerbal) have hard cold numbers to back it up. If you have "extra logging" turned off, the actual logging it does is super minimal. It literally just logs that a failure tried to happen, the time it tried to happen at, and whether it was successful. Those logs are deleted after 24 hours. The performance impact is almost zero, because it writes the logs out on a scene change (when the game is doing a bunch of I/O anyway so you won't notice). Edited March 14, 2020 by severedsolo Quote Link to comment Share on other sites More sharing options...
zer0Kerbal Posted March 14, 2020 Author Share Posted March 14, 2020 (edited) On 3/14/2020 at 8:30 AM, JebIsDeadBaby said: Would be nice to have this available via CKAN. it (and OhScrap) are being transitioned to the new GitHub repositories. It is out of our control. I am working today on finishing the last spit and polish on ScrapYard's new Readme.md, which I use for the initial forum thread posting, the SpaceDock mod page, the Curseforge Mod Description page, and of course for the Github and .zip readme's. Almost done, got sidetracked on creating/updating a Contributing.md file (which I have been putting off making for quite some time). I suspect that CKAN is waiting for me to update ScrapYard in SpaceDock ... (more than suspect - know) so SOON™er™ish♥ Edited March 15, 2020 by zer0Kerbal Quote Link to comment Share on other sites More sharing options...
Fulgora Posted March 21, 2020 Share Posted March 21, 2020 Hey zer0Kerbal, thanks for providing this mod! I have used DangIt in the past and am now considering to switch to this one. I have noticed that OhScrap has some issues with ModuleManager 4.1.3 (did not test other MM versions): https://forum.kerbalspaceprogram.com/index.php?/topic/50533-18x-19x-module-manager-413-november-30th-2019-right-to-ludicrous-speed/ I have: KSP 1.9.1 ModuleManager 4.1.3 OhScrap 2.1.1.0 (also tested 2.1.0.0) Windows 8.1 Problem: The game does not finish loading. Depending on whether Squad DLC are installed it stops at "Verifying <expansion>" or "Loading expansions..." It also says in the loading screen: Mod(s) DLL that are not compatible with this version of KSP OhScrap 2.1.1.0 path/to/OhScrap.dll If you cannot reproduce the issue I can also test it on Linux. If you need any help in debugging / testing feel free to hit me up! Many thanks and best regards Fulgo Quote Link to comment Share on other sites More sharing options...
Pehvbot Posted March 21, 2020 Share Posted March 21, 2020 42 minutes ago, Fulgora said: Hey zer0Kerbal, thanks for providing this mod! I have used DangIt in the past and am now considering to switch to this one. I have noticed that OhScrap has some issues with ModuleManager 4.1.3 (did not test other MM versions): https://forum.kerbalspaceprogram.com/index.php?/topic/50533-18x-19x-module-manager-413-november-30th-2019-right-to-ludicrous-speed/ I have: KSP 1.9.1 ModuleManager 4.1.3 OhScrap 2.1.1.0 (also tested 2.1.0.0) Windows 8.1 Problem: The game does not finish loading. Depending on whether Squad DLC are installed it stops at "Verifying <expansion>" or "Loading expansions..." It also says in the loading screen: Mod(s) DLL that are not compatible with this version of KSP OhScrap 2.1.1.0 path/to/OhScrap.dll If you cannot reproduce the issue I can also test it on Linux. If you need any help in debugging / testing feel free to hit me up! Many thanks and best regards Fulgo Is it possible you are missing a dependency mod? If a DLL can't find another DLL it's expecting, it can throw an error like this. Quote Link to comment Share on other sites More sharing options...
Fulgora Posted March 21, 2020 Share Posted March 21, 2020 3 minutes ago, Pehvbot said: Is it possible you are missing a dependency mod? If a DLL can't find another DLL it's expecting, it can throw an error like this. I do not believe so. I saw this popping up in my install with some 50 mods so I broke it down to a minimal reproducible setup and came up with OhScrap and MM only - neither has any dependencies. The first time I saw all mods were installed through CKAN but for verification I installed "everything" manually. Both my minimal setup and my actual install are fixed by simply removing OhScrap (which I have done for now as quite a few other mods depend on MM). Quote Link to comment Share on other sites More sharing options...
zer0Kerbal Posted March 21, 2020 Author Share Posted March 21, 2020 1 hour ago, Fulgora said: Hey zer0Kerbal, thanks for providing this mod! I have used DangIt in the past and am now considering to switch to this one. I have: KSP 1.9.1 ModuleManager 4.1.3 OhScrap 2.1.1.0 (also tested 2.1.0.0) Windows 8.1 Problem: The game does not finish loading. Depending on whether Squad DLC are installed it stops at "Verifying <expansion>" or "Loading expansions..." It also says in the loading screen: Mod(s) DLL that are not compatible with this version of KSP OhScrap 2.1.1.0 path/to/OhScrap.dll If you cannot reproduce the issue I can also test it on Linux. If you need any help in debugging / testing feel free to hit me up! Many thanks and best regards Fulgo 23 minutes ago, Pehvbot said: Is it possible you are missing a dependency mod? If a DLL can't find another DLL it's expecting, it can throw an error like this. 16 minutes ago, Fulgora said: I do not believe so. I saw this popping up in my install with some 50 mods so I broke it down to a minimal reproducible setup and came up with OhScrap and MM only - neither has any dependencies. The first time I saw all mods were installed through CKAN but for verification I installed "everything" manually. Both my minimal setup and my actual install are fixed by simply removing OhScrap (which I have done for now as quite a few other mods depend on MM). Thank you. @severedsolo and @magico13 get all the credit. With that said: OhScrap! has a hard dependency on ScrapYard. Do yo have that installed? On 3/13/2020 at 4:27 AM, zer0Kerbal said: Requires: Kerbal Space Program v1.9.1, may work on earlier versions (YMMV) ScrapYard to keep track of how many times a part has been built/recovered so that is a hard dependency. (obtained separately) Depends: Module Manager is required if you want the mod to actually do anything. (obtained separately) I realize now - sort of confusing - but done this way because of the way CKAN operates. Will change for next release moving ScrapYard from Requires to Depends. Quote Link to comment Share on other sites More sharing options...
Fulgora Posted March 21, 2020 Share Posted March 21, 2020 11 minutes ago, zer0Kerbal said: Thank you. @severedsolo and @magico13 get all the credit. With that said: OhScrap! has a hard dependency on ScrapYard. Do yo have that installed? I realize now - sort of confusing - but done this way because of the way CKAN operates. Will change for next release moving ScrapYard from Requires to Depends. Oh - I have overlooked that. I read 1.9.1 and went to the next section. Apologies for my inability to read properly. Many thanks - it works now! Quote Link to comment Share on other sites More sharing options...
zer0Kerbal Posted March 21, 2020 Author Share Posted March 21, 2020 16 minutes ago, Fulgora said: Oh - I have overlooked that. I read 1.9.1 and went to the next section. Apologies for my inability to read properly. Many thanks - it works now! can't blame you - my posts are often TL;DR - Glad to hear that! PS - also a new version is on its way. Prelease is on GitHub - just waiting for the 'all clear' from the beta tester. Quote Link to comment Share on other sites More sharing options...
severedsolo Posted March 23, 2020 Share Posted March 23, 2020 On 3/21/2020 at 8:13 PM, Fulgora said: The first time I saw all mods were installed through CKAN but for verification I installed "everything" manually. (emphasis mine) If social distancing wasn't a thing I'd be hugging you with gratitude right now Quote Link to comment Share on other sites More sharing options...
infinite_monkey Posted April 11, 2020 Share Posted April 11, 2020 Thanks for keeping this alive! I like the possibility for parts to fail, but I find testing parts 10 times, then manually throw them away in ScrapYard a bit cumbersome - it's repetitive and costs money. So I was thinking: in career mode you can enable cost for unlocking newly researched parts. Would it be possible to combine this with OhScrap or add a similar option, so that after paying these funds new parts get a reliability of 10 / start with generation 10? Of course this should be optional. Quote Link to comment Share on other sites More sharing options...
zer0Kerbal Posted April 12, 2020 Author Share Posted April 12, 2020 18 hours ago, infinite_monkey said: Thanks for keeping this alive! I like the possibility for parts to fail, but I find testing parts 10 times, then manually throw them away in ScrapYard a bit cumbersome - it's repetitive and costs money. So I was thinking: in career mode you can enable cost for unlocking newly researched parts. Would it be possible to combine this with OhScrap or add a similar option, so that after paying these funds new parts get a reliability of 10 / start with generation 10? Of course this should be optional. interesting. don't know how much work this would be, but will consider it. suggest putting in a feature request on Github. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.