Jump to content

Nonsensical Survival Strategy


LadyWYT

Recommended Posts

So I'm playing in a cold climate and it's wintertime, and I seem to have stumbled across a strategy that really shouldn't work, but does somehow. 🤣 Now the main drawback of exploring during the winter is the cold--even if you're dressed warmly you'll need to stop every so often and build a fire to warm up or find a trader cart/cave to take shelter in. The cold situation gets even more serious when soaking wet...or so I thought. Against my usual logic, I dove into a lake and swam across to save some travel time, rather than trying to walk around. As it so happens, I had the character window open while swimming and noticed the body temperature slowly ticking up rather than down, despite being immersed in freezing cold water in the dead of winter. 🤔 Now it doesn't seem to matter whether or not I'm actually swimming, just as long as the water is deep enough to get the character wet. As soon as the character leaves the water, body temperature starts dropping.

It's definitely something I expect to be fixed in a future update, but for now it's a funny way to deal with the cold! 😁 Or maybe this particular seraph is just part polar bear, who knows. It makes about as much sense as putting the empty bucket underwater and having it remain empty.

  • Haha 2
Link to comment
Share on other sites

1 hour ago, Thorfinn said:

Wow. Good catch. Never noticed it.

I mean, I never would've noticed either if I hadn't taken a shortcut and been looking at character details while swimming. Knowing it's a thing now, I wonder how badly it breaks an actual polar survival challenge...probably by a good margin, I'd wager.

  • Like 1
Link to comment
Share on other sites

It's a big deal. There are a lot of cold weather circumstances, especially in Snowball worlds, where it would be awesome to take a shortcut through the lake, but I've always thought that was a bad idea.

Thinking back on it, maybe that's why I came out OK the times I had to jump in the sea and dive under the polar bears.

  • Like 1
Link to comment
Share on other sites

Well, water temperature is never less than 0 (if not supercooled), thus if game is using just temperature to calculate temperature, results are as described.

Generally whole body temperature implementation is wrong, because is using temperature instead of heat energy - these are distinctive things. I recall some TFC clones using similar simplified "physics" of body temperature - it was annoying, just "oh there is one degree colder, guess I will die". I was working on body temperature patch for original TFC, using concept of heat, but TFC was discontinued. I can elaborate more in suggestion topic.

Link to comment
Share on other sites

2 hours ago, Wahazar said:

water temperature is never less than 0

IRL, yes. Just didn't realize that was true in the game, too. Thinking on it a bit, it does explain why ice in the game forms as it does, some sort of weighted average of it's neighbors. Heat capacity must be involved to some degree because snow stays on the ground before ice forms.

 

2 hours ago, Wahazar said:

Generally whole body temperature implementation is wrong, because is using temperature instead of heat energy - these are distinctive things.

Right. Heat transfer is a flux quantity. But it's not as quick to model as a weighted average of itself and it's 26 immediate neighbors. When we are talking iterating that over view distances of thousands of blocks, that's bad enough with a straightforward formula. let alone if you start introducing several real number exponents.

If anyone is interested, here is an incredibly simplified way of estimating heat transfer in the special case of turbulent flow (which is generally the case) in a smooth tube (which, obviously, this is not.)

Link to comment
Share on other sites

There is no needs to complex calculation of heat transfer, just simply energy_loss_per_time_unit = temperature_difference*heat_conduction (were heat_conduction depends on quality of clothes and its moisture, maybe also grain+diary nutrition bars should add some fatty skin insulation).

Also radiation from light sources (intensity of red component of light) should be added. 

I was rather thinking about metabolic heat generation, if one is running, there is more heat produced, than standing. Also shivering would be not just warning, but should add some heat. Of course if food bar is not depleted. So generally body temperature would be more immersive, not just simply death counter. 

Heat calculation is not CPU consumer due to large time scale (so can be ticked from time to time, not every tick).

Link to comment
Share on other sites

Certainly it could be done that way, though that would not be much more realistic. If you just averaged around the 26, because of the difference in heat capacity between water/seraph and air (air is about a quarter that of water), your simplified model would have the seraph be a major heat source, particularly if he's not moving. For every degree your seraph's temperature dropped, the air temperature of those 26 blocks would increase about 1/6th of a degree. And, obviously, fire is going to end up with completely unrealistic effect on the surroundings. 1m away from your copper crucible would be a delta T of around 50C, so 70-some C at room temperature? Gonna need some longer tongs.

The model used in the game works quite well for creating ice on the top of lakes. It works well for metal working and clay firing. It just doesn't do all that well at modeling submerged bodies.

I get that temperature doesn't have to be recalculated all that often, but still, a 1k view distance is a parallelpiped, 2k * 2k * 320 or whatever you set your world height to, so a little over a billion such control volumes. Even if you recalculated only every 10 game minutes (10 seconds), that is fairly intense. For very little improvement in reality. And that is probably not how it is actually done. I think for anything more than a few meters around the seraph, I'd just leave it at a continuous function in three dimensions, and evaluate that function only when it matters.

Link to comment
Share on other sites

14 minutes ago, Thorfinn said:

The model used in the game works quite well for creating ice on the top of lakes. It works well for metal working and clay firing. It just doesn't do all that well at modeling submerged bodies.

I'm wondering if it was just an oversight on the devs, or if it's a mechanic that's been deliberately left to the wayside due to there not being a great way to travel over water yet. I know we have rafts, but they don't feel like a particularly good method of traveling very far over the water, nor do they feel like they would keep you very dry in the process(although they will for gameplay purposes).

A simple fix would probably be a condition that if the outside temperature is below a certain threshold(like the freezing point, or perhaps slightly above), the player will lose body heat at a steady rate when soaking wet, provided they aren't within range of an appropriate heat source(like a campfire). I'd also tweak the heat loss to be at a slightly higher rate than if completely dry, both for further realism and to help incentivize the player to avoid going for a swim when it's cold.

Link to comment
Share on other sites

26 minutes ago, LadyWYT said:

A simple fix would probably be a condition that if the outside temperature is below a certain threshold(like the freezing point, or perhaps slightly above), the player will lose body heat at a steady rate when soaking wet, provided they aren't within range of an appropriate heat source(like a campfire)

I think that's how it works now. Someone in another thread talked about how he found he didn't need any clothes at all above a certain temperature, then when it hit that temp, he would slowly chill off, but put on even something good for 0.5C, and he's immune to cold until the temp drops that 0.5C.

Cold weather in the game isn't all that cold. Around here, 0C is flannel shirt weather, maybe a leather vest if there's a crisp wind. The chaps don't come out until -10 or so, and only got the chore coat out for a brief stint last year, when it never got above -28C for 13 days running. Wouldn't be trying any of that after swimming through a lake, though... ;)

  • Like 1
Link to comment
Share on other sites

11 hours ago, Wahazar said:

Well, water temperature is never less than 0 (if not supercooled), thus if game is using just temperature to calculate temperature, results are as described.

Hypothermia happens at 37°C for seraphs, not 0. Since water is a great conductor of heat, you should be rapidly cooling to hypothermia temperatures, not pausing or heating unless your internal temperature is already at or below that value. (It would follow in this situation that the water is significantly warmer than the frigid air.)

Edited by Bumber
Link to comment
Share on other sites

I'm pretty sure that was his point, @Bumber. I forget what the seraph's tolerance is, 10C, maybe, but above that the game does not do hypothermia. And if you have, say, 10C of clothing adjustment, the 0C water has no cooling effect, while the -16C air does.

The problem isn't really the heat calculations per se, but just the way hypothermia is figured. The heat flux system works pretty well in the horizontal plane, though it makes elevation effect (0.6C per m) way to strong to be realistic, but means you can have glaciers on top of mountains.

Link to comment
Share on other sites

7 minutes ago, Thorfinn said:

And if you have, say, 10C of clothing adjustment, the 0C water has no cooling effect, while the -16C air does.

Doesn't being wet bypass the clothing adjustment? It currently has some kind of effect if you're wet and in air, at least.

Edited by Bumber
Link to comment
Share on other sites

I don't know how hypothermia is modeled in-game. Tried but failed to understand it. Hypothermia seems more common early spring and late fall when you throw your clothes in a pile on the bank and wade in in just your underwear, so wet clothing must count for something? I would have thought putting on dry clothes would fix things, but at least a few versions ago, the seraph remained wet for about as long either way. I say "about" because conditions can never be duplicated in game, just approximated.

I have a sneaking suspicion wind is also factored in.

Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.