garwel

[1.7] Kerbal Health 1.3.5 (2019-04-14)

Recommended Posts

Posted (edited)

Quick followup to the radiation issue I reported earlier: you should disregard it entirely for the time being. It might be an actual bug, but more likely it was due to a random computation error caused by an unstable overclock.

I recently noticed increased system instability after adding more RAM (no BSODs, just more application crashes). I had stress-tested it with Prime95 for a number of hours, but forgot to run a non-AVX workload. This was a mistake, as these newer gen intel CPUs can vary voltage input based on the type of instruction, and indeed after disabling AVX in Prime95 it started reporting rounding errors after about 30min of stress-testing. This is now fixed with a slight voltage increase.

I will of course keep running the mod with debug mode enabled and let you know if the issue crops up again. But for now, sorry for the likely false report and thanks again for this amazing mod!

Edited by woodbyte

Share this post


Link to post
Share on other sites

Is there a reason why KH doesn't show on the stock tool bar?  I can use the "toolbar" mod and it will be accessible.

Share this post


Link to post
Share on other sites
5 hours ago, gamerscircle said:

Is there a reason why KH doesn't show on the stock tool bar?  I can use the "toolbar" mod and it will be accessible.

It shows up on my game.

Share this post


Link to post
Share on other sites
9 hours ago, gamerscircle said:

Is there a reason why KH doesn't show on the stock tool bar?  I can use the "toolbar" mod and it will be accessible.

Check your in-game settings for Kerbal Health (accessed via Difficulty Settings).

Share this post


Link to post
Share on other sites
5 hours ago, garwel said:

Check your in-game settings for Kerbal Health (accessed via Difficulty Settings).

Thank you, I had the "Use Blizzys" checked

Share this post


Link to post
Share on other sites

I like the cut of this mod's jib, has anyone tried this with Snacks! and/or Missing History? I really like the idea that science and funds continue to be an important resource in the later game. 

Share this post


Link to post
Share on other sites

Hello @garwel, can you clear a few things for me?

1. One of my engineers on a long duration orbital station stay became a tourist. Other crewmembers are fine, the station is deaigned so they can stay there forever. I was "fastforwarding" so maybe he caught a sickness and I didnt see it, so ok. The thing is: when I access the menu, he does not appear anymore, so I cant inspect his modifyers!

2. The wiki mentions scientists and  "medics"  being able to boost recuperation. "Medic"? 

3. Parts that generate special recuperation, like the cupola: the kerbal has to be 'inside' them for the effect to take place?

Share this post


Link to post
Share on other sites

Anybody know if this is compatible with Crew R&R.  ?

CrewR&R sends kerbals on vacation after returning from a mission.  Internally it does this by changing the kerbal type to an invalid number 

ProtoCrewMember.RosterStatus VACATION = (ProtoCrewMember.RosterStatus)9001;

I guess  it all comes down to whether this mod changes the roster status for available crew.

anybody know?

Share this post


Link to post
Share on other sites
5 hours ago, linuxgurugamer said:

Anybody know if this is compatible with Crew R&R.  ?

CrewR&R sends kerbals on vacation after returning from a mission.  Internally it does this by changing the kerbal type to an invalid number 

ProtoCrewMember.RosterStatus VACATION = (ProtoCrewMember.RosterStatus)9001;

I guess  it all comes down to whether this mod changes the roster status for available crew.

anybody know?

@wile1411 actually pointed this behavior of Crew R&R out to me when we were discussing about building a framework for modifying kerbal skills -- which is now in development as Kerbal Status Effects.

I do have some ideas for a shared framework for mods that want to introduce other non-stock RosterStatus to do so without stepping on each others toes, but that'd be a different mod I think. For example besides crew R&R's "vacation" maybe Kerbal Health can have "hospitalized" or some mod may impose a "quarantine" duration upon returning to Kerbin from spaceflight -- and they can be set in some ordering/priority or allowed/disallowed to run concurrently.

Anyway to address the question at hand AFAIK currently Kerbal Health only reads PCM.RosterStatus and does not set it at any point (obv @garwel would know better, so please correct me if I'm mistaken ).

 

Share this post


Link to post
Share on other sites
7 hours ago, Daniel Prates said:

Hello @garwel, can you clear a few things for me?

1. One of my engineers on a long duration orbital station stay became a tourist. Other crewmembers are fine, the station is deaigned so they can stay there forever. I was "fastforwarding" so maybe he caught a sickness and I didnt see it, so ok. The thing is: when I access the menu, he does not appear anymore, so I cant inspect his modifyers!

Can you attach the persistent.sfs file? If the kerbal is alive and not marked as missing, they should still be on the list. Did you receive messages from Kerbal Health about accidents, low health and that kerbal going "exhausted"?

7 hours ago, Daniel Prates said:

2. The wiki mentions scientists and  "medics"  being able to boost recuperation. "Medic"? 

Medic is a profession added by USI MKS mod (and maybe some others too).

7 hours ago, Daniel Prates said:

3. Parts that generate special recuperation, like the cupola: the kerbal has to be 'inside' them for the effect to take place?

No, they affect the entire crew up to a certain cap. For cupola, it is 2 crew members. It means that if you have 4 kerbals on board, they will get 0.5% recuperation instead of 1% and so on. The only exception (IIRC) is medical labs from various mods that only affect crew inside of them.

6 hours ago, linuxgurugamer said:

Anybody know if this is compatible with Crew R&R.  ?

CrewR&R sends kerbals on vacation after returning from a mission.  Internally it does this by changing the kerbal type to an invalid number 

ProtoCrewMember.RosterStatus VACATION = (ProtoCrewMember.RosterStatus)9001;

I guess  it all comes down to whether this mod changes the roster status for available crew.

anybody know?

I haven't tested it, so I don't really know. As far as I remember, I don't change RosterStatus anywhere, but it is used by the mod extensively. I always assumed it had one of the four stock values (Available, Assigned, Dead, Missing), so a non-standard value can have unexpected effects such as kerbals' health being reset, they disappearing from the lists, NREs etc. We'd need a volunteer to test these two mods together :)

Share this post


Link to post
Share on other sites
5 hours ago, garwel said:

I haven't tested it, so I don't really know. As far as I remember, I don't change RosterStatus anywhere, but it is used by the mod extensively. I always assumed it had one of the four stock values (Available, Assigned, Dead, Missing), so a non-standard value can have unexpected effects such as kerbals' health being reset, they disappearing from the lists, NREs etc. We'd need a volunteer to test these two mods together

So I guess the next question is how is it used?  

The enum has the stock values:

  • Available 
  • Assigned 
  • Dead 
  • Missing 

And Crew R&R adds:

  • Vacation = 9001

but obviously the game doesn't know about this

 

Share this post


Link to post
Share on other sites
Posted (edited)
7 hours ago, garwel said:

Can you attach the persistent.sfs file? If the kerbal is alive and not marked as missing, they should still be on the list. Did you receive messages from Kerbal Health about accidents, low health and that kerbal going "exhausted"?

I restarted the game and he was there again - albeit, permanently transformed into a tourist. I guess excessive timewarp must have created some data witchcraft. I went ahead and corrected the persistent.cfg to restore him to his engineering skills.

As for the rest, tks!

 

PS: maybe this tie in to what linnuxGG was talking about. My timewarp bugginess reported above did change a config in my savegame persistent file.

Edited by Daniel Prates

Share this post


Link to post
Share on other sites
Posted (edited)

@garwel
I took a quick look at the code.  The only place that I see an issue is in KerbalhealthStatus.cs, there is a case statement at line 84 which returns the LocationString based on the kerbal's status.

It doesn't appear that it would be a problem, you have a check for a null vessel.  However, adding one line would fix the problem:

case (ProtoCrewMember.RosterStatus)9001: return "Vacation";

This is a quick fix, I suppose a better one would be for me to make this a public field in Crew R&R so you could just reference it, this would be protection against any possible changes in the future.

Let me know.

 

Edit:

If you would use Crew R&R as a reference during the compile, it won't be an issue at runtime since the only thing you would be grabbing would be the compiled constant.  If you don't like that, I can expose it via Reflection so you could get it that way.  Reflection is a few  more lines of code, but other than that, not a big deal

Edited by linuxgurugamer

Share this post


Link to post
Share on other sites

@linuxgurugamer Thank you for checking it for me. I also found some other cases where it could be a problem (the most serious one is that kerbals on vacation would be considered non-trackable and have their health data reset). I'm going to include it in the next release, but someone should do the testing.

On another note, I'm going to slightly modify default health factors in the next Kerbal Health release. Microgravity will draw 1 HP per day instead of 0.5; being at KSC will restore 4 HP per day instead of 5. The game will get a little bit harder, but it will also make centrifuges more sensible. Current games should not be affected by it unless you manually change the settings.

Share this post


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

The game will get a little bit harder

That is why we use KH.

Any chance you could consider a healing factor, or a health bonus, having the presence of a scientist? I gather, if a lab counts as a "med bay" of sorts, maybe the scientist could count as having some paramedic skills. Would add another layer to long mission planning.

Share this post


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

Any chance you could consider a healing factor, or a health bonus, having the presence of a scientist? I gather, if a lab counts as a "med bay" of sorts, maybe the scientist could count as having some paramedic skills. Would add another layer to long mission planning.

IIRC, it can be done via the conditions mechanism. Check out the wiki to see how to edit or add conditions and logic to them.

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.