Jump to content

Can someone help me with insulation point?


Recommended Posts

47 minutes ago, SilentBalloon said:

Simulate the entire process frame by frame.

T_A                                   Ambient temperature

t_B                                    Body temperature

T_H_i; T_C_j                       Hot/Cold sourse temperature

d_H_i; d_C_j                      (if exists)Disdance between the hot/cold sourse and the character(<10)

w_H_i; w_C_j                     = 2.1 for heat stones in the inventory;= 1 otherwise

ramp(x)                            =x if x>0; =0 otherwise

 

1. The heat/cold source effect will be weakened due to the distance:

t_H_i = T_H_i * (1 - (d_H_i/10)^2)

t_C_j = 70 - (70 - T_C_j) * (1 - (d_C_j/10)^2)

if the distance exists. Otherwise t_H_i = T_H_i and t_C_j = T_C_j.

2. Calculate:

E = (T_A - t_B) + (∑ ramp(t_H_i - t_B) * w_H_i)+ (∑ -ramp(t_B - t_C_j) * w_C_j)

The body temperature will rise when E > 0 and drop when E < 0

 

Okay, so in the case of only having a thermal stone as the heat source, we can calculate the steady state body temperature (E=0) by:

T_B = (T_A + w_H*T_H) / (w_H + 1)

where w_H = 2.1. At an ambient temperature of -20 degrees (T_A = -20) and holding a stage 5 thermal stone (T_H = 60), the body temperature is 34.19 degrees, which is what this graph shows:

On 11/19/2019 at 10:29 PM, SilentBalloon said:

p1.png.3f1ae2c5ac6e5c90514985b89d54e57d.png

Calculating for stage 4 thermal stone (T_H = 40), the body temperature is 20.65 degrees.

This is great! Thanks for taking the time to explain all this.

Link to comment
Share on other sites

10 hours ago, SilentBalloon said:

The ambient temperature is not so low in the early winter. The lower the ambient temperature is, the better the thermal stone performs.

ppp.PNG.c13b6da86d315280fd544e357f1a9bf6.PNG

See https://dontstarve.fandom.com/wiki/Thermal_Stone.

 

Simulate the entire process frame by frame.

I'm confused now because you posted two contradicting images: one where the thermal stone is red 30 degrees above world temp, and another one where the thermal stone is red at 60 degrees in absolute temperature. Which one is the more accurate chart, and what exactly is your y axis (absolute temperature or delta temperature)?

Could you explain what you mean by the thermal stone "doing better" at a lower ambient temperature?

Also, I asked about your specific methodology because it isn't completely clear solely based on the graph what you're physically doing. Are you sitting next to a maxed fire while holding onto the thermal stone, and then running away from the fire and recording temperature data as soon as your body hits 50 degrees? Or are you heating yourself up to 50 degrees, and then immediately recording temperature data after running away from the fire?

Link to comment
Share on other sites

3 minutes ago, Rinkusan said:

I'm confused now because you posted two contradicting images: one where the thermal stone is red 30 degrees above world temp, and another one where the thermal stone is red at 60 degrees in absolute temperature. Which one is the more accurate chart, and what exactly is your y axis (absolute temperature or delta temperature

There are two temperatures that need to be distinguished: the internal temperature of the thermal stone, and the temperature that the thermal stone gives off as a heat source.

The internal temperature is what’s shown on the graph and only determines what stage the stone is at.

For each of the stages, the thermal stone emits a constant temperature (60 degrees for stage 5, and 40 degrees for stage 4).

In other words, the temperature of the thermal stone is not the temperature that it emits.

Link to comment
Share on other sites

23 hours ago, mistrbushido said:

The internal temperature is what’s shown on the graph and only determines what stage the stone is at.

This is what I'm confused about because if what's plotted really is the stone's absolute internal temperature, why is it consistently at 40 degrees when a maximum fire heats you up to roughly 58 degrees give or take a few degrees? What I'm trying to say is that if what you're saying is true, it raises some questions about what exactly SilentBalloon is doing to generate that graph in the first place; also, it doesn't explain why I ended up with a higher starting temperature with a hot thermal stone in my inventory compared to not having a hot thermal stone in my inventory.

If thermal stone color is the only thing that determines how much heat a thermal stone gives off, why does my maximum starting temperature increase every time I put my thermal stone in my inventory?

Link to comment
Share on other sites

30 minutes ago, Rinkusan said:

This is what I'm confused about because if what's plotted really is the stone's absolute internal temperature, why is it consistently at 40 degrees when a maximum fire heats you up to roughly 58 degrees give or take a few degrees? What I'm trying to say is that if what you're saying is true, it raises some questions about what exactly SilentBalloon is doing to generate that graph in the first place; also, it doesn't explain why I ended up with a higher starting temperature with a hot thermal stone in my inventory compared to not having a hot thermal stone in my inventory.

He decided to start the simulation with initial body temperature 50 degrees, and thermal stone temperature 40 degrees. Your initial temperatures would have been different. He provided the graphs to demonstrate the behavior of temperature decay over time with thermal stones, and not to emphasize exact timings.

Rather than try to get the exact timing, you only really need to check the behavior over time. Check the steady state body temperatures for each stage to confirm that his description of thermal stones is correct (what i did above), and to check the slopes of the temperature decay to verify that he's using -30/(30+insulation) as the rate. The behaviors are consistent with what I observe in the game when I did my tests. I used a winter-only, day-only world where I get around -20 degrees ambient temperature all the time.

30 minutes ago, Rinkusan said:

If thermal stone color is the only thing that determines how much heat a thermal stone gives off, why does my maximum starting temperature increase every time I put my thermal stone in my inventory?

How the player receives the heat is slightly different depending on if the thermal stone is in the inventory or not. There is a constant w_H_i in the equations which equals 2.1 if the thermal stone is in the players inventory and 1 there it is not. Basically, it results in a higher target body temperature when the stone is in the inventory versus on the ground.

Link to comment
Share on other sites

10 hours ago, mistrbushido said:

He decided to start the simulation with initial body temperature 50 degrees, and thermal stone temperature 40 degrees. Your initial temperatures would have been different. He provided the graphs to demonstrate the behavior of temperature decay over time with thermal stones, and not to emphasize exact timings.

Ah, okay. So this is why I was asking how SilentBalloon got his data because I thought he was generating a graph based on doing an in-game experiment. What exactly is this simulation? Is it some kind of equation analysis program?

 

Quote

How the player receives the heat is slightly different depending on if the thermal stone is in the inventory or not. There is a constant w_H_i in the equations which equals 2.1 if the thermal stone is in the players inventory and 1 there it is not. Basically, it results in a higher target body temperature when the stone is in the inventory versus on the ground.

Okay, that makes a LOT of sense now. I'm assuming you're referring to this equation: E = (T_A - t_B) + (∑ ramp(t_H_i - t_B) * w_H_i)+ (∑ -ramp(t_B - t_C_j) * w_C_j). So basically, the idea is that the thermal stone alone increases a particular coefficient so that E stays positive for slightly longer as your body temperature gets closer to the heat source, right?

Also, just wondering, where did you and SilentBalloon find these equations?

Link to comment
Share on other sites

Just now, Rinkusan said:

Ah, okay. So this is why I was asking how SilentBalloon got his data because I thought he was generating a graph based on doing an in-game experiment. What exactly is this simulation? Is it some kind of equation analysis program?

It's just plotting an equation on x,y plane. temperature = rate*time. Simple algebra :)

Just now, Rinkusan said:

Okay, that makes a LOT of sense now. I'm assuming you're referring to this equation: E = (T_A - t_B) + (∑ ramp(t_H_i - t_B) * w_H_i)+ (∑ -ramp(t_B - t_C_j) * w_C_j). So basically, the idea is that the thermal stone alone increases a particular coefficient so that E stays positive for slightly longer as your body temperature gets closer to the heat source, right?

Yup. When you increase the w_H_i variable, you can see it increases E, so yes it stays positive for a bit longer. This means the thermal stone brings the player's body to a higher temperature when in the inventory as opposed to on the ground. This is true even when the thermal stone is the only heat source near the player.

10 minutes ago, Rinkusan said:

Also, just wondering, where did you and SilentBalloon find these equations?

I assume he pulled these from the game code. I didn't bother to check it myself since it describes what happens accurately.

Link to comment
Share on other sites

28 minutes ago, mistrbushido said:

It's just plotting an equation on x,y plane. temperature = rate*time. Simple algebra :)

I assume he pulled these from the game code. I didn't bother to check it myself since it describes what happens accurately.

Okay, gotcha. I was under the impression that he was doing an in-game experiment and collecting data instead of generating a graph based on equations within the game's code.

 

Quote

I assume he pulled these from the game code. I didn't bother to check it myself since it describes what happens accurately.

Where exactly can you access the game code? 

Link to comment
Share on other sites

Just now, Rinkusan said:

Where exactly can you access the game code? 

There are .lua files in the Don't Starve Together directory. Mine is located here as an example

Spoiler

C:\Program Files (x86)\Steam\steamapps\common\Don't Starve Together\data\databundles\scripts.zip\scripts

The .lua files can be opened by a simple text editor like notepad or notepad++. If you want to look at how temperature works for example, there is a temperature.lua in scripts\components. Commonly you will encounter tuning variables (e.g. TUNING.SEG_TIME). These can be found in tuning.lua located in scripts.

Link to comment
Share on other sites

39 minutes ago, Rinkusan said:

A bit off-topic, but a thought occurred; if Klei is leaving their entire code open for people to look at, doesn't that leave the potential for hackers to hack the game? 

I think it's more about making it easier for modders to do what they do.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

Please be aware that the content of this thread may be outdated and no longer applicable.

×
  • Create New...