Jump to content

[1.8+] Kerbal Health 1.6.8 (2024-01-22)


garwel

Recommended Posts

Hey, I'm getting a bunch of NRE log spam from the mod:

NullReferenceException
    KerbalHealth.KerbalHealthStatus.HealthChangePerDay ()
    KerbalHealth.KerbalHealthStatus.Update (Double interval)
    KerbalHealth.KerbalHealthList.Update (Double interval)
    KerbalHealth.KerbalHealthScenario.UpdateKerbals (Boolean forced)
    KerbalHealth.KerbalHealthScenario.FixedUpdate ()

Log file here.

I've got a feature request as well (and maybe this has already been discussed), which is just to have the main dialogue split into vessels, and not just a long list of Kerbals (because it can be really long, sometimes). TAC Life Support uses this method and it works pretty well.

And on a different note, I was wondering how Kerbal Health is affecting people's games? Because the point of a mod like this is to get you to make different decisions and make the gameplay more immersive.

Personally, I've found that it makes little or no difference to a Mun mission. You can do a round trip with a simple capsule full to capacity with no problem. Minmus, however, is a different matter (I've not done anything interplanetary yet). You can send a simple mission half full, I've found, but with no loitering time at all -- it's a pretty fine margin in fact. I'm thinking about either making a cycler to support extended missions, or, more likely, a Minmus outpost so that kerbals can recover a little before making the next leg of their trip. Either way, no more sending the little guys to Minmus and back in a Mk I command pod.

Link to comment
Share on other sites

21 hours ago, cyberpunkdreams said:

Hey, I'm getting a bunch of NRE log spam from the mod:

NullReferenceException
    KerbalHealth.KerbalHealthStatus.HealthChangePerDay ()
    KerbalHealth.KerbalHealthStatus.Update (Double interval)
    KerbalHealth.KerbalHealthList.Update (Double interval)
    KerbalHealth.KerbalHealthScenario.UpdateKerbals (Boolean forced)
    KerbalHealth.KerbalHealthScenario.FixedUpdate ()

Log file here.

I've got a feature request as well (and maybe this has already been discussed), which is just to have the main dialogue split into vessels, and not just a long list of Kerbals (because it can be really long, sometimes). TAC Life Support uses this method and it works pretty well.

And on a different note, I was wondering how Kerbal Health is affecting people's games? Because the point of a mod like this is to get you to make different decisions and make the gameplay more immersive.

Personally, I've found that it makes little or no difference to a Mun mission. You can do a round trip with a simple capsule full to capacity with no problem. Minmus, however, is a different matter (I've not done anything interplanetary yet). You can send a simple mission half full, I've found, but with no loitering time at all -- it's a pretty fine margin in fact. I'm thinking about either making a cycler to support extended missions, or, more likely, a Minmus outpost so that kerbals can recover a little before making the next leg of their trip. Either way, no more sending the little guys to Minmus and back in a Mk I command pod.

Can you share your save file? Did you do anything before NREs started appearing? Which version are you using?

I'll take a look at sorting kerbals by vessels. It's doable, but probably not in 1.2.

In my current playthrough, I also have no troubles with LKO and Mun missions, but Minmus missions required bigger crew cabins (or more of them). A permanent Mun station has 2 hitchhikers, a cupola, a lab + a docked passenger vessel and can support two 2-star scientists indefinitely. As to interplanetary missions, I'm building a ship that will be able to travel to Eve or Duna with 3 kerbals, and it's going to be pretty big. Radiation is also becoming a problem in missions like this, so I had to add a heatshield.

Link to comment
Share on other sites

Sure, here's the save file (I've got a lot of mods installed). I didn't do anything to trigger this, as far as I know. I only noticed the NREs due to looking for a problem with something else.

This reminds me of something else as well -- both this and Space Age are incompatible with using StageRecovery to recover kerbals, as the latter destroys and recreates the kerbal when it happens. However, other mods, such as Roster Manager, work fine with StageRecovery. I guess the problem is that you're storing data on the kerbal's main object, whereas the norm for other mods seems to be to create their own data structure and store their specific information there. I know it doesn't seem as neat, but maybe it's a better approach with how KSP works?

Link to comment
Share on other sites

Hi, I'm having an issue too on a heavily modded install, from what I'm reading above it's possibly related to @cyberpunkdreams 's issue

From what I can read in the log what happens is :

-New kerbals are created (I'm unclear if they're just aspirants available for recruiting or tourists created by my tourism contract pack)

-The kerbals are renamed from Random Kerman to Random2 Gaelan by Kerbal Renamer since I'm using GPP.

-Kerbal health doesn't like it, and starts spamming exceptions. I can't open up the KH window when clicking its button in blizzy's toolbar anymore untill I restart the game.

-I usually receive a notification telling me some or all kerbals in my current active vessel just died, their picture is still there in the lower right corner but they're turned to tourists basically forever.

 

I would understand if you don't want to do anything about an issue that is probably caused by some other mod, but I'd still greatly appreciate if anyone can tell me which other mod I shall remove.

My current main suspects are : Kerbal Renamer, Tourism plus contract pack (which creates and renames tourists periodically), Galileo's Planet Pack or Kopernicus, if anything in KH is calculated from specific locations in the stock game (radiation ?) or maybe even KS3P which is a totally unrelated post processing mod but just happens to have thrown a lot of exceptions in my console in the recent past. (But I really don't see how it could be causing that and the issue is supposed to be fixed).

Here is the log, look from timestamp 23:42:33:905 to the end, exception spamming starts at 23:42:34:662

ksp.log

Any help appreciated, thanks !

Edited by lBoBl
Link to comment
Share on other sites

The problem seems to come from handling renaming of kerbals. TBH, I never really tested this feature, but I'll take a look at what can be done about it. Does it only happen when you hire kerbals? Does it happen to those already on missions?

Link to comment
Share on other sites

5 hours ago, garwel said:

The problem seems to come from handling renaming of kerbals. TBH, I never really tested this feature, but I'll take a look at what can be done about it. Does it only happen when you hire kerbals? Does it happen to those already on missions?

It happens at seemingly random times, new Kerbals are created and renamed all the time apparently, I'm guessing they're just the potential new recruits in the astronaut complex (they need to be created before you hire them since their name and profession must be displayed prior to recruitment).

As for the last question, does it happen to those already assigned, it's a bit complicated. Of course, I don't rename my Kerbals every five minutes during missions. But like I said the bug happens randomly in the background when the game creates new Kerbals, and from there the mod completely freaks out and usually insta-kills some Kerbals on my currently active/controlled vessel.

I'll try without Kerbal Renamer and see if things get better /!\EDIT/!\ Seems like everything works fine without Kerbal Renamer...  @cyberpunkdreams is probably right about storing the KH data in its own structure

Edited by lBoBl
Link to comment
Share on other sites

5 hours ago, garwel said:

The problem seems to come from handling renaming of kerbals. TBH, I never really tested this feature, but I'll take a look at what can be done about it. Does it only happen when you hire kerbals? Does it happen to those already on missions?

This is the kind of bug that I suspect would be avoided if you put all the KH data into a separate construct rather than in each kerbal's.

Link to comment
Share on other sites

On 1/20/2017 at 2:04 PM, garwel said:

Panic Attack: when your kerbal's is on a mission, he/she may epxerience a panic attack and become uncontrollable for up to 3 hours. This event's probability depends on the kerbal's health (the lower, the more likely) and courage (the lower, again, the more likely) of the kerbal, the maximum average frequency is once per 100 days.

I've been reading through this thread and saw this part, and I don't think that courage should have an effect on the likeliness of a panic attack. Kerbal "traits" aren't really designed or supposed to affect gameplay. Same thing with the accident event. I wouldn't really want to have to try and cycle through the Kerbal hiring menu while time warping to try and get Kerbals with better stats.

Anyways, this seems like a cool mod. Maybe I'll do a playthrough with it eventually.

 

 

Link to comment
Share on other sites

15 minutes ago, SnailsAttack said:

I've been reading through this thread and saw this part, and I don't think that courage should have an effect on the likeliness of a panic attack. Kerbal "traits" aren't really designed or supposed to affect gameplay. Same thing with the accident event. I wouldn't really want to have to try and cycle through the Kerbal hiring menu while time warping to try and get Kerbals with better stats.

Anyways, this seems like a cool mod. Maybe I'll do a playthrough with it eventually.

 

 

There are mods which let you hire custom kerbals with custom stats, and of course you pay more for better stats.

The two suggestions I'd personnally make for this mod are : 1. More complex radiation mechanics. Increasing your distance from the sun should decrease the radiation levels, and also some planets could have a magnetosphere and some others could lack one. Even maybe, Van Allen style radiation belts ? 2. Make some airplane parts kill your kerbals if in space. Because airplane parts aren't supposed to be air tight. But maybe that's not possible to implement without changing the mechanics of the mod extensively

Edited by lBoBl
Link to comment
Share on other sites

I think I found the problem @cyberpunkdreams and @lBoBl had. It was due to KH trying to handle renaming of kerbals that hadn't been registered yet (because they weren't part of the crew). I uploaded a quick fix that also addresses a few smaller issues. I had to merge it with my current dev version, so you'll see some mentions of the new quirks feature, but they are disabled yet.

Note: I haven't tested this pre-release, so please make a backup of your persistent file before updating. Let me know how it works for you.

You can download the pre-release (and see patch notes) here.

3 hours ago, cyberpunkdreams said:

This is the kind of bug that I suspect would be avoided if you put all the KH data into a separate construct rather than in each kerbal's.

I don't store anything in kerbals structures themselves. I don't even think it's possible without some advanced hacks. Everything is stored in KerbalHealthScenario structure in the persistent file and in separate .NET collections in run-time.

 

2 hours ago, SnailsAttack said:

I've been reading through this thread and saw this part, and I don't think that courage should have an effect on the likeliness of a panic attack. Kerbal "traits" aren't really designed or supposed to affect gameplay. Same thing with the accident event. I wouldn't really want to have to try and cycle through the Kerbal hiring menu while time warping to try and get Kerbals with better stats.

Well, it's exactly what I intended to do: make Stupidity and Courage play at least some role in the gameplay instead of being purely decorative. Besides, some mods (e.g. Extraplanetary Launchpads) already use these values. It doesn't affect the game in a big way, but still something you may want to consider if you want to optimize everything. In Kerbal Health 1.2, these will play a bigger role as they'll affect the chances of getting certain quirks. But still, you won't die of just being too stupid or courageous.

1 hour ago, lBoBl said:

The two suggestions I'd personnally make for this mod are : 1. More complex radiation mechanics. Increasing your distance from the sun should decrease the radiation levels, and also some planets could have a magnetosphere and some others could lack one. Even maybe, Van Allen style radiation belts ? 2. Make some airplane parts kill your kerbals if in space. Because airplane parts aren't supposed to be air tight. But maybe that's not possible to implement without changing the mechanics of the mod extensively

1. Distance from the sun is already taken into account. The closer you get, the higher solar radiation grows (inversely proportional to squared distance). It doesn't affect galactic radiation or parts radiation. Planets also have simplified magnetospheres that reduce radiation when flying low over them. I don't plan to add radiation belts and other complex stuff because I think it will impact performance too much and be perhaps too complex and unpredictable for most players.

2. I'd like to avoid such drastic changes that would kill kerbals without a very good reasons. Besides, the line between airplane parts and space parts is not so clear (well, to me). Remember, there are spaceplanes and such. There is one penalty, however: light airplane parts with great window ratio don't have Radiation Shielding.

Link to comment
Share on other sites

Thanks for the quick update !

It doesn't seem to fix the issue when both my tourist contract pack and kerbal renamer are renaming some kerbals rapidly, but I've just ditched Renamer and everything is fine.

Suggestion 2 wasn't really serious, and in suggestion 1 the take-away I guess would be that since IRL most planets don't have a magnetosphere, some have a weak one and others a strong one, it'd be nice to model that with a config for each planet (IRL it depends on more complicated factors than just mass). But I definitely love the mod as it is right now :) !

Link to comment
Share on other sites

On 20/01/2017 at 5:04 PM, garwel said:

As you see, this mechanics may allow some kerbals to stay relatively healthy indefinitely. It may look cheaty, but the point is that: (1) there should be a way to design long-term missions without spamming crew space, (2) it requires a lot of heavy parts and therefore still difficult, (3) the balanced health level is usually far from 100% and may fall lower if circumstances change (e.g., new crew arrives and fills the station), (4) these bonuses require a lot of EC, (5) radiation still keeps mounting (see below).

@garwel i must say, that above is the most beautiful aspect of your mod. I went into the mod habit exactly so that KSP would properly replicate the difficulties of travelling through space, and along with LS mods (I prefer TAC-LS myself), yours is the one that better adds to a real-life feel. I have lots of fun designing spacecraft tailored to the amount of time I expect a mission to last - as it should be! Many thanks for developing this!

Now, there are a couple of things I would like to ask you. I've done some tests of my own but I would like to hear from the creator how the mod treat these two issues. They are:

1 - Deep Freeze. Once I thaw a kerbal, will KH stop counting the days left before kerbals becoming incapacitated? Or the counter keeps on going? If the vessel allows for, say, 10 days, can I unfreeze the little guy, work him for a day, freeze him again for an entire year, unfreeze for another single day, freeze again for an entire year etc...?

2 - Imagine a vessel, a large one with lots of space, designed for  a two-kerbal crew so it is roomy enough  to allow for a long flight. Say, a 100 days flight. Then assume it has a sort of a small two-seat escape pod, a small capsule meant only to have the two kerbals reentry Kerbin at the end of the mission. Obviously, the whole vessel provides for a 100 days flight, but the capsule by itself, when detached, will have maybe a few days worth of available time (say, five days for the sake of the argument), since it is much smaller and cramped. The question is: imagine I just made a 80 days trip and am ready to return the crew back to the ground.  I move the two kerbals to the escape capsule and detach it, leaving the rest of the spacecraft behind (and with it, it's roomy interior space). Will the kerbals "carry" their tiredness of 80 days into the capsule, and instantly go insane because it only provides 5 days of flight worthiness?

Link to comment
Share on other sites

8 hours ago, Daniel Prates said:

1 - Deep Freeze. Once I thaw a kerbal, will KH stop counting the days left before kerbals becoming incapacitated? Or the counter keeps on going? If the vessel allows for, say, 10 days, can I unfreeze the little guy, work him for a day, freeze him again for an entire year, unfreeze for another single day, freeze again for an entire year etc...?

2 - Imagine a vessel, a large one with lots of space, designed for  a two-kerbal crew so it is roomy enough  to allow for a long flight. Say, a 100 days flight. Then assume it has a sort of a small two-seat escape pod, a small capsule meant only to have the two kerbals reentry Kerbin at the end of the mission. Obviously, the whole vessel provides for a 100 days flight, but the capsule by itself, when detached, will have maybe a few days worth of available time (say, five days for the sake of the argument), since it is much smaller and cramped. The question is: imagine I just made a 80 days trip and am ready to return the crew back to the ground.  I move the two kerbals to the escape capsule and detach it, leaving the rest of the spacecraft behind (and with it, it's roomy interior space). Will the kerbals "carry" their tiredness of 80 days into the capsule, and instantly go insane because it only provides 5 days of flight worthiness?

1. Deep Freeze should be supported correctly so that your kerbals' health will stop changing when frozen and resume when thawed. Note that radiation, as in real life, still keeps accumulating so you'll need to protect your vessel from it if you plan a long journey. I haven't tested DF a lot, so let me know if you encounter any issues.

2. Kerbal Health is built around Health Points; days counter is there just for your convenience. So in your example the kerbals have lost 80% of their "health buffer" by the time the counter says 20 days. If the small capsule allows for 2 days stay only for a healthy kerbal, it will therefore allow 20% x 2 days = 0.4 days = 2 hours 24 minutes for these two guys. Should be enough for a quick descent to Kerbin.

Edited by garwel
Link to comment
Share on other sites

3 hours ago, garwel said:

1. Deep Freeze should be supported correctly so that your kerbals' health will stop changing when frozen and resume when thawed. Note that radiation, as in real life, still keeps accumulating so you'll need to protect your vessel from it if you plan a long journey. I haven't tested DF a lot, so let me know if you encounter any issues.

2. Kerbal Health is built around Health Points; days counter is there just for your convenience. So in your example the kerbals have lost 80% of their "health buffer" by the time the counter says 20 days. If the small capsule allows for 2 days stay only for a healthy kerbal, it will therefore allow 20% x 2 days = 0.4 days = 2 hours 24 minutes for these two guys. Should be enough for a quick descent to Kerbin.

Oh ok!  Good to know!

1. I has having some issues with deep freeze. However it must have been an install or version problem. I did a fresh install and things got into place.

2. I understand. Changing vessels will change the days left in the counter,  because the counter checks in realtime the available health points in any given vessel. 

I guess the mod is even better than I thought!

Link to comment
Share on other sites

This is probably the last release for KSP 1.3.1. It is almost identical to 1.1.0-pre.2 (except that I removed Quirks line from Health Monitor). I will wait for KSP 1.4.1 next week and an updated MM before releasing a rebuild.

Kerbal Health 1.1.1

  • Fixed: NRE when calculating Connected factor in some cases
  • Fixed: NRE when renaming unregistered kerbals (should fix incompatibility with GPP)
  • Fixed: Issues with kerbals marked as Missing (e.g. in rescue contracts)
  • Fixed: Deadly Reentry's 0.625 m heat shield didn't have radiation shielding (thanks eightiesboi)
  • Fixed: Bug in Health Report, which sometimes caused incorrect figures to be displayed

Download here

Edited by garwel
Link to comment
Share on other sites

Kerbal Health 1.1.2

  • Recompiled for KSP 1.4.1
  • Added: Config for Command Pod Mk.1-3 from KSP 1.4
  • Added: Configs for parts introduced by Making History Expansion
  • Added: Radiation shielding to Structural Fuselage
  • Fixed: Radiation shielding added to Deadly Reentry 0.625m Heat Shield, for real this time

Download here

Link to comment
Share on other sites

Hi,

I wrote a few small patches and will probably do a few more. Right now I've covered-

-Tundra BFR command pod is now OP (as it probably ought to be)

-Lynx and Karibou rovers can hold kerbals for a long time, while landed on a body with sufficient gravity

I don't know if they're balanced the way you'd like, but they are playable and enable more missions.

 

Working on SSTU, maybe OPT and the Mk2-3 expansions among others- Might also work on adding rad shielding to more mod structural parts.

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.

×
×
  • Create New...