TAC Life Support

TAC Life Support

347k Downloads

Fry or Freeze your Kerbals ...

DBowmanUDA opened this issue ยท 10 comments

commented

How about a thermal mechanic? I know I often let capsule inside temp get lethally high, and never worry that the pilots might freeze out at Jool.

The game has some built in thermal management so adding non-leathal range checks should be fairly simple. I'm not sure the built in thermal is 'good enough' to make it 'fun' - but in real life it sure a big factor.

commented

From the Forum thread:
MajorTom said:

strange what probe/rovers and other unmanned things in KSP not freezing to death without electricity. Internal temperature almost not used thing.

Maybe add something for this in future in TAC-LS?

----

soory for my poor english

JPLRepo said:
Great Idea. But I'm not sure Probes/rovers. I definitely think it's a good idea. But not sure it fits in the scope of this mod which is a Life Support mod.

MajorTom said:
what is "life".. the meaning of this word..? the life of kerbals or life of spacecraft... i just look wider at the name for mod :)

ps: even NASA is used words like "dead" for unmanned things (not unoperable or so on). http://www.space.com/22884-nasa-deep-impact-comet-probe-dead.html So IMHO the "life" also is not wrong word for human created things

commented

So the question is. Should TAC LS include Thermal mechanic for both Crewed and probe parts?

commented

nice idea - NASA seems to bundle environmental control with life support into ECLS, but they might mean it 'just for people'. JPLRepo - I couldn't see the link you were referencing.

commented

Ah the link was to this github item. Fixed text above.

commented

My assumption has tended to be that parts, crewed and uncrewed alike, are engineered to tolerate their heat tolerances, so to speak. Perhaps EC consumption on crewed parts should rise dramatically when the nominal internal temperature is very high?

commented

I put together a thermal mechanic for crewed pods today for the RasterPropMonitor replacement I'm working on. I thought it might make more sense as an add-on to TAC Life Support, and lo-and-behold, here's a feature request for something similar.

What I did was extend the stock ModuleCoreHeat class to allow a) configuring how much heat (energy) each Kerbal contributes. and b) how much energy the climate control mechanism can add or remove.

With this implementation, the ModuleCoreHeat's core temperature represents the pod's pressurized interior temperature, and the part's internal temperature represents the temperature of the interior of the pod, outside the pressurized section. Heat transfers between the two (based on the parameters from ModuleCoreHeat).

When heat needs added to the system, the module converts EC directly to joules (assuming a 1EC = 1kJ conversion). When heat needs removed, the module uses the same conversion, but instead of the energy disappearing, it's added to the skin of the pod (heat exchangers or some other handwave).

I can upload the code I have to GitHub or DropBox for examination if you're interested. It needs a bit more work before it's ready for general use.

commented

@MOARdV that sounds awesome. Given this feature request sits here as a request and in my head as a very similar idea to what you've already implemented, while I look at my long list of ToDos any contribution is more than welcome. Very much appreciated mate. Send however it suits you, that sounds like it definitely gives this request a head start. Cheers!

commented

I've beat on the code some more, and I think the ModuleCoreHeat mechanism isn't going to cut it, since it has a few quirks that don't quite feel right:

  • the "core" has the same thermal mass as the interior, although it doesn't add mass to the vessel.
  • it is thermally isolated, except for the many variables in ModuleCoreHeat, but
  • the thermal transfers in ModuleCoreHeat all appear to be based on absolute energy levels, not relative energy levels, so the heating / cooling requirement is constant, depending on whether the core is cooler than / warmer than the interior.

The latter issue is the biggest one I see - if I want the interior to maintain 293K, with the configs I've posted (below), I need 0.6 EC/s, regardless of how hot or how cold the interior (outside the core) is. It may be that I can get that effect by tweaking the ModuleCoreTemp fields better, but they're black box values, and they don't seem to depend on the relative energy levels.

I think a better approach would be a bespoke system that directly affects the part's interior by adding / removing / transferring energy. I plan on experimenting with that next, but the code as it stands now is zipped on DropBox.

commented

Okay, here's take 2. It's not supremely fancy, but I think it provides reasonable results.

commented

nice idea to make ksp more realistic