Jump to content

[1.12.x] SystemHeat - a replacement for the CoreHeat system (October 9)


Nertea

Recommended Posts

1 hour ago, Nertea said:

I'd test it in operation. That icon is probably a red herring, the cross-loop transfer is a bit tacked on now, I will look into it. 

The design did work fine in operation. For now I'll just assume that the red thermometer on a heat exchanger is meaningless.

Link to comment
Share on other sites

So, messing around with this in the VAB, and hit a slight issue with having more than 3 loops: The list won't scroll. It twitches like it's trying, but doesn't go any further down.

Also, the reason for the amount of loops is :1 reactor separated off with it's own cooling, then an ISRU and a drill, each with it's own loop feeding into a shared cooling loop that sinks enough heat for both, but each is at their preferred temperature. 

Changing the order I've split them off has helped, pushing the known to be stable reactor loop to the bit that can't be seen, but it's still an issue worth bringing up either as a heads up or to work out where I dun goofed. 

Link to comment
Share on other sites

6 hours ago, Dep_Opt said:

So, messing around with this in the VAB, and hit a slight issue with having more than 3 loops: The list won't scroll. It twitches like it's trying, but doesn't go any further down.

Also, the reason for the amount of loops is :1 reactor separated off with it's own cooling, then an ISRU and a drill, each with it's own loop feeding into a shared cooling loop that sinks enough heat for both, but each is at their preferred temperature. 

Changing the order I've split them off has helped, pushing the known to be stable reactor loop to the bit that can't be seen, but it's still an issue worth bringing up either as a heads up or to work out where I dun goofed. 

I don't know why this is happening, banged my head against it for an hour this morning to no avail, but I'll keep looking at it. 

Sounds like a nice setup though, looks like that part is functioning as intended and is useful!

9 hours ago, mikegarrison said:

The design did work fine in operation. For now I'll just assume that the red thermometer on a heat exchanger is meaningless.

Can you post a picture of your specific setup? I tried to reproduce this this morning and couldn't with a simple set of loops.

Link to comment
Share on other sites

Easier to describe it. I don't have a photo-sharing account set up anywhere.

----------

Loop 2 is a drill with a heat exchanger pumping heat to loop 0 at +400.

Loop 1 is an ISRU 250 with a heat exchanger pumping heat to loop 0 at +300.

Loop 0 is a MX-1 reactor with four XR-500 radiators.

-----------

The simulator says everything should be working, and in the field it does work. But in the simulator the two heat exchangers both have a red and black thermometer that faintly pulses. I thought that was supposed to indicate a problem.

(It seems to be doing the exact same job as @Dep_Opt is doing, although I went for the slightly simpler option of just pumping all the heat to one set of radiators instead of using two sets of radiators.)

Edited by mikegarrison
Link to comment
Share on other sites

OK, so I'm not 100% sure if this is a bug with SystemHeat or FFT but my Fresnel engine isn't getting cooled at all by my radiators. They are both set to the same loop and in the VAB it says I have more than enough heat rejection and in flight the overlay UI says they are on the same loop but when I activate the engine I get 0 heat rejection which makes the engine almost instantly overheat. It also persists through a save/reload although for some reason after reloading my loop ID changes from 1 to 3 for the engine and my radiators.

C4YCIF1.png

Here is my KSP.log after I restarted the game and tried it again with the same results as described above. Let me know if there is anything I can do to help troubleshoot.

Link to comment
Share on other sites

On 1/29/2021 at 11:17 PM, VCamProbe said:

I seem to have a bug or something, everytime I timewarp and I look at the loops every radiator/cooler/heat exchanger has *not found* Even after not touching the loop id and leaving it at zero does the same thing. anyone got a fix?

Where do you see this not found? Logs and screenshots please.

1 hour ago, CDSlice said:

OK, so I'm not 100% sure if this is a bug with SystemHeat or FFT but my Fresnel engine isn't getting cooled at all by my radiators. They are both set to the same loop and in the VAB it says I have more than enough heat rejection and in flight the overlay UI says they are on the same loop but when I activate the engine I get 0 heat rejection which makes the engine almost instantly overheat. It also persists through a save/reload although for some reason after reloading my loop ID changes from 1 to 3 for the engine and my radiators.

 

Here is my KSP.log after I restarted the game and tried it again with the same results as described above. Let me know if there is anything I can do to help troubleshoot.

That's just this bug: https://github.com/post-kerbin-mining-corporation/FarFutureTechnologies/issues/157. It'll be fixed next update.

 

Link to comment
Share on other sites

3 hours ago, Nertea said:

Where do you see this not found? Logs and screenshots please.

That's just this bug: https://github.com/post-kerbin-mining-corporation/FarFutureTechnologies/issues/157. It'll be fixed next update.

 

I figured out the issue, if you change the loops while in flight at all you gotta completely restart ksp, seems like changing loops during flight makes it bug out.

Link to comment
Share on other sites

How would a systemheat config look for an engine that can switch between 2 modes? say, that Project Eeloo bimodal nuclear air and nuclear space thing in Near Future Aeronautics (i think).  Would you just have too add: 

"engineModuleID = Shcramjet"

 

(with "Schramjet" being whatever the modes name is) too the ModuleSystemHeatEngine ?

Link to comment
Share on other sites

23 hours ago, 123nick said:

How would a systemheat config look for an engine that can switch between 2 modes? say, that Project Eeloo bimodal nuclear air and nuclear space thing in Near Future Aeronautics (i think).  Would you just have too add: 


"engineModuleID = Shcramjet"

 

(with "Schramjet" being whatever the modes name is) too the ModuleSystemHeatEngine ?

More or less, yeah. You would have 2 ModuleSystemHeatEngine instances, one tied to each engine.  The exception to this is if it's a fusion or fission engine, where that support is baked into the appropriate modules.

On 1/31/2021 at 3:05 AM, VCamProbe said:

I figured out the issue, if you change the loops while in flight at all you gotta completely restart ksp, seems like changing loops during flight makes it bug out.

I can't reproduce this, but maybe it's because I fixed it with the other bugs. Try updating to 0.3.7.

SystemHeat 0.3.7

  • Fixed a NRE on deletion of parts in the editor
  • Fixed scrolling of UI loop list
  • Fixed heat exchangers always showing as overheated in overlay
  • Fixed converter module not actually simulating heat in the VAB when set to simulate
  • Fixed more bugs in generic converter patch (PocketBrotector)

 

 

 

 

Link to comment
Share on other sites

  • 2 weeks later...

Editing this down because most of what I had written became moot when I did more testing. Ugh.

Long story short: When I try to reject heat from an SRB or from reentry/really fast flight in atmo, I seem to need a crazy amount of radiators, but I can't see where to find out how many. Is there a way of knowing how much total heat is being applied to a vessel while in flight at a given point in time, so I can test and see how much cooling would be needed for a hypersonic craft X at speed Y, or a reentering craft, or a craft with too many SRBs or something? (As opposed to numbers/simulations in the editor that seem to account for stuff like reactors/drills/etc.)

Also - when testing with Heat Control to understand better how SystemHeat works, I noticed (on the launchpad)  that graphene radiators had 'cooling efficiency' (or similar phrasing) at ~ 28%, while large stock extending radiators had ~88% (in atmosphere). Is this a function of the heat of the SRBs not being 'hot enough' for the high-temp radiators? ~30 large deployable stock radiators successfully cooled three kickback SRBs (infinite fuel on) I used for testing craft/engine heat rejection, but even 80 of the graphene radiators couldn't stop them from overheating...

EDIT: should perhaps note that I'm also using the extra SystemHeat patches, if that's important...

Edited by AccidentalDisassembly
Link to comment
Share on other sites

On 2/13/2021 at 3:02 PM, AccidentalDisassembly said:

Long story short: When I try to reject heat from an SRB or from reentry/really fast flight in atmo, I seem to need a crazy amount of radiators, but I can't see where to find out how many. Is there a way of knowing how much total heat is being applied to a vessel while in flight at a given point in time, so I can test and see how much cooling would be needed for a hypersonic craft X at speed Y, or a reentering craft, or a craft with too many SRBs or something? (As opposed to numbers/simulations in the editor that seem to account for stuff like reactors/drills/etc.)

SystemHeat focuses on heat from "systems", like reactors, etc. Reentry heat is a completely different problem  and isn't handled by this mod. I have not disabled any stock cooling functions so the weird bit where you can use radiators to reject reentry heat still works.

On 2/13/2021 at 3:02 PM, AccidentalDisassembly said:

Also - when testing with Heat Control to understand better how SystemHeat works, I noticed (on the launchpad)  that graphene radiators had 'cooling efficiency' (or similar phrasing) at ~ 28%, while large stock extending radiators had ~88% (in atmosphere). Is this a function of the heat of the SRBs not being 'hot enough' for the high-temp radiators? ~30 large deployable stock radiators successfully cooled three kickback SRBs (infinite fuel on) I used for testing craft/engine heat rejection, but even 80 of the graphene radiators couldn't stop them from overheating...

Yes efficiency is a product of loop temperature. Lower temp radiators like stock ones cap out at lower temp so they hit higher efficiency with lower temp systems.

Link to comment
Share on other sites

54 minutes ago, Nertea said:

SystemHeat focuses on heat from "systems", like reactors, etc. Reentry heat is a completely different problem  and isn't handled by this mod. I have not disabled any stock cooling functions so the weird bit where you can use radiators to reject reentry heat still works.

Yes efficiency is a product of loop temperature. Lower temp radiators like stock ones cap out at lower temp so they hit higher efficiency with lower temp systems.

Makes sense, thanks. Since reentry / speed in atmosphere isn't the same system, then, I assume it's probably not possible to see 'this many kW of heat are being applied to the craft / to this part' kinds of stats that are available with stuff on SystemHeat loops - too bad! Insane as it is, it'd be fun to know (up front) roughly how much it would take to make a radiator-packed "just point it at the planet" reentry pod and/or an orbital-speed-in-atmosphere plane. Trial and error, here I come...

Edited by AccidentalDisassembly
Link to comment
Share on other sites

There seems to be several NullReferenceExceptions popping up frequently that's related to this mod:

Spoiler

[LOG 00:05:15.368] [SystemHeat][SystemHeatOverlay]: No loops, destroying overlay
[EXC 00:05:15.370] NullReferenceException: Object reference not set to an instance of an object
    SystemHeat.UI.SystemHeatOverlay.LateUpdate () (at <c7392b4010df46a7af1d4bc1aaa6002c>:0)
    UnityEngine.DebugLogHandler:LogException(Exception, Object)
    ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
    UnityEngine.Debug:CallOverridenDebugHandler(Exception, Object)

Spoiler

[EXC 01:04:54.192] NullReferenceException: Object reference not set to an instance of an object
    SystemHeat.UI.SystemHeatUI.Update () (at <c7392b4010df46a7af1d4bc1aaa6002c>:0)
    UnityEngine.DebugLogHandler:LogException(Exception, Object)
    ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
    UnityEngine.Debug:CallOverridenDebugHandler(Exception, Object)

[LOG 01:04:54.193] 2/16/2021 1:04:54 AM,KerbalAlarmClock,Active Vessel unreadable - resetting inqueue flag
[LOG 01:04:54.549] KerbalEngineer -> FlightEngineerCore->OnDestroy
[LOG 01:04:54.549] KerbalEngineer -> ActionMenu->OnDestroy
[LOG 01:04:54.550] KerbalEngineer -> ActionMenu->Awake
[LOG 01:04:54.550] KerbalEngineer -> FlightEngineerCore->Awake
[LOG 01:04:54.550] KerbalEngineer -> ActionMenu->Start
[LOG 01:04:54.550] KerbalEngineer -> FlightEngineerCore->Start
[LOG 01:04:54.682] [SystemHeat][SystemHeatOverlay]: Building a new overlay for loop 0
[EXC 01:04:54.683] NullReferenceException: Object reference not set to an instance of an object
    SystemHeat.UI.SystemHeatUI.get_OverlayMasterState () (at <c7392b4010df46a7af1d4bc1aaa6002c>:0)
    SystemHeat.UI.SystemHeatOverlay.LateUpdate () (at <c7392b4010df46a7af1d4bc1aaa6002c>:0)
    UnityEngine.DebugLogHandler:LogException(Exception, Object)
    ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
    UnityEngine.Debug:CallOverridenDebugHandler(Exception, Object)
[EXC 01:04:55.606] NullReferenceException: Object reference not set to an instance of an object
    SystemHeat.UI.SystemHeatUI.Update () (at <c7392b4010df46a7af1d4bc1aaa6002c>:0)
    UnityEngine.DebugLogHandler:LogException(Exception, Object)
    ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
    UnityEngine.Debug:CallOverridenDebugHandler(Exception, Object)

Here's the entire .log file: https://drive.google.com/file/d/1g8Q1Qz31ZVFxLmdrPtYcT0feXlJdr6cR/view?usp=sharing

(I'm using the latest version of KSP and SH on Windows 10)

Has anyone else encountered this?

Edited by Apelsin
Link to comment
Share on other sites

I am liking this mod quite a lot. I am also quite looking forward to the electricity system being converted to kW as well (as I assume that is the plan lol).

I am using this mod, plus all your other Near Future mods, and there are a couple things I noticed so I just wanted to give some feedback on them:

  • Had one situation in the VAB where the total heat loop said I was 5 thermal kW over, but adding more radiators didn't make a difference, yet when I ran it in the simulator in the VAB at various warp multipliers nothing started overheating. I ended up just putting things into 2 separate heat loops and it stopped doing that. Possibly too much heat in 1 loop was causing it, but the simulator didn't seem to care though.
  • The Near Future nuclear reactors don't show E/C output, just kW. I figured out that 1 EC = 1 kW myself, as it shows the EC output when actually in flight, but the screen that Near Future adds that shows electrical usage does not show the reactor as generating EC.
  • The drills don't show as consuming any EC in that same Near Future screen.
  • The drills now consume more EC than the game says they will.
  • Nothing has passive radiation cooling. If I turn off my radiators my nuclear reactor and drills will apparently stay heated up and ready to go at the same temperature years later.

I assume you are already aware of these things, but figured it would help someone else if they come across similar things while they are trying this out.

 

EDIT:
Struck out that one point, that was my own reading comprehension failure.

Edited by MechBFP
Link to comment
Share on other sites

On 2/15/2021 at 6:59 PM, AccidentalDisassembly said:

Makes sense, thanks. Since reentry / speed in atmosphere isn't the same system, then, I assume it's probably not possible to see 'this many kW of heat are being applied to the craft / to this part' kinds of stats that are available with stuff on SystemHeat loops - too bad! Insane as it is, it'd be fun to know (up front) roughly how much it would take to make a radiator-packed "just point it at the planet" reentry pod and/or an orbital-speed-in-atmosphere plane. Trial and error, here I come...

You're probably not going to be able to do this, stock radiators do some weird self-disabling in certain situations that is player-transparent. 

20 hours ago, MechBFP said:
  • Had one situation in the VAB where the total heat loop said I was 5 thermal kW over, but adding more radiators didn't make a difference, yet when I ran it in the simulator in the VAB at various warp multipliers nothing started overheating. I ended up just putting things into 2 separate heat loops and it stopped doing that. Possibly too much heat in 1 loop was causing it, but the simulator didn't seem to care though.
  •  

If you can make this situation for me and take a screenshot I can look into it.

20 hours ago, MechBFP said:
  • The Near Future nuclear reactors don't show E/C output, just kW. I figured out that 1 EC = 1 kW myself, as it shows the EC output when actually in flight, but the screen that Near Future adds that shows electrical usage does not show the reactor as generating EC.

Yeah I do know that the Systems Manager window needs some fixes to handle some things.

20 hours ago, MechBFP said:
  • Nothing has passive radiation cooling. If I turn off my radiators my nuclear reactor and drills will apparently stay heated up and ready to go at the same temperature years later.

I guess that's true and I should probably add some kind of decay.

On 2/16/2021 at 10:18 AM, Apelsin said:
  • Nothing has passive radiation cooling. If I turn off my radiators my nuclear reactor and drills will apparently stay heated up and ready to go at the same temperature years later.

I have encountered one but not the other. 

Link to comment
Share on other sites

I'm getting messages in my logs that seem related somehow to SystemHeat - however, it's a very modded install, and there are lots of other issues (apparently, because... problems). Trying to see what's causing what. Is this meaningful?

Log is here (sorry, it is enormous; many issues): https://www.dropbox.com/s/bp4we0wbf9cx1wf/KSPlog_SysHeatOrSomethingElse.log?dl=0

What I think is possibly relevant is stuff like this - only because this appears repeatedly in the middle of the string of SystemHeat messages about 'Vessel MODIFIED' / building heat loops:

Quote

etc.
[LOG 15:14:38.303] [SystemHeat][SystemHeatSimulator]: Building heat loops from 0 ModuleSystemHeat modules
[LOG 15:14:38.303] [SystemHeat][SystemHeatEditor]: Vessel MODIFIED
[LOG 15:14:38.303] [SystemHeat][SystemHeatSimulator]: Building heat loops from 0 ModuleSystemHeat modules
[EXC 15:14:38.469] ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
    System.ThrowHelper.ThrowArgumentOutOfRangeException (System.ExceptionArgument argument, System.ExceptionResource resource) (at <ad04dee02e7e4a85a1299c7ee81c79f6>:0)
    System.ThrowHelper.ThrowArgumentOutOfRangeException () (at <ad04dee02e7e4a85a1299c7ee81c79f6>:0)
    Part.OnCopy (Part original, System.Boolean asSymCounterpart) (at <2afc64dea36946459d4707808bdac511>:0)
    EditorLogic.<SetupFSM>b__190_23 () (at <2afc64dea36946459d4707808bdac511>:0)
    KerbalFSM.RunEvent (KFSMEvent evt) (at <2afc64dea36946459d4707808bdac511>:0)
    KerbalFSM.updateFSM (KFSMUpdateMode mode) (at <2afc64dea36946459d4707808bdac511>:0)
    KerbalFSM.UpdateFSM () (at <2afc64dea36946459d4707808bdac511>:0)
    EditorLogic.Update () (at <2afc64dea36946459d4707808bdac511>:0)
    UnityEngine.DebugLogHandler:LogException(Exception, Object)
    ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
    UnityEngine.Debug:CallOverridenDebugHandler(Exception, Object)
[LOG 15:14:38.483] [SystemHeat][SystemHeatEditor]: Vessel MODIFIED
[LOG 15:14:38.483] [SystemHeat][SystemHeatSimulator]: Building heat loops from 0 ModuleSystemHeat modules
etc.

EDIT: May or may not have tracked down potential culprits (Environmental Visual Enhancements --> _BuildManager.dll, or possibly Automated Science Sampler... or... not sure yet).

Edited by AccidentalDisassembly
Link to comment
Share on other sites

I'm trying to make a patch for some NTR's from unsupported mods, is it possible to copy paste  an existing patch and just change what's in @PART[] or will that break waterfall or anything else?

Edited by zakkpaz
Link to comment
Share on other sites

19 hours ago, zakkpaz said:

I'm trying to make a patch for some NTR's from unsupported mods, is it possible to copy paste  an existing patch and just change what's in @PART[] or will that break waterfall or anything else?

Should be ok, but you should be aware that the NTR support is in a meh place right now and I do want to make improvements.

On 2/17/2021 at 4:36 PM, AccidentalDisassembly said:

I'm getting messages in my logs that seem related somehow to SystemHeat - however, it's a very modded install, and there are lots of other issues (apparently, because... problems). Trying to see what's causing what. Is this meaningful?

You have a vast quantity of errors in your log, I'm not sure I can glean anything from it at this point.

Link to comment
Share on other sites

17 hours ago, Nertea said:

You have a vast quantity of errors in your log, I'm not sure I can glean anything from it at this point.

Thanks for taking a look - I managed to get rid of many of the errors, at least for now, but SystemHeat is still in there throwing exceptions at times. I gather that this may be because of other errors, but figured I'd pass along a new log just in case it's useful. Player.log this time: https://www.dropbox.com/s/8o45mj9kcm5y0jn/PlayerLog_SysHeatAndOthers.log?dl=0

Sorry, that log is also gigantic.

Link to comment
Share on other sites

Can someone give me a tutorial o this? nert says the stock heat system is "Confusing" but i have no idea how to work this. all i've been doing is slapping radiators, heat exchangers and coolant tanks on to the ship but when i enable "Ignore max temp" it still overheats. my square brain is fery vconfused

Link to comment
Share on other sites

34 minutes ago, Souptime said:

Can someone give me a tutorial o this? nert says the stock heat system is "Confusing" but i have no idea how to work this. all i've been doing is slapping radiators, heat exchangers and coolant tanks on to the ship but when i enable "Ignore max temp" it still overheats. my square brain is fery vconfused

Mr. suiptom. 
There is a tool in the VAB that will show you how much Cooling capacity you need. 
Make sure you read the wiki too

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...