Jump to content

[1.8+] Kerbal Health 1.5.5 (2021-06-07)


garwel
 Share

Recommended Posts

On 2/7/2021 at 12:19 PM, flart said:

Why do you filter cockpits and cupolas from automatic RadiationShielding patch ?

Because cockpits are supposed to be used in the atmosphere and cupolas are covered with glass. So generally, they are not suitable for radiation protection. But you can override this when needed.

Edited by garwel
Link to comment
Share on other sites

  • 1 month later...

Kerbal Health 1.5.2

  • Compiled for KSP 1.11.2. Should be compatible with KSP versions 1.8 up (not tested)
  • Changed: New rebalance pass for parts' living space, shielding and more (affects stock and most mods)
  • Added: Patches for Far Future Technologies, KRE, Near Future Launch Vehicles, Rational Resources, Rational Resources Parts
  • Changed: Kerbal Health's icon is now green out of respect for the work of the International Committee of the Red Cross
  • Changed: Replaced in-game settings for min levels of the Astronaut Complex and R&D building for decontamination with a single checkbox that lets you disable this check altogether. Actual needed levels can still be set via config files (can be used by mods that increase number of upgrades)
  • Changed: Small UI improvements and log spam reduction in Debug mode
  • Fixed: Decontamination was broken some releases ago
  • Fixed: Details for wrong kerbals were sometimes displayed on Health Monitor's pages beyond the first one

Download here

Link to comment
Share on other sites

  • 1 month later...
6 hours ago, lookolookthefox said:

Is there any way to integrate this mod with connected livingspaces? for example, don't count radiation shielding or living space for non-connected parts?

Here you go!

Kerbal Health 1.5.4

  • Added: Integration with Connected Living Space. When enabled, your kerbals will only benefit from the parts they have access to (e.g. living space and bonuses). Shielding and part-emitted radiation are an exception (as well as some special parts like broadband antennas): they are affect the whole vessel. It may make your game a bit harder and will force you to think better how to connect your parts together. You can disable this feature in the settings.
  • Added: Kerbals now have a chance (100% by default) to have their lifetime radiation dose completely erased when they discover an anomaly. Note that it works only for one kerbal per anomaly
  • Changed: KerbalHealthModule configs now support affectsAllCLSSpaces value, which makes the part module ignore Connected Living Space's compartments (i.e. work as previously in the game). At the same time, partCrewOnly value has been deprecated as it was barely used. MKS medical bays now affect only one kerbal.
  • Changed: Shelter Exposure is no longer displayed in Health Report when Kerbalism radiation is enabled as it has no use there
  • Fixed: Mod settings should now correctly reset when switching between difficulty levels
  • Various optimization and bug fixes

Download here

Link to comment
Share on other sites

16 minutes ago, garwel said:

Here you go!

Kerbal Health 1.5.4

  • Added: Integration with Connected Living Space. When enabled, your kerbals will only benefit from the parts they have access to (e.g. living space and bonuses). Shielding and part-emitted radiation are an exception (as well as some special parts like broadband antennas): they are affect the whole vessel. It may make your game a bit harder and will force you to think better how to connect your parts together. You can disable this feature in the settings.
  • Added: Kerbals now have a chance (100% by default) to have their lifetime radiation dose completely erased when they discover an anomaly. Note that it works only for one kerbal per anomaly
  • Changed: KerbalHealthModule configs now support affectsAllCLSSpaces value, which makes the part module ignore Connected Living Space's compartments (i.e. work as previously in the game). At the same time, partCrewOnly value has been deprecated as it was barely used. MKS medical bays now affect only one kerbal.
  • Changed: Shelter Exposure is no longer displayed in Health Report when Kerbalism radiation is enabled as it has no use there
  • Fixed: Mod settings should now correctly reset when switching between difficulty levels
  • Various optimization and bug fixes

Download here

Wow! That was incredibly fast! Thanks very much. One little question, is there a way for me to make it so that the shielding is living space specific too? It seems logical that the shielding gets installed on specific parts to me, though I may also just not understand the design philosophy behind the mechanic :)

Link to comment
Share on other sites

I really like this mod, but I wish it had a very expensive, heavy, high-level, power-obliterating part to generate a local magnetosphere, maybe even for everything in a radius, so you can plop one on an outpost and operate vehicles that are otherwise unshielded with vastly reduced radiation.

Link to comment
Share on other sites

Posted (edited)
18 hours ago, lookolookthefox said:

Wow! That was incredibly fast! Thanks very much. One little question, is there a way for me to make it so that the shielding is living space specific too? It seems logical that the shielding gets installed on specific parts to me, though I may also just not understand the design philosophy behind the mechanic :)

The reason why shielding from all parts in a vessel counts is that cosmic rays travel from all directions, and they hit and can be stopped by al sorts of things on their way. So if you attach, say, a shielding panel to your vessel, it will still help protect your kerbals even if located far from them. For technical reasons, the mod doesn't check actual relative location and orientation of parts, so it assumes they cover the vessel more or less uniformly.

Oh, and to be honest, I didn't make the CLS update in a few hours. I'd been working on it for a few weeks and was about to release it when you very timely asked for it. Perhaps, you have some telepathic abilities.

12 hours ago, Frostiken said:

I really like this mod, but I wish it had a very expensive, heavy, high-level, power-obliterating part to generate a local magnetosphere, maybe even for everything in a radius, so you can plop one on an outpost and operate vehicles that are otherwise unshielded with vastly reduced radiation.

This would require some very serious changes to the mod and would affect performance. If you are playing with some far future, you can for instance make some advanced parts provide large amounts of shielding as a substitute for such a generator.

Edited by garwel
Link to comment
Share on other sites

Is it possible to have kerbals who are injured or below say 80% health to be marked as "unavailable" in the Astronaut Complex in the same way that the mod Crew R&R does to give recently used kerbals some down time? This would be a "nice to have" kind of feature. 

Link to comment
Share on other sites

Posted (edited)
7 hours ago, garwel said:

This would require some very serious changes to the mod and would affect performance. If you are playing with some far future, you can for instance make some advanced parts provide large amounts of shielding as a substitute for such a generator.

So, ignore the area radshield... I do feel kind of "cheating" when I dump structural tubes to load up on radshielding. It'd feel nicer to have a dedicated part for that. Really this is minor though.

But on the topic of this, the K&K Planetary Base System has a few items that could use radshielding... I don't have them fully unlocked, but so far I've seen the MKSWorkshop and OSE_workshop can hold 2 and 3 crew respectively and have no radshielding.  They're located under GameData\PlanetaryBaseInc\ModSupport\Parts.

Edited by Frostiken
Link to comment
Share on other sites

14 hours ago, Caerfinon said:

Is it possible to have kerbals who are injured or below say 80% health to be marked as "unavailable" in the Astronaut Complex in the same way that the mod Crew R&R does to give recently used kerbals some down time? This would be a "nice to have" kind of feature. 

I don't want to impose hard restrictions like these. Instead, it's your call if you are willing to risk sending a not-yet-recovered crew member to a mission.

6 hours ago, Frostiken said:

So, ignore the area radshield... I do feel kind of "cheating" when I dump structural tubes to load up on radshielding. It'd feel nicer to have a dedicated part for that. Really this is minor though.

But on the topic of this, the K&K Planetary Base System has a few items that could use radshielding... I don't have them fully unlocked, but so far I've seen the MKSWorkshop and OSE_workshop can hold 2 and 3 crew respectively and have no radshielding.  They're located under GameData\PlanetaryBaseInc\ModSupport\Parts.

Actually, on second thought, I may try to do something about area effects. But no promises or ETAs, and it may be quite buggy.

Looks like KPBS has been updated and I haven't caught up with that. Thanks for flagging it. I'll take a look at next release.

Link to comment
Share on other sites

On 5/26/2021 at 8:14 AM, Frostiken said:

I really like this mod, but I wish it had a very expensive, heavy, high-level, power-obliterating part to generate a local magnetosphere, maybe even for everything in a radius, so you can plop one on an outpost and operate vehicles that are otherwise unshielded with vastly reduced radiation.

AFAIR, Kerbalism have active magnetic shield part as well as directional radiation simulation. And there's integration with Kerbal Health?.. However I have not tried myself how it works.

Link to comment
Share on other sites

Posted (edited)

I have null ref spam when EVA

NullReferenceException: Object reference not set to an instance of an object
    KerbalHealth.CLS.GetCrewCount (ConnectedLivingSpace.ICLSSpace clsSpace) (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.Core.GetCrewCount (ProtoCrewMember pcm, System.Boolean entireVessel) (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.ConfinementFactor.ChangePerDay (KerbalHealth.KerbalHealthStatus khs) (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.KerbalHealthStatus.CalculateFactors () (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.KerbalHealthStatus.get_FactorsOriginal () (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.KerbalHealthStatus.get_Factors () (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.KerbalHealthStatus.get_HPChangeFactors () (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.KerbalHealthStatus.get_HPChangeTotal () (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.KerbalHealthStatus.Update (System.Double interval) (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.KerbalHealthList.Update (System.Double interval) (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.KerbalHealthScenario.UpdateKerbals (System.Boolean forced) (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.KerbalHealthScenario.FixedUpdate () (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    UnityEngine.DebugLogHandler:LogException(Exception, Object)
    ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
    UnityEngine.Debug:CallOverridenDebugHandler(Exception, Object)

 

Edited by -MadMan-
Link to comment
Share on other sites

On 5/28/2021 at 2:53 AM, evileye.x said:

AFAIR, Kerbalism have active magnetic shield part as well as directional radiation simulation. And there's integration with Kerbal Health?.. However I have not tried myself how it works.

Unfortunately Kerbalism is fully incompatible with several mods I consider to be superior and not worth the tradeoff.

Link to comment
Share on other sites

Posted (edited)
On 5/28/2021 at 8:06 PM, -MadMan- said:

I have null ref spam when EVA

NullReferenceException: Object reference not set to an instance of an object
    KerbalHealth.CLS.GetCrewCount (ConnectedLivingSpace.ICLSSpace clsSpace) (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.Core.GetCrewCount (ProtoCrewMember pcm, System.Boolean entireVessel) (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.ConfinementFactor.ChangePerDay (KerbalHealth.KerbalHealthStatus khs) (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.KerbalHealthStatus.CalculateFactors () (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.KerbalHealthStatus.get_FactorsOriginal () (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.KerbalHealthStatus.get_Factors () (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.KerbalHealthStatus.get_HPChangeFactors () (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.KerbalHealthStatus.get_HPChangeTotal () (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.KerbalHealthStatus.Update (System.Double interval) (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.KerbalHealthList.Update (System.Double interval) (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.KerbalHealthScenario.UpdateKerbals (System.Boolean forced) (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    KerbalHealth.KerbalHealthScenario.FixedUpdate () (at <35844b481c8c42fc8967e0e9e2faee4f>:0)
    UnityEngine.DebugLogHandler:LogException(Exception, Object)
    ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
    UnityEngine.Debug:CallOverridenDebugHandler(Exception, Object)

 

Can you enable Debug Logging in the mod's settings and, when you next experience this issue, share the full KSP log ?

Edited by garwel
Link to comment
Share on other sites

Kerbal Health 1.5.5

  • Added: Nuclear engines now emit radiation in proportion to their thrust. It can get really high (e.g. more than 15M banana doses per day for the NERV engine) but it's fortunately short lived
  • Changed: All health modules now show "Health Module" in Editor's part info instead of their type to hopefully reduce confusion
  • Fixed: NRE for kerbals in loaded but inactive vessels when Connected Living Space integration is active
  • Fixed: Non-stock antennas didn't apply health effects and spammed log with Connected Living Space integration

Download here

4 hours ago, -MadMan- said:

Thanks! I've just released a version which should fix this issue. In case you're wondering, it was due to my sloppy handling of Connected Living Space's API: I used data for the active vessel when in fact I could be dealing with another vessel in the loaded range. As a result, the mod couldn't find the CLS space for the kerbal and everything stopped working. Now I search for spaces in the appropriate vessel whenever possible and added another null check in case I still missed something.

Link to comment
Share on other sites

1 hour ago, Sudragon said:

Could I request an integration patch set for Angel-125's Wild Blue Industries set of mods? 

As DSEV is already supported, I guess it mean Buffalo, MOLE and/or Pathfinder? I haven't played with them but I'll take a look when I have time. Meanwhile, the smart patches that come with Kerbal Health should provide basic compatibility.

Link to comment
Share on other sites

9 hours ago, garwel said:

As DSEV is already supported, I guess it mean Buffalo, MOLE and/or Pathfinder? I haven't played with them but I'll take a look when I have time. Meanwhile, the smart patches that come with Kerbal Health should provide basic compatibility.

Indeed, Buffalo, MOLE and Pathfinder. The MOLE lab modules don't have rad shielding options.  I can see the inflatables not getting shielding for example, but Bob is facing early retirement due to his dosage levels.

Link to comment
Share on other sites

  • 2 weeks later...

I find myself really hurting for recuperation. It only comes from the 2.5m cupola and is a must have on a long trip. Even a mission to Duna or Eve needs the ship to be festooned with cupolas like it has a pox disease so that my crew can survive. 

I've modded the SSXP parts so the greenhouses and aquaculture modules provide a bit and like the results. Any way you could add it in to the main download? In my head canon, the fresh food and opportunity to garden or tend to the animals is relaxing enough to match looking out at space from a cupola. The 3.75m parts support 2 Kerbals each and the 2.5m one supports one, so carrying one of each lets me keep 8 Kerbals at around 45 health permanently. That let's me do a few days of ops away from the station/mothership without needing to worry they'll die or spend forever recuperating for another excursion.

Link to comment
Share on other sites

  • 2 weeks later...

can you change settings mid game (not a fresh one) ? on a backup copy (1.11.2) of an active game i installed this and when adjusted the settings - e.g. disabling radiation or change the HP rate - it had no effect even after restart.  The 'connected to home' for example shows 0 for kerbals in orbit with antenna's and all... so either this is not possible or i am missing something in the game play.

Link to comment
Share on other sites

  • 2 weeks later...
On 7/6/2021 at 9:04 PM, pp3d said:

can you change settings mid game (not a fresh one) ? on a backup copy (1.11.2) of an active game i installed this and when adjusted the settings - e.g. disabling radiation or change the HP rate - it had no effect even after restart.  The 'connected to home' for example shows 0 for kerbals in orbit with antenna's and all... so either this is not possible or i am missing something in the game play.

Can you share your save file and log with Debug Logging enabled?

Link to comment
Share on other sites

I have also the nullreference spam, this is happening when the 2nd ship (controlled by KOS) with a kerbal leaving outside of the physics simulation range (where KOS failed too),  The main ship does not have a kerbal in it (1st stage). I used FMRS to load to recover the 1st stage. Here is the error:

NullReferenceException: Object reference not set to an instance of an object
  at KerbalHealth.CLS.GetCLSSpace (ProtoCrewMember pcm, Vessel vessel) [0x0006c] in <cb383f709e694551953e0ca5b39185c7>:0 
  at KerbalHealth.Core.GetCrew (ProtoCrewMember pcm, System.Boolean entireVessel) [0x0001a] in <cb383f709e694551953e0ca5b39185c7>:0 
  at KerbalHealth.Logic.Test (ProtoCrewMember pcm) [0x0046a] in <cb383f709e694551953e0ca5b39185c7>:0 
  at KerbalHealth.ConditionalEffect.IsApplicable (KerbalHealth.KerbalHealthStatus khs) [0x0000c] in <cb383f709e694551953e0ca5b39185c7>:0 
  at KerbalHealth.Quirk+<>c__DisplayClass39_0.<GetApplicableEffects>b__0 (KerbalHealth.ConditionalEffect effect) [0x00000] in <cb383f709e694551953e0ca5b39185c7>:0 
  at System.Linq.Enumerable+WhereListIterator`1[TSource].MoveNext () [0x00037] in <351e49e2a5bf4fd6beabb458ce2255f3>:0 
  at System.Linq.Enumerable+SelectManySingleSelectorIterator`2[TSource,TResult].MoveNext () [0x0006f] in <351e49e2a5bf4fd6beabb458ce2255f3>:0 
  at KerbalHealth.KerbalHealthStatus.CalculateQuirkEffects () [0x0007b] in <cb383f709e694551953e0ca5b39185c7>:0 
  at KerbalHealth.KerbalHealthStatus.CalculateEffects () [0x00043] in <cb383f709e694551953e0ca5b39185c7>:0 
  at KerbalHealth.KerbalHealthStatus.get_HealthEffects () [0x00008] in <cb383f709e694551953e0ca5b39185c7>:0 
  at KerbalHealth.KerbalHealthStatus.GetVesselRadiation (Vessel v) [0x000d9] in <cb383f709e694551953e0ca5b39185c7>:0 
  at KerbalHealth.KerbalHealthStatus.GetRadiation () [0x0006c] in <cb383f709e694551953e0ca5b39185c7>:0 
  at KerbalHealth.KerbalHealthStatus.Update (System.Double interval) [0x00073] in <cb383f709e694551953e0ca5b39185c7>:0 
  at KerbalHealth.KerbalHealthList.Update (System.Double interval) [0x0001b] in <cb383f709e694551953e0ca5b39185c7>:0 
  at KerbalHealth.KerbalHealthScenario.UpdateKerbals (System.Boolean forced) [0x003d9] in <cb383f709e694551953e0ca5b39185c7>:0 
  at KerbalHealth.KerbalHealthScenario.FixedUpdate () [0x00013] in <cb383f709e694551953e0ca5b39185c7>:0 
UnityEngine.DebugLogHandler:Internal_LogException(Exception, Object)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
UnityEngine.Logger:LogException(Exception, Object)
UnityEngine.Debug:CallOverridenDebugHandler(Exception, Object)
 
(Filename: <cb383f709e694551953e0ca5b39185c7> Line: 0)

Please see the full log here:

https://drive.google.com/file/d/15WS_0bOAfPqfxbzpj_X3K_BkKN7Km0Sy/view?usp=sharing

Edit: adding the log with debug_logging turned on:

https://drive.google.com/file/d/1qJRoa38jNKNxvab8HauE-Sfa6Ew_dU5e/view?usp=sharing

Edited by Dodge
Link to comment
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.

 Share

×
×
  • Create New...