I noticed that the coolers are still defective, and still produce excess heat and use excess power when successfully hovering at the selected target temperature. I first posted this over a year ago in this thread. And because higher temperature on the exhaust side reduces cooler effectiveness, this can cripple coolers where it makes no sense, such as an array of coolers dedicated to a small room, with an exhaust duct that is not directly connected to outdoors, but should still be adequate, producing runaway and persistent problems. See my posts from before, including a working code snippet that can be copy+pasted into the vanilla core, to fix the problem. Fixes don't get any "cheaper" than that. (Well, it won't work now, some of the code has changed, the fix needs minor updating, for example compTempControl doesn't exist anymore.)
https://ludeon.com/forums/index.php?topic=174.msg154082#msg154082
https://ludeon.com/forums/index.php?topic=174.msg154259#msg154259
https://ludeon.com/forums/index.php?topic=174.msg156834#msg156834
Oh, and see this:
https://ludeon.com/forums/index.php?topic=18853.msg209266#msg209266
I wanted to reply there, but I could not, perhaps the thread was locked but it doesn't indicate so.
"(Originally I thought there was some actual issue with the coolers, but now I feel like this is too minor to warrant the effort of looking at!)"
There is an actual issue with the coolers.
"What you'll see happen in this save is the "hot" room will keep getting hotter, even though the outside temperature is below the cooler target temperature.
So to answer Tynan's questions:
1) 2 rooms, 1 cooler. Cooler cold side in 1 room, hot side in the other room. Outside temperature below cooler target temperature.
2) Hot room keeps getting hotter (but seems to stop once the heat dissipation is high enough to outdo the cooler)"
This is an issue! The title of the thread is not useful, and is addressed by Tynan in the last post, but the coolers do have an issue. When you have one or more coolers that are doing little to no actual cooling, they should not be exhausting full heat and using full power, as if they were producing maximum cooling. That is the error in the code, because they *do* operate at full exhaust heat and power, even when only pushing out a very, very small amount of cooling, which leads to all sorts of other issues and unintuitive inconsistencies, which can be dramatically bad in certain specific scenarios, especially with an array of coolers on the same room set to the same target temperature. Especially when you consider that higher temperature on the exhaust side will limit how much cooling they can do.
This problem has probably affected every player noticeably at least once, though they might not have known it was a bug. "Why aren't my coolers working, there should be enough of them." "Oh, exhaust is hot, well why is it so hot, I don't have to do very much cooling right now." "Why do I have to stagger the target temperatures of the cooler array to get them to work semi-efficiently? Why don't they work properly in the first place?" (The last one is only for those who realized that staggering targets will result in fewer dysfunctional units in an array of coolers.)
Perhaps a better version than my fix should go into the release, such as one which changes all coolers on the same room to operate at the same level, rather than some high, some idle, and one in between. And perhaps it should have a separate string for "in between", rather than saying high or full. I could implement those as well, but it would take a little more work than my current fix, which only modulates one cooler, because the game ordinarily processes all things and their effects in sequence, not in parallel, including coolers. So two coolers might be determined to be high, then one is intermediate, then two more are idle, for example. Which results in the same total effect, and same total power draw, but it would be better if each cooler displayed an average level when selected, instead of only one out of an array showing an intermediate draw, with the rest showing maximum or idle.
https://ludeon.com/forums/index.php?topic=174.msg154082#msg154082
https://ludeon.com/forums/index.php?topic=174.msg154259#msg154259
https://ludeon.com/forums/index.php?topic=174.msg156834#msg156834
Oh, and see this:
https://ludeon.com/forums/index.php?topic=18853.msg209266#msg209266
I wanted to reply there, but I could not, perhaps the thread was locked but it doesn't indicate so.
"(Originally I thought there was some actual issue with the coolers, but now I feel like this is too minor to warrant the effort of looking at!)"
There is an actual issue with the coolers.
"What you'll see happen in this save is the "hot" room will keep getting hotter, even though the outside temperature is below the cooler target temperature.
So to answer Tynan's questions:
1) 2 rooms, 1 cooler. Cooler cold side in 1 room, hot side in the other room. Outside temperature below cooler target temperature.
2) Hot room keeps getting hotter (but seems to stop once the heat dissipation is high enough to outdo the cooler)"
This is an issue! The title of the thread is not useful, and is addressed by Tynan in the last post, but the coolers do have an issue. When you have one or more coolers that are doing little to no actual cooling, they should not be exhausting full heat and using full power, as if they were producing maximum cooling. That is the error in the code, because they *do* operate at full exhaust heat and power, even when only pushing out a very, very small amount of cooling, which leads to all sorts of other issues and unintuitive inconsistencies, which can be dramatically bad in certain specific scenarios, especially with an array of coolers on the same room set to the same target temperature. Especially when you consider that higher temperature on the exhaust side will limit how much cooling they can do.
This problem has probably affected every player noticeably at least once, though they might not have known it was a bug. "Why aren't my coolers working, there should be enough of them." "Oh, exhaust is hot, well why is it so hot, I don't have to do very much cooling right now." "Why do I have to stagger the target temperatures of the cooler array to get them to work semi-efficiently? Why don't they work properly in the first place?" (The last one is only for those who realized that staggering targets will result in fewer dysfunctional units in an array of coolers.)
Perhaps a better version than my fix should go into the release, such as one which changes all coolers on the same room to operate at the same level, rather than some high, some idle, and one in between. And perhaps it should have a separate string for "in between", rather than saying high or full. I could implement those as well, but it would take a little more work than my current fix, which only modulates one cooler, because the game ordinarily processes all things and their effects in sequence, not in parallel, including coolers. So two coolers might be determined to be high, then one is intermediate, then two more are idle, for example. Which results in the same total effect, and same total power draw, but it would be better if each cooler displayed an average level when selected, instead of only one out of an array showing an intermediate draw, with the rest showing maximum or idle.