Jump to content

[0.90] Kerbal Mechanics: Part failures


IRnifty

Recommended Posts

I might be wrong but by looking at the files this mod is only good if you use all Stock part.;.;

Edit be nice if we could make cfg to add to mods we use or maybe we can hope some one can shed some light on this.

If we can get the separate-module architecture, then it will be trivial to write a ModuleManager config with wildcards to put the failure module with default values on anything that has e.g. ModuleEngines but doesn't already have ModuleReliability.

Link to comment
Share on other sites

Not to plug my own code, but have a look at it here: https://github.com/jbengtson/ksp-partfailure

I tried to keep things as generic as possible, adding additional modules as needed for failure. I let ModuleManager do the heavy lifting because why duplicate code? Also, ModuleManager has some additional tools like finding all parts that have resources, engine modules, parachutes, etc... You might as well let it sort out what parts deserve what failure modules and concentrate on making the failure/repair mechanism great.

Good luck!

Link to comment
Share on other sites

What woudl sto people fromm just using mmax qualitu on their parts?

Well before money introduction to stock.

And there is some suggestion from me.

Just right clicking for repair is to simple. Player shoudl have some limited repair capabilities, for example "spare parts" resource that are drained while repairing things.

ANother thing - KAS dependency. Player woudl have to equip kerbal on eva with toolbox to perform repair.

Maybe some advaned repair woudl require additional part on ship - workshop?

Link to comment
Share on other sites

undercoveryankee, MeCripp, PringleMan, and regex,

You all have a very valid point, and the suggestion you all have unanimously given will likely become reality. The only reason it is as it is now is because I had no prior experience making custom modules. (C# yes, but not how each module works.) Now that I've learned a bit by accomplishing what I have so far, I can make the suggested change much more easily than when I started.

So I completely agree with you guys, it's just like this because I was newer to this when most of this was written.

Oh, and a few final notes:

1: I know the current repair process is too simple, and that will change once I gain more experience in this.

2: KSP has no money yet, so quality can simply be cranked up with no penalty, but that will change...

3: I really do appreciate the feedback, guys. You are all helping to make something amazing, IMO.

Link to comment
Share on other sites

For the most part really like what your doing IRnifty and where it can go and would love to use it but, there are alot of great mods out there and sure hope you can get to play good with more mods so please keep up the good work.

Link to comment
Share on other sites

I did just realize, however, why I actually have to replace the decoupler module... There is no way to override the decoupling functionality without replacing it, unless someone else can come up with something...

EDIT: Maaayy be able to circumvent this... testing now...

Edited by IRnifty
Link to comment
Share on other sites

I'd love to see "leaks" that impart some thrust in a random direction from affected tanks :)

Ha that will make awesome(read as awful) consequence of fuel ullage. Think you have a big leak at the front side of a tank, hmm...:P

Link to comment
Share on other sites

One idea of failure if not already suggested: batteries running out of lifetime (something yet to define) are more likely to loose their charge and/or not fully recharge and more slowly than a healthy one (IRL example today, I love that damned lead/acid batteries !).

They may have also more failure due to overheating if they are not cooled enough (yet to define too, maybe too much parts around them can create such issue, even more when stacking multiple batteries together)

Also for repair, the OX-STAT solar panel (the basic one) can be broken but not repaired yet.

Link to comment
Share on other sites

curiousepic, I do plan on doing this at some point, but I seem to be too busy at the moment with a few other projects and work, so when I can, I will. Also, I like that battery idea, Justin Kerbice.

Link to comment
Share on other sites

Just another random idea I got:

making a config item for "difficulty" (or how much Murphy likes to bother you :sticktongue:)

from "no failure/murphy's busy" to "engineers are on holly-days the past few weeks before the launch/Murphy makes his home here" (I let you guess what it's means :P)

(the 2nd level might be 1 failure for one mission)

In addition to this you may add the type of failure from "easy to fix/duct tape is enough" (a wheel/solar panel) to "a mission's ender" (engine critical failure, fuel tank exploding)

Link to comment
Share on other sites

I think it would be cool to have the failure rate be affected (not necessarily determined by, but modified) by the stupidity characteristics of the crew members. On the assumption that less stupid kerbals would do more preventative maintenance.

Link to comment
Share on other sites

I hope I'm not just stating the obvious, but wouldn't it be trivially easy to use a ModuleManager file to replace the relevant module names without needing to replace the entire part? See below:

@PART[*]:HAS[@MODULE[ModuleDecouple]]
{
@MODULE[*]:HAS[#name[ModuleDecouple]]
{
@name = ModuleDecouplerReliability
}
}
@PART[*]:HAS[@MODULE[ModuleLight]]
{
@MODULE[*]:HAS[#name[ModuleLight]]
{
@name = ModuleLightReliability
}
}
@PART[*]:HAS[@MODULE[ModuleEngines]]
{
@MODULE[*]:HAS[#name[ModuleEngines]]
{
@name = ModuleEngineReliability

runningChanceToFailPerfect = 0.00001
startingChanceToFailPerfect = 0.01
runningChanceToFailTerrible = 0.025
startingChanceToFailTerrible = 0.875

reliabilityDrainPerfect = 0.001
reliabilityDrainTerrible = 0.025
}
}
@PART[specific_engines_to_be_given_nondefault_values]
{
@MODULE[ModuleEngineReliability]
{
@runningChanceToFailPerfect = nondefault_value
@startingChanceToFailPerfect = nondefault_value
@runningChanceToFailTerrible = nondefault_value
@startingChanceToFailTerrible = nondefault_value

@reliabilityDrainPerfect = nondefault_value
@reliabilityDrainTerrible = nondefault_value
}
}

Link to comment
Share on other sites

Yes that would be the easy way to do it and the MM as a before and after load can it be made to be more mod friendly ?

@Fraz86 You use Hotrockets ? and if so does this mod work it ?

@Fraz86 that as been pointed out to him as well a using MM as alot of mods use ModuleEngineFX.

Edited by Mecripp2
Link to comment
Share on other sites

I do not use Hotrockets, nor do I use this mod yet. However, after taking a look at the config files, I do not believe this mod is compatible with Hotrockets or any other parts that use the ModuleEnginesFX module. I presume this would be easy enough for IRnifty to fix; he just needs to create a corresponding ModuleEngineFXReliability module.

EDIT: I would also like to point out that, while this mod would have substantially better compatibility with other mods if it added a ModuleEngineFXReliability module and used MM as I outlined above, anything that renames stock modules (ModuleDecouple, ModuleLight, ModuleEngines, ModuleEnginesFX) is inherently going to have some compatibility limitations because once those modules are renamed, any other mod attempting to find those modules won't be able to do so. This problem could be somewhat mitigated by making sure that renaming the modules takes place last (by adding the ":FINAL" flag) so that other mods have the opportunity to make their changes first.

Edited by Fraz86
Link to comment
Share on other sites

  • 1 month later...

Sorry guys for not keeping up with updates. I promise I'm reading the feedback and taking it into account. I'm simply very busy with work and a bunch of other projects. @Fraz86, since you're familiar with MM, mind making an example config file that'd add a module to every part that has a given module?

Link to comment
Share on other sites

Sorry guys for not keeping up with updates. I promise I'm reading the feedback and taking it into account. I'm simply very busy with work and a bunch of other projects. @Fraz86, since you're familiar with MM, mind making an example config file that'd add a module to every part that has a given module?

Honestly, you should read the Instruction at MM's thread yourself. It is not that complicated, and it should not take you more than 5 minutes to master it.

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...