GarwelGarwel / Celsius

RimWorld mod adding realistic thermodynamics
4 stars 7 forks source link

Walk-in Freezers #9

Closed SpookyCongee closed 1 year ago

SpookyCongee commented 2 years ago

I've only done a little testing, but initial results in a ~20C ambient area under normal roofs (haven't tested under thick rock) seem to suggest walk-in freezers may be a significant problem. Double and triple thick walls seem to have little-to-no impact, and meaningful cooling seems limited to about a two or three tile radius before convection overwhelms the cooling power regardless of number of units or temperature set, if consistent in further testing, this may prove game-breaking for many. I just thought I'd throw this out there quickly before testing further. That said, I love the idea of the mod and hope it can develop further.

GarwelGarwel commented 2 years ago

The problem you are seeing is most likely due to the walls themselves heating the air in the freezer. When you build a wall or a door, its temperature is initially the same as surrounding air. It will gradually change, but since walls generally have much higher thermal capacity than air (e.g. 34 kJ/C compared to air's 1.2 kJ/C), they cool down (or heat up) very slowly and affect the temperature in the freezer in the process. Imagine being in a room with hot walls: the air will quickly heat up too. Building more walls actually makes it worse. But eventually, the walls will cool down if you provide enough cooling.

On the other hand, I may need to rebalance it, so that players don't have to build lots of coolers or wait for many days for their freezers to work. I'll see which solution works best (changing heat capacity and/or heat conductivity, increasing coolers' power or something else). Meanwhile, you may play with mod's settings to see if you can find a solution for your play style.

SpookyCongee commented 2 years ago

I've been able to run a better set of tests today (1.3.3242, no mods but Celsius and requirements) and am still finding it impossible to keep a 10x10 room below 0C. In the first test I made a series of 10x10 rooms from wood, metal, plasteel, and granite, both one layer and two layers thick with 2, 4, and then 6 coolers on a single wall venting outside. I gave them 10 days each to equalize. The wood room performed best but was unable to keep tiles below zero more than 1-2 tiles from the coolers. All other rooms were unable to maintain sub-zero temps in more than the tiles adjacent to the coolers.

In a second test, to isolate the environment further, I surrounded the first setup with another wall, isolating the exhaust from each bank of freezers (walled in, no roof) and then cooled the new larger exterior building to 21C. The cooling power of each room remained roughly the same, though in this case the wood room performed slightly better.

In a third test I tried the same setups using 3x3 rooms, with two layers of temperature regulated exterior walls/rooms, the results were comparable, even these modestly sized rooms, sufficiently isolated from the outside, were unable to remain below freezing.

These tests were all using the default settings. I'd imagine that if the defaults were preventing people from being able to store and keep food frozen/refrigerated, this mod might not see the use it surely deserves (as it sounds like a great deal of effort went into its creation). However, in still further testing I have yet to find any combination of mod settings that would allow for consistent sub-zero cooling in moderate ambient temperatures. If the modeling is real-world accurate (which I have no reason to believe it isn't), perhaps what may be required is an additional mod that allows for special insulated walls and roofs (or some other relatively simple workaround). Alternatively, perhaps a true real-world model needs some tailoring to account for the fictionalized game (Rim)world. In any case, as I said in my first comment, I love the idea of this mod and can see its environmental benefit in gameplay, so I hope there's a reasonably low-friction way to incorporate it into my standard mod pool.

(I wonder if Tynan has any thoughts on this and why there wasn't this type of modeling incorporated into the game initially?)

Beetlecat commented 2 years ago

It may be as simple as patching cooler output to to be much higher to get closer to the vanilla experience, so that it's not impossible to create a walk-in cooler early game. That being said, the same wall coolers for general purpose rooms would then create spikes of very cold air? Hopefully not right over someone's bed. But maybe this is dependent on whether they're in high-power mode or not? I'm not sure how coolers in-game function... to suggest what the method of "raising their BTU ratings" would be. :D

I likewise really like this mod and how it does what it does, but agree that it's going to frustrate many if they just want a cooler (pun intended) way to manage and visualize heat in their bases.

SpookyCongee commented 2 years ago

The vanilla cooler, when set to -20C creates a 1-tile zone of about -30C and then it drops off considerably, 0C at 1-tile, 8-12C at 2-tiles, ambient or higher at 3-tiles, so I'm not sure increasing their power would solve the problem. My tests seem to indicate that the heat generated by the coolers themselves will always overwhelm their cold output.

GarwelGarwel commented 2 years ago

Thank you everyone who did the testing. I've done a rebalance pass. The issue should be resolved or made much better in the latest release; check it out.

GarwelGarwel commented 2 years ago

Nevertheless, bear in mind that this mod's mechanics are very different from vanilla's (which basically just changes temperature in the room by HeatPush / CellCount) and no amount of tweaking with values will yield the same results as vanilla. So you'll need to have different solutions anyway.

Beetlecat commented 2 years ago

Thank you everyone who did the testing. I've done a rebalance pass. The issue should be resolved or made much better in the latest release; check it out.

Awesome. I'll definitely check it out today when I get a chance to play that same colony again. Vanilla is certainly hyper-exaggerated to just plopping a single cooler in a room cranked to 11 -- but there's certainly a balance to be found between that and a punishing 'realism' that won't allow for basic needed practices. Like someone suggested, custom wall types to provide better insultation and "quicker" cooldown could be in order, or better purpose-built icebox/coolers or pit-storage to better emulate how we used to keep food cool... :D

SpookyCongee commented 2 years ago

Nevertheless, bear in mind that this mod's mechanics are very different from vanilla's (which basically just changes temperature in the room by HeatPush / CellCount) and no amount of tweaking with values will yield the same results as vanilla. So you'll need to have different solutions anyway.

What's interesting about this mod is exactly that, having to find new solutions to environmental problems, it seems like a great way to alter the gameplay. All I was reporting was that in my (somewhat limited) experience, there were no solutions to the food storage problem. In survival 101, step one is securing a stable food supply, so that seemed like a red flag for me. But I love the idea of your mod having implications for all the basic survival elements.

I haven't had a chance to test the update but will do so ASAP and report back if I come across any issues. Thank you for your efforts!

*edit (PS - I hadn't looked at the Steam Workshop thread until just now...hang in, I think you'll get there!)

SpookyCongee commented 2 years ago

I've had a chance to do a little bit of testing today and things have definitely improved!

However, whether this is helpful or not, I have discovered some interesting quirks. Wood still seems to be a superior insulator to all other materials tested with the smallest temperature drop off over distance, steel is the worst by a considerable margin. A wooden walled 10x10 room shows about an 8C variance from one side of a room to the other (ignoring the tiles adjacent to the cooler source which are much colder), while the whole room average stays at roughly the temperature set by the coolers. A steel walled 10x10 room sees closer to a 13C variance but is unable to maintain sub-zero temperatures more than 5 tiles from the (-20C) cooler source. But what's interesting is that if I surround a single layer wall of steel with wood there is essentially no meaningful change (even given 10+ days) to the interior room's temperature, the variance and temps remain high. Surrounding a wood-walled room with a steel wall sees no significant improvement or degradation of the internal temps there. I imagine this isn't a desirable behavior. So, the 2-layer thick wall issue may be something you want to consider/look into when tweaking the model in any future mod update.

I've also done a little experimenting with heat sources and find that the radiant heat from a vanilla cooler will not raise an adjacent wall's temperature even in an entirely sealed room. This might just be a result of the tradeoff required to get walk-in refrigerators working, but I thought it might be worth mentioning.

I don't think this requires anymore dedicated testing on my part but will report any issues I come across in a Celsius mod enabled playthrough. Once again, thank you for your efforts in making this mod, the Rim is all the richer for it!

Beetlecat commented 2 years ago

I've also done a little experimenting with heat sources and find that the radiant heat from a vanilla cooler will not raise an adjacent wall's temperature even in an entirely sealed room. This might just be a result of the tradeoff required to get walk-in refrigerators working, but I thought it might be worth mentioning.

You mean like the walls to either side of the cooler? If the exhaust / heat side is in an enclosed room, that room does heat up though, right?

SpookyCongee commented 2 years ago

Sorry, I guess that wasn't clear. If you put a vanilla heater in a 1x1 enclosed (and roofed) room the walls don't seem to heat up. If you attach the same 1x1 room adjacent to a cooled room/walk-in freezer, there seems to be no radiant heating of the walls in any of the four walls. In theory, I'd expect the room (and walls) to get much hotter than the heater temp, but in practice that's not the case.

However, to answer your question Beetlecat, yes, the heat exhaust side of a cooler will heat an adjacent closed room steadily and significantly. It depends on how long the cooler is on high power but is seems to be add about 12-15C to ambient for up to 8-10 tiles (room shape/size may have some effect but I didn't test that) after a few days of ordinary use. (all testing was done with stock mod settings)

GarwelGarwel commented 2 years ago

Hopefully this issue got better since the last release?

GarwelGarwel commented 1 year ago

This problem should have been resolved, to a reasonable extent, in Celsius 2.0. Closing.