Posts: 1,358
Threads: 160
Joined: Sep 2012
09-15-2018, 03:56 PM
(This post was last modified: 09-15-2018, 04:00 PM by kyle2143. Edited 1 time in total.)
Maybe I don't understand the system, but it seems like the bodyheat thing fluctuates and makes no sense to me.
For one thing, thing, you seem to lose/gain all your normal body heat if you don't have 100% heat or cold protection within a few seconds of touching a rather hot or cold environment.
Another thing is the heat indicator itself has no apparent scale. Eating spicy pasta makes the heat indicator cap out, so does standing in a furnace surrounded by hellfire.
I think it might be more useful to have something show the apparent heat of the environment around you, and one of how hot you actually feel. I can stand in a snowstorm in a thick coat and pants and feel perfectly fine, but know that it's 32° f outside.
Posts: 5,722
Threads: 303
Joined: May 2014
(09-15-2018, 03:56 PM)kyle2143 Wrote: Maybe I don't understand the system, but it seems like the bodyheat thing fluctuates and makes no sense to me.
For one thing, thing, you seem to lose/gain all your normal body heat if you don't have 100% heat or cold protection within a few seconds of touching a rather hot or cold environment.
Another thing is the heat indicator itself has no apparent scale. Eating spicy pasta makes the heat indicator cap out, so does standing in a furnace surrounded by hellfire.
I think it might be more useful to have something show the apparent heat of the environment around you, and one of how hot you actually feel. I can stand in a snowstorm in a thick coat and pants and feel perfectly fine, but know that it's 32° f outside.
Yeah, I feel like the system could use more complexity. Right now it seems most things that protect you from temp block a certain amount of it at a fixed amount.
I could imagine things like coats and uniforms instead affecting the rate at which temperature rates progress to meet the ambient air temp. I.E. being trapped in the freezer still taking you to frozen, but at a much faster rate without clothing.
There could even be a targeted damage aspect to it as well, where your extremities like your limbs and head absorbed some thermal damage away from your core body, and temp damage to individual limbs have their own effect, like getting frostbite on your arms and legs in cold temps, or dizzying heat exhaustion when your head heats up too much
Posts: 1,358
Threads: 160
Joined: Sep 2012
(09-15-2018, 08:53 PM)Frank_Stein Wrote: (09-15-2018, 03:56 PM)kyle2143 Wrote: Maybe I don't understand the system, but it seems like the bodyheat thing fluctuates and makes no sense to me.
For one thing, thing, you seem to lose/gain all your normal body heat if you don't have 100% heat or cold protection within a few seconds of touching a rather hot or cold environment.
Another thing is the heat indicator itself has no apparent scale. Eating spicy pasta makes the heat indicator cap out, so does standing in a furnace surrounded by hellfire.
I think it might be more useful to have something show the apparent heat of the environment around you, and one of how hot you actually feel. I can stand in a snowstorm in a thick coat and pants and feel perfectly fine, but know that it's 32° f outside.
Yeah, I feel like the system could use more complexity. Right now it seems most things that protect you from temp block a certain amount of it at a fixed amount.
I could imagine things like coats and uniforms instead affecting the rate at which temperature rates progress to meet the ambient air temp. I.E. being trapped in the freezer still taking you to frozen, but at a much faster rate without clothing.
There could even be a targeted damage aspect to it as well, where your extremities like your limbs and head absorbed some thermal damage away from your core body, and temp damage to individual limbs have their own effect, like getting frostbite on your arms and legs in cold temps, or dizzying heat exhaustion when your head heats up too much
I wasn't really advocating for increased complexity or anything. Really just something to make it so that the heat indicator is actually indicative of the current system. Or change the current system so that cold/heat protection changes the rate at which the bodyheat changes, not the threshold before damage/status effects start.
Just a mockup, but my idea was something where the heat indicator could work like this:
Where the left side is actual bodyheat, and the right side shows the environmental heat (appox)
Posts: 2,552
Threads: 33
Joined: Oct 2014
I agree that bodytemp is silly. For reference:
Code: proc/update_temp_indicator()
if (!bodytemp)
return
if(master.burning && !master.is_heat_resistant())
bodytemp.icon_state = "tempF" // on fire
bodytemp.tooltipTheme = "tempInd tempIndF"
bodytemp.desc = "OH FUCK FIRE FIRE FIRE OH GOD FIRE AAAAAAA"
return
var/dev = master.get_temp_deviation()
var/state
switch(dev)
if(4)
state = 4 // burning up
bodytemp.desc = "It's scorching hot!"
if(3)
state = 3 // far too hot
bodytemp.desc = "It's too hot."
if(2)
state = 2 // too hot
bodytemp.desc = "It's a bit warm, but nothing to worry about."
if(1)
state = 1 // warm but safe
bodytemp.desc = "It feels a little warm."
if(-1)
state = -1 // cool but safe
bodytemp.desc = "It feels a little cool."
if(-2)
state = -2 // too cold
bodytemp.desc = "It's a little cold, but nothing to worry about."
if(-3)
state = -3 // far too cold
bodytemp.desc = "It's too cold."
if(-4)
state = -4 // freezing
bodytemp.desc = "It's absolutley freezing!"
else
state = 0 // 310 is optimal body temp
bodytemp.desc = "The temperature feels fine."
bodytemp.icon_state = "temp[state]"
bodytemp.tooltipTheme = "tempInd tempInd[state]"
Code: /mob/proc/get_temp_deviation()
var/tempdiff = src.bodytemperature - src.base_body_temp
var/tol = src.temp_tolerance
var/ntl = 0 - src.temp_tolerance // these are just to make the switch a bit easier to look at
if (tempdiff > tol*4)
return 4 // some like to be on fire
else if (tempdiff < ntl*4)
return -4 // i think my ears just froze off oh god
else if (tempdiff > tol*3)
return 3 // some like it too hot
else if (tempdiff < ntl*3)
return -3 // too chill
else if (tempdiff > tol*2)
return 2 // some like it hot
else if (tempdiff < ntl*2)
return -2 // pretty chill
else if (tempdiff > tol*1)
return 1 // some like it warm
else if (tempdiff < ntl*1)
return -1 // a little bit chill
else
return 0 // I'M APOLLO JUSTICE AND I'M FINE
Code: var/base_body_temp = 310.055
var/temp_tolerance = 15 // iterations between each temperature state
So basically, +/- 60(K/C) from your base body temp (310.55) maxes out your meters. In a game where body temp can be absolute zero or hotter than the center of a star, and survive, that just doesn't translate to much.
Cue me fucking up simple math but I just glanced over it, so sue meh.
Posts: 5,722
Threads: 303
Joined: May 2014
Yeah that's a nice icon, and knowing the difference between being in a hot room or being feverish is useful
Posts: 624
Threads: 46
Joined: Jun 2013
Id just like to add that I don't think an actual temperature indicator should be up there. Its think its meant to be a "how do you feel" style deal, much like the heart icon (which doesnt tell you how damaged you are actually, just a vague idea).
For actual temperatures, you should have to use your PDA. They all come with atmospheric scanners pre-installed, so anyone can do this at any time already.
|