garwelgarwel / kerbalhealth Goto Github PK
View Code? Open in Web Editor NEWKSP mod that adds health management.
KSP mod that adds health management.
A user reported log spamming with lines like this:
3/15/2017 8:05:35 PM,KerbalHealth-DFWrapper,Attempting to Grab DeepFreeze Types...
On my wish list: Being able to choose an other resource than Ec as input to make the health module work!
@PART[mKitchenModule]
{
MODULE
{
name = ModuleKerbalHealth
inputPerKerbal = [email protected]
multiplyFactor = Loneliness
multiplier = 0.25
}
}
Load settings from a cfg file:
Maybe go for a Difficulty Window from the start instead (see how hard it is).
Add settings presets for difficulty levels: Easy, Normal, Moderate, High.
Certain kerbals can have higher or lower max HP. It may be affected by random events, professions, special experience or external mods (after API is ready).
AppLauncher button should open a window with a list of kerbals, their health status, condition and time to death/recovery (or better, to next condition). Green means OK or recovering; red means worsening.
Mostly for UI purposes, it makes sense to separate ModuleKerbalHealth's factor multiplier function from R&R (marginal health bonus) function. It means adding a new module class such as ModuleRecreation. It is a major, possibly savegame-breaking, change.
Use in-game day length instead of fixed 6 hours for event planning.
The health wouldn't be resetted when revert the flight.
Need to learn how it's done.
Add more factors affecting health, e.g. SOI, Kerbin low altitude, zero g, high g, EVA, loneliness, etc.
Add information about factors, events, etc. to the in-game KSPedia.
Add a window in the Editor where all the factors are listed and the player can enable or disable them for calculation purposes as well as health modules.
Question: should these settings save or be reset at scene change? I tend to support the reset (otherwise the player can forget that he/she changed the settings and be confused).
When a Tourist (real one, not a demoted crew member) is on board, he/she is not displayed in Health Monitor and, apparently, not tracked at all.
Both the Kerbals in my space station keep getting their health change figure switched from -1.40 to -12.50, which keeps giving me quite a scare! I've not been able to work out when it gets switched yet, but switching back to the station fixes it until it gets switched back again. I've noticed it a few times.
The affected vessel is Station One. I'm fairly sure it's not an EC problem (although I might be running out too). At least one situation where it seems to happen is leaving physics range in another vessel. I'm fairly sure there are others. The only change I've made to the mod's settings is making the assignment penalty zero, to make up for the lack of RT integration. The worst total penalty I've seem apart from this aberrant -12.5 is -6.5 on a fully crowded vessel with no enhancements.
I'm pretty sure that moving out of physics range is one reproducible situation (unless it's caused by a mod conflict or something, of course).
Patch for Kerbalism's life support parts.
For example i want to use this mod only in campaign. But i also have sandboxed save, where i testing some specific cases.
Also another scenario - sometimes i need to disable TAC LS in my campaign because it cause problems with 'rescue' contracts. So when i near kerbal, that i need rescue (near 30km), i disable TAC LS, get kerbal to my ship and then enable it again. Not big deal. And if KerbalHealth in future will have some bugs or problems like this, it will be a good solution.
What about adding some new feautures?
if I have TAC life support installed it is already setup to require EC per Kerbal. then when this mod is installed that EC usage goes into over drive.
you could make a Patch that detects if TAC is installed, and removes the EC per Kerbal, to avoid this double hit to the EC required for a kerbal's life support.
They recenter after close&open and when # of kerbals changes.
BaseCrammedChange * Crew / SeatsNumber
Check if possible to calculate it for packed vessels.
eX-R-S Activity Module
inflatable centrifuge from Porkjet's pack
Per request from TaxiService.
ModuleKerbalHealth doesn't use EC under timewarp, even in a focused vessel.
Allow freezed kerbals to maintain their health level infinitely.
Instead of going into coma (i.e. becoming Tourist) immediately after reaching HealthComaStart, a kerbal will have dice rolls every update. The same applies to death and other conditions.
When hiring new crew members in Astronaut Center, they don't appear in the Monitor list.
"Small bug report -- I've got a kerbal with NaN health and NaN delta-health. She was on orbit before I installed the mod though, so I guess that's the probably cause?"
Hypothesis: LastChange is undefined for assigned kerbals until they are loaded => HP also becomes undefined.
Make it an option (on by default if the Toolbar mod is installed).
Add metadata for AVC version checking.
Change it to Crowded or something like that.
Give information, for each kerbal, about active factors, their effects, factor multipliers, and marginal health modifiers: either as a tooltip, additional columns in the table or separate windows.
Consider using something like this for initializing the random seed:
private static int seed = (int)DateTime.UtcNow.Ticks;
private static System.Random rng = new System.Random(seed);
When a kerbal dies, following things happen:
Medibay has effect only when active and has medics/scientists
Habs have different effects depending on configuration
Inflatable parts have no effect until deployed
(maybe) Different specialties have different health (de)buffs
Medibays and/or medics affect chances of getting sick and recovering (need to modify Module)KerbalHealth and the severity of Sickness factor
Research KPBS' habs & related parts and incorporate them into KHKPBS.cfg.
Stock KSP includes g-force limits as an optional difficulty setting (though it is not clear how to calculate the exact tolerance for any given kerbal.) If a kerbal's tolerance is exceeded, they pass out temporarily - I believe the duration of unconsciousness is affected by the length and severity of tolerance exceedance.
This would be conceptually similar to the mod KeepFit, but it would incorporate KerbalHealth's holistic health tracking instead of just exercise.
May require a complete revamp of the system!
Health does not just "tick" at a pace defined by various factors. Instead, it can stabilize on a certain level.
Example: Jeb flew from Kerbin to a station in a small, crampy, ugly ship; his health has decreased. But on the station, he recuperates and his health improves, but probably not to 100% as it's still zero g and far from home.
It happens at least when using Take Command mod.
NullReferenceException: Object reference not set to an instance of an object
at KerbalHealth.MicrogravityFactor.ChangePerDay (.ProtoCrewMember pcm) [0x00000] in <filename unknown>:0
at KerbalHealth.KerbalHealthStatus.HealthChangePerDay () [0x00000] in <filename unknown>:0
at KerbalHealth.KerbalHealthStatus.Update (Double interval) [0x00000] in <filename unknown>:0
at KerbalHealth.KerbalHealthList.Update (Double interval) [0x00000] in <filename unknown>:0
at KerbalHealth.KerbalHealthScenario.UpdateKerbals (Boolean forced) [0x00000] in <filename unknown>:0
at KerbalHealth.KerbalHealthScenario.FixedUpdate () [0x00000] in <filename unknown>:0
First should see if they really need it.
AppLauncher button in VAB/SPH should open a Health Report window that will tell you how long your kerbals will last. Every kerbal displayed separately. May require updates and revamps when mechanics change.
Test if it works already, otherwise test with event handlers uncommented.
Integration with Kerbal Roster Manager would be cool as well, where the health decreases as the kerbals get older.
It's been reported that marginal bonuses don't work when the vessel is not loaded.
Create a PartModule that will affect health. Options: whole vessel or part crew only, effect (HP/day), EC consumption, EC consumption crew-scaled.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.