Bay 12 Games Forum

Dwarf Fortress => DF Suggestions => Topic started by: 0x517A5D on March 15, 2009, 12:43:54 pm

Title: Change temperature to Celsius
Post by: 0x517A5D on March 15, 2009, 12:43:54 pm
There's a recent thread (http://www.bay12games.com/forum/index.php?topic=32237.msg461937#msg461937) where it's mentioned that DF temperatures are hard to work with.  I have found that to be true myself.

The DF temperature units are some weird mashup of Fahrenheit, Celsius, and a nonstandard rescale to make the result fit in a uint16.

I suggest switching to an int16 treated as Celsius.  Other physics-based DF units are SI (http://en.wikipedia.org/wiki/SI); I think temperature should be too.

It would make possible the direct copying of temperatures from real-world references without a conversion step.

An int16 Celsius value would have a range of some +32500, hotter than the surface of the sun, to -32500, far, far below absolute zero.

Adamantine, for example, would be changed in the raws to melt at +8333 and vaporize at +22222.

As this affects both the raws and saved games, it should only be done when breaking save-compatibility anyway.  So now's the time.
Title: Re: Change temperature to Celsius
Post by: LegoLord on March 15, 2009, 12:46:54 pm
Agreed.  There won't be another opportunity like this for awhile, but there are a lot of time constraints, so it should be now if there is enough time.
Title: Re: Change temperature to Celsius
Post by: Pilsu on March 15, 2009, 01:06:28 pm
Before someone brings up Fahrenheit nonsense, water boiling at 212° and freezing at 32° is every bit as arbitrary as the current system and it wouldn't help clarifying it at all. There's a reason Celsius has substituted the Fahrenheit scale everywhere else
Title: Re: Change temperature to Celsius
Post by: Exponent on March 15, 2009, 01:48:19 pm
Before someone brings up Fahrenheit nonsense, water boiling at 212° and freezing at 32° is every bit as arbitrary as the current system and it wouldn't help clarifying it at all. There's a reason Celsius has substituted the Fahrenheit scale everywhere else

If we're interested in reducing arbitrariness, then it seems like using a uint16 in Kelvin is the best.  However, I am unsure if any temperatures in DF actually need to be below absolute zero (in which case an unsigned Kelvin value wouldn't work), and I will admit that it is still probably easier to find physical values in Celsius than Kelvin.
Title: Re: Change temperature to Celsius
Post by: Savok on March 15, 2009, 02:00:01 pm
I concur. Celsius FTW!

As was stated by Toady?, magically cold objects could suck more energy out of the normal-temp environment than they could at scientifically possible temps, so he has possible temp values of sub-|0| to simulate this.
Title: Re: Change temperature to Celsius
Post by: LegoLord on March 15, 2009, 02:32:22 pm
Kelvin to Celcius is actually fairly easy. 

oC + 273 = K
K - 273 = oC
Title: Re: Change temperature to Celsius
Post by: profit on March 15, 2009, 02:45:48 pm
I concur. Celsius FTW!

As was stated by Toady?, magically cold objects could suck more energy out of the normal-temp environment than they could at scientifically possible temps, so he has possible temp values of sub-|0| to simulate this.

Celsius Defiantly wins... I am kinda concerned though its temperature gradients are a bit rough....

the difference between 37 and 38 are enough to damage some organisms.. maybe we should multiply it by 10.
Title: Re: Change temperature to Celsius
Post by: Granite26 on March 15, 2009, 02:53:00 pm
I can't help but feel that celsius would be the dumbest of the options.  A uint for Kelvin would be nice (or a float, or uint for 10ths of a kelvin or whatever).  Or Farenheit, which is more familiar to most Americans.  As the game is in English, there's more potential players familiar with that scale.  Plus, I'm selfish and don't like Celsius for anything except talking about water.
Title: Re: Change temperature to Celsius
Post by: Appelgren on March 15, 2009, 02:58:24 pm
Well, I'm a selfish European player that would really prefer Celsius. ;)
Title: Re: Change temperature to Celsius
Post by: Appelgren on March 15, 2009, 03:01:13 pm
Though when I think about it more I'd actually like the game not to tell me the exact temperature but rather give me the sort of information my dwarves or adventurers would be likely to have - like "freezing cold" or "hot" or something like that.
Title: Re: Change temperature to Celsius
Post by: LegoLord on March 15, 2009, 03:06:30 pm
I can't help but feel that celsius would be the dumbest of the options.  A uint for Kelvin would be nice (or a float, or uint for 10ths of a kelvin or whatever).  Or Farenheit, which is more familiar to most Americans.  As the game is in English, there's more potential players familiar with that scale.  Plus, I'm selfish and don't like Celsius for anything except talking about water.
BAD BAD BAD!  The US's denial of the SI system to cling to the obsolete English system is one reason most of the world thinks the US is stupid.  America must abandon the English system, lest it fall into being a minor country of little importance.  And really, English is taught everwhere.  Making the game use Fahrenheit for modding would hurt more people than it would help.

@Appelgren:  We're talking about modding here and the actual values.  The game interface can continue the way it is.
Title: Re: Change temperature to Celsius
Post by: Pilsu on March 15, 2009, 03:58:34 pm
As the game is in English, there's more potential players familiar with that scale.

That's a logical fallacy. Whether we speak the language has nothing to do with whether the rest of the world has even cursory familiarity with the archaic system. Only you and a few other small backwards nations still cling to it, even the Brits have adopted Celsius for common use


If we're interested in reducing arbitrariness, then it seems like using a uint16 in Kelvin is the best.

I do not see the logic in that. Water freezing at 237.15 and boiling at 337.15 does not lend itself to modding any more than the current system does

Theoretical absolute zero is not very useful for modding creatures
Title: Re: Change temperature to Celsius
Post by: Kanil on March 15, 2009, 04:27:14 pm
How about we stop being so defensive about something so pointless and just ask that Toady comes up with a more sensical system of temperature than the one currently in use?
Title: Re: Change temperature to Celsius
Post by: Silverionmox on March 15, 2009, 04:30:41 pm
Though when I think about it more I'd actually like the game not to tell me the exact temperature but rather give me the sort of information my dwarves or adventurers would be likely to have - like "freezing cold" or "hot" or something like that.
That's what it will do anyway. The question is about the unit used in the raws. Celsius and Fahrenheit are both arbitrary and annoying to convert to for their respective users, but at least Celsius has the virture of offering an easy to remember point of reference (freezing and boiling water) in addition to be readily convertable to Kelvin, if need be.
Title: Re: Change temperature to Celsius
Post by: LegoLord on March 15, 2009, 04:31:20 pm
OR since Celsius is most common, just go with that.
Title: Re: Change temperature to Celsius
Post by: Mel_Vixen on March 15, 2009, 04:39:20 pm
Toady stated somewhere that this scale is intended for some esoterical reason. The pro is that toady has 4.294.967.295°Fahrenheit respective 2.386.092.941° Celsius for playing with a signed it would be the half. I think unsigned int is also a pro for some calculations



I ,as much as i hate to say this, think Fahrenheit is better for DF because its more finegrained.

What would be nice is if we could do the scaling in Fahrenheit and Celcius.
So instead of [HOMEOTHERM:10067] would work as well [HOMEOTHERM:35C].
Title: Re: Change temperature to Celsius
Post by: Derakon on March 15, 2009, 04:50:47 pm
There's two main issues pointed out: wasted space (values below absolute zero are highly unlikely to come up, as are values so high they'd reduce everything in a kilometer of the site to plasma), and lack of fine control at the levels that most organisms care about (there's a comparatively big difference between 36° and 37°).

Both of these cry out for a value that's floating point, not integer, since floating point is all about increased precision near zero (wherever you happen to define zero to be) at the cost of decreased precision in the very large numbers.

As for scale, I don't really care between the two, but it should be Kelvin or Celsius. Of course, given how much boiling points depend on atmospheric pressure, we'll also need barometers for our cooks...
Title: Re: Change temperature to Celsius
Post by: LegoLord on March 15, 2009, 04:55:45 pm
What would be nice is if we could do the scaling in Fahrenheit and Celcius.
So instead of [HOMEOTHERM:10067] would work as well [HOMEOTHERM:35C].
That is brilliant.  Having the game use the same scale, but allowing the raws to work in a way so that 35 oC is read as 10067.

As for the fine-grained thing, there's a reason decimals were invented.  I'm fairly certain there are some values in game compatible with that; if temperature is not one of them, it can be implemented.
Title: Re: Change temperature to Celsius
Post by: zchris13 on March 15, 2009, 04:59:57 pm
I recommend unsigned somthing, definitely decimals, using Kelvin.
Title: Re: Change temperature to Celsius
Post by: LegoLord on March 15, 2009, 05:04:35 pm
I recommend unsigned somthing, definitely decimals, using Kelvin.
Why not have that and what Heph said?
Title: Re: Change temperature to Celsius
Post by: Granite26 on March 15, 2009, 05:11:07 pm
I recommend unsigned somthing, definitely decimals, using Kelvin.

That's not the way numbers work in programs.  Either it's an integer(whole number) or it's a float(ing point number).  There is merit (size) in keeping it an integer, although relative merit (whether it's worth it in this case) is arguable.

That said, there's no reason you can't use an int(eger) and have each number represent .1 or .01 degrees Kelvin.  (AKA divide by 100 to get Kelvin)

Although Heph has a neat idea.  use whatever crazy system Toady wants internally, but scale K,F, and C where applicable....
Title: Re: Change temperature to Celsius
Post by: praguepride on March 15, 2009, 05:13:15 pm
I like the Urist scale. It makes things seem dwarfy rather then "american" or "european"
Title: Re: Change temperature to Celsius
Post by: LegoLord on March 15, 2009, 05:20:08 pm
I like the Urist scale. It makes things seem dwarfy rather then "american" or "european"
SI is the International System (excepted by scientists and citizens the world over), not European.
Title: Re: Change temperature to Celsius
Post by: Granite26 on March 15, 2009, 05:25:33 pm
I like the Urist scale. It makes things seem dwarfy rather then "american" or "european"
SI is the International System (excepted by scientists and citizens the world over), not European.

accepted
Title: Re: Change temperature to Celsius
Post by: Mel_Vixen on March 15, 2009, 05:28:26 pm
Quote from: Derakon
values below absolute zero are highly unlikely to come up, as are values so high they'd reduce everything in a kilometer of the site to plasma

I have 4 words and 1 acronym regarding this issue: Spheres, Planes, Gods, Magic and HFS.

Ok Fahrenheit was a bit to patriotic for my taste but Toady is good enought at programming to choose a floating point number if he would have thought it would be better. Fact is for the really important stuff (Ice, Magma, biomes and !!fireballs!!) a nonfloat C or Fahrenheit measurment is more then enought.

Also toady said that the entire temperature engine needs a overhaul because it is a pretty narrow bottleneck on the gamespeed.
Title: Re: Change temperature to Celsius
Post by: Duke 2.0 on March 15, 2009, 05:42:16 pm
 Screw it. Make the temperature values in the raws dependent on the letter at the end of a string of numbers issued. No letter at the end will use the DF scale.
[SPEC_HEAT:30F]
[MELTING_POINT:1270C]
[BOILING_POINT:15150]

 There, all of you happy? Also, I find it childish that Americans are considered stupid for using a system every bit as arbitrary as the preferred method. I'm sure some third-world country will adopt Kelvin for their daily life and berate the world for using such a cruse measurement as Celsius.

 Also, if you have a temperature checker in DF:
 [TEMPERATURE_SCALE:(DF units, Kelvin, Celsius, Fahrenheit)]
 In the init file. There. All better.
Title: Re: Change temperature to Celsius
Post by: praguepride on March 15, 2009, 05:43:59 pm
I like the Urist scale. It makes things seem dwarfy rather then "american" or "european"
SI is the International System (accepted by scientists and citizens the world over), not European.


 ::). Also "fixed" the "fix. If you're going to correct someone, you had better be correct yourself :D My point is that we already have original units all across the board, why not have a dwarf-version of the temp. scale?
Title: Re: Change temperature to Celsius
Post by: Belteshazzar on March 15, 2009, 06:16:48 pm
Hurray for Kelvin where 'everything' starts at zero!
Title: Re: Change temperature to Celsius
Post by: NikkTheTrick on March 15, 2009, 06:20:11 pm
I think kelvin times 10 in unint32 would be a good scale. Values below 0 Celsius are common in freezing climates and during winter. Values below 0 Kelvin are not.
Times 10 because 1 degree Celsius/Kelvin step may be too much if we may want to have things precisely controlled around 0C or in 36C-42C range (later being important for diseases). 0.1 Celsius seems precise enough (eliminating "fine grained" argument for Farenheit).

And for display purposes, temperatures can be easily converted to Celsius (or, for players from countries like Belize, Liberia and Myanmar, Farengheit). That conversion would be done rarely (relative to how much temperature is used in calculations), so would not require too much computing.
Title: Re: Change temperature to Celsius
Post by: Duke 2.0 on March 15, 2009, 06:27:44 pm
 It won't matter how much temperature is used in calculations, it is purely for display purposes. DF will still use it's internal scale because there is no point to changing the scale except for display purposes. Thus it will only be converted from the raws when DF first goes through the numbers and when DF displays temperature information, if we ever get a temperature display.
Title: Re: Change temperature to Celsius
Post by: LegoLord on March 15, 2009, 07:36:33 pm
There, all of you happy? Also, I find it childish that Americans are considered stupid for using a system every bit as arbitrary as the preferred method. I'm sure some third-world country will adopt Kelvin for their daily life and berate the world for using such a cruse measurement as Celsius.
Celsius is based on the boiling point and freezing point of water using multiples of 10 to represent the values.  Kelvin is just Celsius plus 273 so that the lowest temperature, absolute zero, actually has a value of zero rather than -273.  Fahrenheit was based on the highest and lowest temperatures known at the time it was developed, with a totally random value used for the highest number.

There's not much arbitrary about SI, when compared to a system that's holds its unit's origins on arbitrary things like the highest temperatures known and the length of a King's foot.
Title: Re: Change temperature to Celsius
Post by: Fieari on March 15, 2009, 08:20:38 pm
Tangent/Rant:
Spoiler (click to show/hide)

As for DF?  Toady uses Fahrenheit in his day to day life.  That should be enough reason for him to stick to it.  He's already state that he adds the ridiculously high number to it in order to allow for magically low temperatures in the future (and don't tell me that temperatures lower than 0 kelvin are absurd... if temperature is the measure of molecular movement, and 0 is no movement, negative numbers could represent zero movement plus additional inertia to prevent attempted movement).
Title: Re: Change temperature to Celsius
Post by: LegoLord on March 15, 2009, 08:39:30 pm
While I agree America should probably go to SI for most things, do remember that CELSIUS IS NOT SI.  IT DOES NOT UTILIZE PREFIXES, SUCH AS KILO AND CENTI.
[. . .]
As for DF?  Toady uses Fahrenheit in his day to day life.  That should be enough reason for him to stick to it.  He's already state that he adds the ridiculously high number to it in order to allow for magically low temperatures in the future (and don't tell me that temperatures lower than 0 kelvin are absurd... if temperature is the measure of molecular movement, and 0 is no movement, negative numbers could represent zero movement plus additional inertia to prevent attempted movement).
1) Temperatures don't get high enough or low enough to merit centi and kilo degrees.  That's far more absurd.

2)It has already been stated that the raws can be altered so that the temperature value used is completely up to the modder's preference.

3) Toady is a game designer.  His personal preference for temperature shouldn't be what determines it if the majority of his player base is going to find using the temperature scale Toady uses (in his daily life) difficult.
Title: Re: Change temperature to Celsius
Post by: Mikademus on March 15, 2009, 09:02:01 pm
There is a good argument against using non-SI measurements: they make shuttles crash. 
Title: Re: Change temperature to Celsius
Post by: zchris13 on March 15, 2009, 09:02:30 pm
When was the poll on this? I was never asked.  Don't say things like that, Legolord, unless you know for sure.  SO START A POLL! GO.
Title: Re: Change temperature to Celsius
Post by: Neonivek on March 15, 2009, 09:06:44 pm
Kinda interesting

I prefer Celcius when trying to determine the temperature of the outdoors. Since it is generally better since 0c is designated.

I prefer F. when trying to determine how healthy someone is. Since 100, someone being ill, is designated rather then the celius guess work.
Title: Re: Change temperature to Celsius
Post by: 0x517A5D on March 16, 2009, 02:20:05 am
Well, that was rather more argument than I expected.

Here are some technical things to consider about how the game implements temperature:

Title: Re: Change temperature to Celsius
Post by: Granite26 on March 16, 2009, 08:49:11 am

  • An unsigned integer based on Kelvin is not desirable due to the magic system wanting to be able to make temperatures that are "below absolute zero."

Wait, what?  WHY in God's name would even magic need something colder than 'zero molecular movement'?
Title: Re: Change temperature to Celsius
Post by: praguepride on March 16, 2009, 09:14:35 am

    • An unsigned integer based on Kelvin is not desirable due to the magic system wanting to be able to make temperatures that are "below absolute zero."

    Wait, what?  WHY in God's name would even magic need something colder than 'zero molecular movement'?

    Because...it's magic![/list]
    Title: Re: Change temperature to Celsius
    Post by: Duke 2.0 on March 16, 2009, 09:19:44 am

      • An unsigned integer based on Kelvin is not desirable due to the magic system wanting to be able to make temperatures that are "below absolute zero."

      Wait, what?  WHY in God's name would even magic need something colder than 'zero molecular movement'?

      Because...it's magic![/list]
      Negative Molecular Movement.

       Because we need to prove Dark Matter somehow.
      Title: Re: Change temperature to Celsius
      Post by: praguepride on March 16, 2009, 09:21:42 am
      Like I said! Magic!
      Title: Re: Change temperature to Celsius
      Post by: Pilsu on March 16, 2009, 09:38:30 am
      Do you even know what absolute zero means and entails?  ::)
      Title: Re: Change temperature to Celsius
      Post by: Duke 2.0 on March 16, 2009, 09:39:20 am
       I know, and thus why I threw in the Dark Matter joke.
      Title: Re: Change temperature to Celsius
      Post by: Mikademus on March 16, 2009, 09:54:35 am
      • Floating point math is slower than integer math.
      • Conversion between floating point and integer is very slow.

      That was a while ago. The cycle count for integer and floating point operations are the same on principally all modern CPUs. If you can get some modern game code you'll see that they use almost only floating points.
      Title: Re: Change temperature to Celsius
      Post by: praguepride on March 16, 2009, 10:19:39 am
      Which is why they're building physics cards to handle the floating point overflow from regular graphics cards.
      Title: Re: Change temperature to Celsius
      Post by: Exponent on March 16, 2009, 12:13:16 pm
      If we want a very dwarfy system, I suggest an exponential curve mapping Dwarf scale to Kelvin.  I'll explain why at the bottom.

      K = aebD + c
      or
      D = 1/b * ln((K - c) / a)

      where a, b, and c are computed constants, D is degrees Dwarf, and K is degrees Kelvin.

      The computation of the constants should come from this system of equations (I tried to solve it last night, but I suck at solving non-linear systems):

      273.15 = ae0b + c
      373.1339 = ae1000b + c
      1700.0 = ae2000b + c

      The result:  A temperature scale in which water freezes at 0, melts at 1000, and the average temperature of magma is 2000.  Certainly these would be considered the three most important temperatures for a dwarf?  And even if water freezing/melting is not as important as some other temperature, certainly the temperature of magma is.  (And conveniently, as far as I am aware, magma is always exactly one temperature in DF.)


      Title: Re: Change temperature to Celsius
      Post by: praguepride on March 16, 2009, 12:18:47 pm
      wow...just wow :D
      Title: Re: Change temperature to Celsius
      Post by: 0x517A5D on March 16, 2009, 02:00:06 pm
      Wait, what?  WHY in God's name would even magic need something colder than 'zero molecular movement'?

      IIRC to make it able for a spell or enchanted item to suck the heat out of something faster.

      Note that the current system has temperatures below 0K, and people use them.
      Title: Re: Change temperature to Celsius
      Post by: Granite26 on March 16, 2009, 02:01:58 pm
      People, or Toady?

      Seems like specific heat should cover most of it
      Title: Re: Change temperature to Celsius
      Post by: 0x517A5D on March 16, 2009, 02:24:56 pm
      • Floating point math is slower than integer math.
      • Conversion between floating point and integer is very slow.

      That was a while ago. The cycle count for integer and floating point operations are the same on principally all modern CPUs. If you can get some modern game code you'll see that they use almost only floating points.

      I haven't seen cycle-count references for modern CPUs, and have not done my own timing tests in years,

      My understanding (from memory) of the AMD Athlon series (not the newer Athlon64 series) is that float addition is the same as int32 addition, float multiplication lags int32 multiplication by at least one cycle, and float division lags int32 division by several cycles.  On the good side, rearranging the FP stack is effectively 0 cycles now.

      That's based on the classic x86 floating point instruction set, not the MMX* or SSE* sets.

      On the second point, naively using ftol() to convert results in a massive penalty because of changing the rounding method (http://www.garagegames.com/community/resources/view/961).  I believe this has been mostly fixed on ultramodern CPUs but there is still some penalty, just not 100+ cycles.
      Title: Re: Change temperature to Celsius
      Post by: 0x517A5D on March 16, 2009, 02:50:32 pm
      People, or Toady?

      Seems like specific heat should cover most of it

      Some of the people in the modding forum like setting objects to very low temperatures.

      Here is holy writ from on high (http://www.bay12games.com/forum/index.php?topic=18958.msg187374#msg187374) about temperatures below absolute zero.

      I don't know if tweaks to specific heat could cause the same result as a steep heat gradient.  At first glance, you would have to change the specific heat of the target item/creature being cooled, which strikes me as the wrong thing to do.
      Title: Re: Change temperature to Celsius
      Post by: Granite26 on March 16, 2009, 02:56:08 pm
      I hated "The Day After Tomorrow"....
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on March 16, 2009, 04:32:45 pm
      When was the poll on this? I was never asked.  Don't say things like that, Legolord, unless you know for sure.  SO START A POLL! GO.
      It's not opinion, it's statistics.  DF is not a very talkative game, so anyone who doesn't speak much English who would otherwise be able to play it can easily just learn a few terms and play on; there are several people from non-English countries on this forum, if you look around.  SI is the international system, and lives up to that name by being used internationally.  Even with countries that do speak English, more of them use SI than there are those that don't.

      Also, nearly all formulas used in physics and chemistry that involve temperature use Celsius or Kelvin, and inserting Fahrenheit would throw off the answers completely, which is part of why F is considered arbitrary.
      Title: Re: Change temperature to Celsius
      Post by: Veroule on March 16, 2009, 04:42:37 pm
      Specific heat is so misapplied.  A nice simple example, take a tray of water (500ml) at room temperature (72F/22.2C) and place it in a freezer at (31F/-0.5C) .  Record how long it takes for that water to completely turn to ice.  Next place an identical tray of water into a vat of liquid nitrogen, record how long it takes that water to turn to ice.

      I think you will find the 2 measurement of time are not equal.  Specific Heat is component in averaging the temperatures in the environment to guage the time required to reach a mean energy acrossed the entire environment.  It is only accurate if you consider the Specific Heat of all portions of the environment.  If you change the volume of liquid nitrogen adequately you can also measure a different time for freezing the water.  Making a significat change in the mass of liquid nitrogen will actually result in a measurable change in the time it takes to freeze the water, evidencing that water's specific heat is only a component in the actual function.

      So why would we need values of negative Kelvin?  Simply put temperature is a measurement of the kinetic engery of molecules.  Kinetic energy is a function of motion, having both velocity and direction.  If all the molecules in a given mass are moving in a vector generally opposite to the mocules of another mass with sufficient velocity, then the collision the 2 masses will easily produce changes in molecular vectors exceeding a convetered 273 C/K.  Yes you may actually have to consider Relativity when considering temperature, since the specific vectors of each molecule are undefined you may also have to consider wave mechanics.

      With all that said, please put away your Physics arguements.  Let us just agree that DF can use whatever scale it chooses, and it would be nice to have the raws support multiple scales.
      Title: Re: Change temperature to Celsius
      Post by: Granite26 on March 16, 2009, 05:04:21 pm
      Also, nearly all formulas used in physics and chemistry that involve temperature use Celsius or Kelvin, and inserting Fahrenheit would throw off the answers completely, which is part of why F is considered arbitrary.

      I'm pretty sure that is totally untrue...

      Specific heat is so misapplied.  A nice simple example, take a tray of water (500ml) at room temperature (72F/22.2C) and place it in a freezer at (31F/-0.5C) .  Record how long it takes for that water to completely turn to ice.  Next place an identical tray of water into a vat of liquid nitrogen, record how long it takes that water to turn to ice.

      Chemistry isn't my strong suit, so I can't comment, although you're probably right.  Still... -K temperatures just seems... wrong
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on March 16, 2009, 05:15:30 pm
      Negative K values don't work in the real world because there is no such thing as "anti motion" - if something changes position, the it has some heat.  My personal hypothesis on 0 K is that if something were to reach it, it would be the sole unmoving point in space (which is highly unlikely to happen, so I think 0 K is impossible, however close they may get to it).

      In games, however, kinetic motion is not recognized and as stated before (as I understood it) the game runs better with a scale that goes below absolute zero.  Of course, the temp values for everything in the game could be greatly lowered so that game scale zero is K scale zero.  But that is not necessary; we can just have raws that recognize multiple scales and translate them into the game scale.
      Title: Re: Change temperature to Celsius
      Post by: zchris13 on March 16, 2009, 05:25:51 pm
      Although it may seem obvious to most of us, you would also need to consider thermodynamics.  Which I only know enough about to say that I think we need to look at it.
      Title: Re: Change temperature to Celsius
      Post by: Mikademus on March 16, 2009, 05:58:23 pm
      Also, nearly all formulas used in physics and chemistry that involve temperature use Celsius or Kelvin, and inserting Fahrenheit would throw off the answers completely, which is part of why F is considered arbitrary.

      I'm pretty sure that is totally untrue...

      Except when it causes space shuttles to explode.
      Title: Re: Change temperature to Celsius
      Post by: Granite26 on March 16, 2009, 06:37:48 pm
      Also, nearly all formulas used in physics and chemistry that involve temperature use Celsius or Kelvin, and inserting Fahrenheit would throw off the answers completely, which is part of why F is considered arbitrary.

      I'm pretty sure that is totally untrue...

      Except when it causes space shuttles to explode.
      That doesn't mean the formulas don't work, it just means there's a conversion factor that people can forget.  That's like saying that the formula for acceleration due to gravity changes depending on whether you're using feet or meters.
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on March 16, 2009, 07:01:55 pm
      Also, nearly all formulas used in physics and chemistry that involve temperature use Celsius or Kelvin, and inserting Fahrenheit would throw off the answers completely, which is part of why F is considered arbitrary.

      I'm pretty sure that is totally untrue...

      Except when it causes space shuttles to explode.
      That doesn't mean the formulas don't work, it just means there's a conversion factor that people can forget.  That's like saying that the formula for acceleration due to gravity changes depending on whether you're using feet or meters.
      Oh yes, it will work if you have a conversion factor.  But all that does is convert Fahrenheit to whatever unit is appropriate before running it through the rest of the equation.  I you use the ideal gas law to find the temperature of a gas, your answer will always be Kelvin scale.
      Title: Re: Change temperature to Celsius
      Post by: Tormy on March 16, 2009, 07:14:34 pm
      Well, I'm a selfish European player that would really prefer Celsius. ;)

      Same here!  ;D
      Title: Re: Change temperature to Celsius
      Post by: RAM on March 16, 2009, 07:39:12 pm
      It is simple:
      Step 1: Take the temperature required for a 1x1x1 cube to freeze a 100x100x100 cube in a single frame, and call that 0.
      Step 2: Take the temperature required for a 1x1x1 cube to melt a 100x100x100 cube in a single frame, and call that 1.
      Step 3: Store temperature as a binary integer, it will save on processing power...
      Step 4: Have fun!
      Title: Re: Change temperature to Celsius
      Post by: Mikademus on March 16, 2009, 07:41:55 pm
      Also, nearly all formulas used in physics and chemistry that involve temperature use Celsius or Kelvin, and inserting Fahrenheit would throw off the answers completely, which is part of why F is considered arbitrary.

      I'm pretty sure that is totally untrue...

      Except when it causes space shuttles to explode.
      That doesn't mean the formulas don't work, it just means there's a conversion factor that people can forget.  That's like saying that the formula for acceleration due to gravity changes depending on whether you're using feet or meters.
      Oh yes, it will work if you have a conversion factor.  But all that does is convert Fahrenheit to whatever unit is appropriate before running it through the rest of the equation.  I you use the ideal gas law to find the temperature of a gas, your answer will always be Kelvin scale.
      Because, you know, it is always good to have more things that could go wrong in critical systems. Yeah, let's use a conversion function in our equations rather than use a consistent unit set! :)

      Anywhoo, that previous suggestion about suffixing your unit in the raw was good.
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on March 16, 2009, 07:46:34 pm
      Because, you know, it is always good to have more things that could go wrong in critical systems. Yeah, let's use a conversion function in our equations rather than use a consistent unit set! :)
      Yeah, that was kind of my point.

      Anywhoo, that previous suggestion about suffixing your unit in the raw was good.
      Yeah, I'm really not sure how this thread kept going after someone said "how about this?"
      Title: Re: Change temperature to Celsius
      Post by: Random832 on March 17, 2009, 01:09:47 pm
      Also, nearly all formulas used in physics and chemistry that involve temperature use Celsius or Kelvin, and inserting Fahrenheit would throw off the answers completely, which is part of why F is considered arbitrary.

      I'm pretty sure that is totally untrue...

      Except when it causes space shuttles to explode.
      That doesn't mean the formulas don't work, it just means there's a conversion factor that people can forget.  That's like saying that the formula for acceleration due to gravity changes depending on whether you're using feet or meters.
      Oh yes, it will work if you have a conversion factor.  But all that does is convert Fahrenheit to whatever unit is appropriate before running it through the rest of the equation.  I you use the ideal gas law to find the temperature of a gas, your answer will always be Kelvin scale.

      Only if you're using 8.3144 for R and your pressure and volume are also in (appropriately scaled, i.e. kPa vs L or Pa vs m^3) SI units. SI in, SI out.

      If I take pressure in PSI, volume in cubic feet, and quantity in "lbmol" (1 lbmol = 453.59 mol) I can use 10.731 for R and get my answer in the Rankine (degrees fahrenheit vs absolute zero) scale. And this is a consistent unit set (feet, pound-force, lbmol, rankine) no different from the SI being a consistent unit set (metres, newtons, mol, kelvin), and there are no conversion factors - just a physical constant that has a different value in different units.

      Or did you think there was something sacred about 8.3144 in particular and therefore the ideal gas law "uses kelvin" (along with meters and pascals) rather than being a system-agnostic formula?

      There are also _no_ physics formulas that use the celsius scale directly. The only significant issue with the "american" system in isolation is the fact that there are two different systems based on different interpretations of a "pound" (the metric system used to also have an alternate system using the "kilopond" (9.8 N) as a unit of force, and the "hyl" (9.8 kg) as the unit of mass), and that can be avoided by being specific about which one you use

      At the end of the day, there's no REAL superiority to 1/299724258 the distance light travels in a second vs 1/983571056.43 that distance, or to the weight of one lump of metal vs another (though, the pound is nowadays defined as an exact fraction of the kilogram's lump of metal), or 1/273.16 of the temperature of the triple point of standard water vs 1/491.688 of that temperature, or a zero point 1/27316 less than that vs one 32018/491688 less. And of course both share the definition of the second as 9192631770 times the transition between two arbitrarily chosen states of an arbitrarily chosen element. The point is, these are all completely arbitrary numbers (and/or lumps of metal) with no real mathematical basis. Yeah, the nice round decimal number ten million metres from pole to equator through Paris sounds impressive, until you think that it was only chosen as ten million to get a length close to a yard anyway, there's about an extra 2km because they were off in their measurement, and why Paris anyway or Earth for that matter?
      Title: Re: Change temperature to Celsiusm
      Post by: Kilo24 on March 17, 2009, 04:27:15 pm
      There is a good argument against using non-SI measurements: they make shuttles crash. 
      It was more a problem with human stupidity.  That's generally a bit harder to control for than notation conventions.

      As we all know, that is merely a concern of NASA engineers and rocket scientists.   Bugs flee in terror before The Great Toady One's Blessed +5 Fingers of Relentless Coding.

      More seriously, how did he convert the real-world boiling/melting points into dt (dwarftemp)?  And what would be the problem in allowing us to tag our raw modifications with C, K or F to denote the real world temperatures to become dt?  It should be just a simple input patch to reading temperature from the raws.

      (And on a random note, it's Kelvin, not degrees Kelvin.  Fahrenheit and Celsius are a degree measurement, Kelvin's not because it starts at absolute zero.)
      Title: Re: Change temperature to Celsius
      Post by: Veroule on March 17, 2009, 04:41:24 pm
      Thank you Random for stating it so succintly.  Also the reason Paris was chosen was because the observer involved was in Paris, it is a matter of Relativity.

      Can -Kelvin exist in the real world?  Yes.  When the sum of the vectors involved in computing the temperatures of Relative substances have directions and velocities that result in it.  Temperature is a relative calcluation, just look at the glass formed on impact craters to understand this.  The specific temperatures of each object do not need to be anywhere near what is required to create glass, but the Relative velocities of those objects produces a discharge of energy (some of which forms as temperature) upon impact. It is easy to see it when the vectors result in conjuction, what is difficult to conceptualize if the disjunction.  Claiming it doesn't exist would require that most of Newtonian, Relativistic and Quantum mechainics be thrown away.  Once again I will say...Let us put the Physics aside.

      DF should use whatver units it wants, and allow for the raws to support multiple units.
      Title: Re: Change temperature to Celsius
      Post by: Martin on March 17, 2009, 06:40:55 pm
      A vote for Centigrade.

      While nothing below -273C makes sense, neither does anything above 6,000C. We don't need to recover the low end of a signed int16 any more than we need to use the high end. And I don't see any point to fractional temps since they'll never come into play in a meaningful way.

      Centigrade is the most common and straightforward measure, results in the least hassle, and at least simplifies some things in the code by simply looking for the high bit to see if water should be freezing or liquid.
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on March 17, 2009, 06:57:32 pm
      A vote for Centigrade.

      While nothing below -273C makes sense, neither does anything above 6,000C. We don't need to recover the low end of a signed int16 any more than we need to use the high end. And I don't see any point to fractional temps since they'll never come into play in a meaningful way.

      Centigrade is the most common and straightforward measure, results in the least hassle, and at least simplifies some things in the code by simply looking for the high bit to see if water should be freezing or liquid.
      DF should use whatver units it wants, and allow for the raws to support multiple units.
      Read it!  >:(
      Title: Re: Change temperature to Celsius
      Post by: RAM on March 17, 2009, 08:03:56 pm
      Celsius:
      It is simple:
      Step 1: Take the temperature required for a 1x1x1 cube to freeze a 100x100x100 cube in a single frame, and call that 0.
      Step 2: Take the temperature required for a 1x1x1 cube to melt a 100x100x100 cube in a single frame, and call that 1100.
      Step 3: Store temperature as a binarysigned number integer, it will save on processing power...
      Step 4: Have fun!

      Fahrenheit: Take the highest mean temperature recorded at any one moment in Boatmurdered, use that figure as 100. Take the lowest mean temperature recorded at any one moment in Nist Akath, that will be the 0 point. Use a sign.

      Kelvin: A single 1x1x1 grid at 0 will cause everything in an entire world map of maximum size to become freezing in a single frame. 100 is the melting point of dwarf. No sign.

      Me? I would rather not have to deal with negatives trying to bring me down...
      Title: Re: Change temperature to Celsius
      Post by: ShadeJS on March 17, 2009, 08:59:51 pm
      Well, I'm a selfish European player that would really prefer Celsius. ;)

      Well, I'm a selfish Canadian player that would really prefer Celsius. ;)

      Oh, and: http://www.metric4us.com/
      Title: Re: Change temperature to Celsius
      Post by: Martin on March 17, 2009, 10:28:25 pm
      DF should use whatver units it wants, and allow for the raws to support multiple units.
      Read it!  >:(
      I did. Why make it harder to distribute mods when each one may use a different set of units? Why introduce that kind of code complexity when we're talking about a linear scaling from one to the other? Why open up the possibility that someone will pick a totally stupid set of units that overflows and crashes DF? Do we really want Toady to add code that will constantly convert among an arbitrary number of temperature scales when everyone already complains about the processor load of running temperature as it is?

      Put another way, what is the benefit to the game of having more than one scale, other than to avoid a bit of inconvenience for a handful of modders - and an inconvenience that a 3rd grader could overcome?

      (And we already have 0 Kelvin implemented in DF. It's called the space bar.)
      Title: Re: Change temperature to Celsius
      Post by: Random832 on March 17, 2009, 11:17:56 pm
      I did. Why make it harder to distribute mods when each one may use a different set of units? Why introduce that kind of code complexity when we're talking about a linear scaling from one to the other? Why open up the possibility that someone will pick a totally stupid set of units that overflows and crashes DF? Do we really want Toady to add code that will constantly convert among an arbitrary number of temperature scales when everyone already complains about the processor load of running temperature as it is?

      Um... read it again; none of what you just said was in the proposal - what was proposed was to use one scale (maybe the one in use now, maybe something with smaller units for precision, who cares) internally within DF, and convert it from a fixed set of scales (C, F, and K) _once_ when reading from the raws. I.e. nothing changed internally but [HOMEOTHERM:99F] is equivalent to [HOMEOTHERM:10067].
      Title: Re: Change temperature to Celsius
      Post by: Martin on March 17, 2009, 11:50:56 pm
      I did. Why make it harder to distribute mods when each one may use a different set of units? Why introduce that kind of code complexity when we're talking about a linear scaling from one to the other? Why open up the possibility that someone will pick a totally stupid set of units that overflows and crashes DF? Do we really want Toady to add code that will constantly convert among an arbitrary number of temperature scales when everyone already complains about the processor load of running temperature as it is?

      Um... read it again; none of what you just said was in the proposal - what was proposed was to use one scale (maybe the one in use now, maybe something with smaller units for precision, who cares) internally within DF, and convert it from a fixed set of scales (C, F, and K) _once_ when reading from the raws. I.e. nothing changed internally but [HOMEOTHERM:99F] is equivalent to [HOMEOTHERM:10067].

      Fair enough. But it still doesn't address dealing with multiple units across mods (stone mod 1 uses F and stone mod 2 uses C, etc making it harder to maintain consistency across files.) And again, what is the benefit to offering multiple options like that? Is it really that hard to work in one set of units?
      Title: Re: Change temperature to Celsius
      Post by: Silverionmox on March 18, 2009, 06:28:17 am
      A uniform standard would be the best I think.


      online conversion of all kinds of units (http://www.thomasglobal.nl/tools/Default.asp?bhcp=1)
      Title: Re: Change temperature to Celsius
      Post by: Random832 on March 18, 2009, 07:36:21 am
      Fair enough. But it still doesn't address dealing with multiple units across mods

      Eh? One mod uses [MELTING_POINT:1999F] another uses [MELTING_POINT:1093C], these both translate to an in-game value of 11967; what possible consequences would this have?
      Title: Re: Change temperature to Celsius
      Post by: Granite26 on March 18, 2009, 08:43:51 am
      Well, I'm a selfish European player that would really prefer Celsius. ;)
      Well, I'm a selfish Canadian player that would really prefer Celsius. ;)

      A world standard is the best (read:only valid) argument that's been made so far.

      Honestly, I can envision the game where the materials raws are all in C (physical properties lists are easier to find in C), the creatures HomeoTherms and natural temps are all in F(easier for the American dev to use), the game uses a K derivitive to store values, and reports the current outside temperature in F (or C if you flip that bit.)
      Title: Re: Change temperature to Celsius
      Post by: RAM on March 18, 2009, 09:56:55 am
      A uniform standard would be the best I think.


      online conversion of all kinds of units (http://www.thomasglobal.nl/tools/Default.asp?bhcp=1)

      I had a look at this and it doesn't seem to convert my own imaginary units(Hey, there is nothing wrong with imagining units...)...

      Converting at all would probably invalidate all previous data files, and possibly saved games/maps too, if it was me I wouldn't want the risk unless it was tacked onto an already major update. if it was changed then there are two options, use a familiar measurment, or use a D.F. measurement. As for the familiar ones, Fahrenheit is only advantageous to those who are familiar with it, Celsius is only advantageous to those who are familiar with it and those who want to manipulate water, and Kelvin is only advantageous to those who don't want negatives, or want to deal with 0 Kelvin.

      A system developed specifically for dwarf fortress could be very useful, it is a fictional environment which can have it's own laws. The melting point of magma could be lower then the melting point of water, water could be a liquid when cold, then as heat is applied it could turn into a gas, and then a solid, and all of this could occur at whatever arbitrary temperature is chosen. The more that Dwarf Fortress differs from familiar conditions the greater the extent to which a familiar temperature scale will be misleading.

      So What are the options:
      Fahrenheit: Good if you are familiar with it, and it seems that Toady is, and Toady has earned the right to use whatever system Toady wants...
      Celsius: Well, it seems to be popular amongst humans, and water probably has the greatest combination of temperature-sensitivity and relevance to the game...
      Kelvin: With magical heat sinks the whole thing about not worrying about negatives is gone, so unless some significance is implemented for absolute zero, it isn't really all that appetising.
      Pick an arbitrary temperature as 0 and use the same units as Fahrenheit: Useful if you are familiar with Fahrenheit and like some element of the game as an anchor. But changing the 0 point messes up all the familiar values...
      The same seems true when applied to Celsius and Kelvin.
      Picking 2 significant temperatures within D.F. and picking arbitrary numbers to represent them, then plotting a direct progression between them to develop a scale: Could take alot of getting used to, but knowing that water freezes at 0 and magma will always be at 1000 could be useful...
      Pseudo Kelvin, setting 0 to the point at which getting colder stops having any significant effect, and then importing a scale: No negatives is nice, but if you can't handle negatives then you probably won't be doing much modding, and most useful values will be quite obscure...
      Blue Monkey! 666 = the temperature at which the sky turns yellow with purple polka-dots, 3 = the sound of the ocean as it turns into meatloaf, the scale is generated by progressing negatively from 9, alternating between a logarithmic and exponential progression, multiplying by 12 every christmas, until it wraps around and reaches 16: This is useful if you are making an artefact, or if they are watching you, or if your -carp leather loincloth- was too heavy to wear any more...
      Title: Re: Change temperature to Celsius
      Post by: Random832 on March 18, 2009, 12:13:23 pm
      A uniform standard would be the best I think.


      online conversion of all kinds of units (http://www.thomasglobal.nl/tools/Default.asp?bhcp=1)

      I had a look at this and it doesn't seem to convert my own imaginary units(Hey, there is nothing wrong with imagining units...)...

      The only quantity I can think of with imaginary units is reactance, which is only measured in imaginary ohms and thus needs no conversion.

      Quote
      Converting at all would probably invalidate all previous data files

      Only if the internal representation is changed - accepting new formats in the raws would work fine.
      Title: Re: Change temperature to Celsius
      Post by: Grek on March 18, 2009, 02:23:36 pm
      Voting for keeping Fahrenheit+10K internally. That scale means we don't need decimals for HOMEOTHERM values nor negative numbers if there's ever a need for supernatural cold.  This will make the game go faster, even if it is totally arbitrary.
      Title: Re: Change temperature to Celsius
      Post by: Random832 on March 18, 2009, 02:34:39 pm
      Voting for keeping Fahrenheit+10K internally. That scale means we don't need decimals for HOMEOTHERM values nor negative numbers if there's ever a need for supernatural cold.  This will make the game go faster, even if it is totally arbitrary.

      How will it make the game go faster? Processors have both signed and unsigned integer arithmetic already, and "decimals" just means using F*10 instead of F, it doesn't mean having to go floating point.
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on March 18, 2009, 03:57:28 pm
      A uniform standard would be the best I think.


      online conversion of all kinds of units (http://www.thomasglobal.nl/tools/Default.asp?bhcp=1)

      I had a look at this and it doesn't seem to convert my own imaginary units(Hey, there is nothing wrong with imagining units...)...

      Converting at all would probably invalidate all previous data files, and possibly saved games/maps too, if it was me I wouldn't want the risk unless it was tacked onto an already major update. if it was changed then there are two options, use a familiar measurment, or use a D.F. measurement. As for the familiar ones, Fahrenheit is only advantageous to those who are familiar with it, Celsius is only advantageous to those who are familiar with it and those who want to manipulate water, and Kelvin is only advantageous to those who don't want negatives, or want to deal with 0 Kelvin.

      A system developed specifically for dwarf fortress could be very useful, it is a fictional environment which can have it's own laws. The melting point of magma could be lower then the melting point of water, water could be a liquid when cold, then as heat is applied it could turn into a gas, and then a solid, and all of this could occur at whatever arbitrary temperature is chosen. The more that Dwarf Fortress differs from familiar conditions the greater the extent to which a familiar temperature scale will be misleading.

      So What are the options:
      Fahrenheit: Good if you are familiar with it, and it seems that Toady is, and Toady has earned the right to use whatever system Toady wants...
      Celsius: Well, it seems to be popular amongst humans, and water probably has the greatest combination of temperature-sensitivity and relevance to the game...
      Kelvin: With magical heat sinks the whole thing about not worrying about negatives is gone, so unless some significance is implemented for absolute zero, it isn't really all that appetising.
      Pick an arbitrary temperature as 0 and use the same units as Fahrenheit: Useful if you are familiar with Fahrenheit and like some element of the game as an anchor. But changing the 0 point messes up all the familiar values...
      The same seems true when applied to Celsius and Kelvin.
      Picking 2 significant temperatures within D.F. and picking arbitrary numbers to represent them, then plotting a direct progression between them to develop a scale: Could take alot of getting used to, but knowing that water freezes at 0 and magma will always be at 1000 could be useful...
      Pseudo Kelvin, setting 0 to the point at which getting colder stops having any significant effect, and then importing a scale: No negatives is nice, but if you can't handle negatives then you probably won't be doing much modding, and most useful values will be quite obscure...
      Blue Monkey! 666 = the temperature at which the sky turns yellow with purple polka-dots, 3 = the sound of the ocean as it turns into meatloaf, the scale is generated by progressing negatively from 9, alternating between a logarithmic and exponential progression, multiplying by 12 every christmas, until it wraps around and reaches 16: This is useful if you are making an artefact, or if they are watching you, or if your -carp leather loincloth- was too heavy to wear any more...
      Just how does this simplify temperature in DF modding?  The whole point of this is to make modding easier.

      Why can't the game just translate Celsius into DF?  Why can't it do that with other units like Kelvin and Skantine? (not sure if that's spelled correctly).  Why can't decimals be used in the real-world temperature scales?  What is the problem with that and why are people still arguing?
      Title: Re: Change temperature to Celsius
      Post by: 0x517A5D on March 18, 2009, 07:56:28 pm
      We sure are an argumentative bunch, aren't we?

      I withdraw the suggestion completely.  It's fine the way it is.

      Whaddaya gonna do about that, huh?
      Title: Re: Change temperature to Celsius
      Post by: Duke 2.0 on March 18, 2009, 08:04:44 pm
      We sure are an argumentative bunch, aren't we?

      I withdraw the suggestion completely.  It's fine the way it is.

      Whaddaya gonna do about that, huh?
      I OPPOSE THIS ON ALL COUNTS!
       You are wrongidy wrong wrong.
       And I am right.
       Clearly.
      Title: Re: Change temperature to Celsius
      Post by: zchris13 on March 18, 2009, 08:05:23 pm
      GREAT THING THAT WE HAVE A SAVE COMPATABILITY BREAK WITH THE NEXT UPDATE. *WINK WINK.
      Title: Re: Change temperature to Celsius
      Post by: Sowelu on March 18, 2009, 08:25:43 pm
      Yeah, reading multiple formats from the raws would totally be the dog's knees.  I am in favor.

      Only issue there is that it turns a "read an int from this tag" into "read a string from this tag and convert".  NBD.
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on March 18, 2009, 08:56:30 pm
      Yeah, reading multiple formats from the raws would totally be the dog's knees.  I am in favor.

      Only issue there is that it turns a "read an int from this tag" into "read a string from this tag and convert".  NBD.
      Well, that only happens when opening DF.  The data/objects folder (which holds the creature data the game uses) would have the internal values.  Basically, it's the same as any old tag, just taking it up a level.
      Title: Re: Change temperature to Celsius
      Post by: sweitx on March 19, 2009, 12:03:17 am
      I say we just let Toady decide to use whatever scale he wishes in the game.  Other then familiarity, there is no advantage in using one system over another.  Although I like the ideal of a temperature scale called Urist.

      0 Urist - the temperature at which the mixture of 4 dwarven alcohol in equal amount freezes.
      100 Urist - the temperature at which the same mixture above boils.

      Dwarves will like any temperature between 0~100, said dwarves will have alcohol.
      Title: Re: Change temperature to Celsius
      Post by: RAM on March 19, 2009, 02:08:34 am
      I say we just let Toady decide to use whatever scale he wishes in the game.  Other then familiarity, there is no advantage in using one system over another.  Although I like the ideal of a temperature scale called Urist.

      0 Urist - the temperature at which the mixture of 4 dwarven alcohol in equal amount freezes.
      100 Urist - the temperature at which the same mixture above boils.

      Dwarves will like any temperature between 0~100, said dwarves will have alcohol.

      I like it!
      Title: Re: Change temperature to Celsius
      Post by: Pilsu on March 19, 2009, 12:16:10 pm
      I'm pretty sure it wouldn't help performance if the game had to constantly convert Fahrenheit, Celsius and Kelvin into whatever just because you were too lazy to punch in the homeotherm in Kelvin
      Title: Re: Change temperature to Celsius
      Post by: Kilo24 on March 19, 2009, 12:37:32 pm
      It just converts them once per new object when reading in the information from the raws.  I doubt that it would be significant, compared to pathfinding or fluid dynamics.
      Title: Re: Change temperature to Celsius
      Post by: Mel_Vixen on March 19, 2009, 12:47:11 pm
      It would be nanoseconds on the loading/worldgen screen.
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on March 19, 2009, 03:36:26 pm
      I say we just let Toady decide to use whatever scale he wishes in the game.  Other then familiarity, there is no advantage in using one system over another.  Although I like the ideal of a temperature scale called Urist.

      0 Urist - the temperature at which the mixture of 4 dwarven alcohol in equal amount freezes.
      100 Urist - the temperature at which the same mixture above boils.

      Dwarves will like any temperature between 0~100, said dwarves will have alcohol.
      >:(
      You did read the thread, right?  You're not the first person to have said this.  We are past using one scale.  We have established that the internal system could use the same scale it uses now, with the raws accepting multiple scales and translating them, and everyone would be happy.  As it stands, you don't actually see the specific temperatures while playing the game, and that's not likely to change.

      @ Pilsu: 
      Yeah, reading multiple formats from the raws would totally be the dog's knees.  I am in favor.

      Only issue there is that it turns a "read an int from this tag" into "read a string from this tag and convert".  NBD.
      Well, that only happens when opening DF.  The data/objects folder (which holds the creature data the game uses) would have the internal values.  Basically, it's the same as any old tag, just taking it up a level.
      It wouldn't be doing that every second of playing the game, in other words.
      Title: Re: Change temperature to Celsius
      Post by: ToonyMan on March 19, 2009, 03:52:04 pm
      I would strongly recommend the ToonyMan Scale.



      0 degres = like a popsicle dead
      1 degree = alive
      2 degree = crispy crunch dead



      Spoiler (click to show/hide)
      Title: Re: Change temperature to Celsius
      Post by: KrunkSplein on March 19, 2009, 04:48:43 pm
      I would just like to state, for the record, how absolutely absurd it is for there to be a 7-page discussion on what method of reporting temperature would be the best.  You're talking about a minor presentation issue, the 'solutions' of which require breaking save compatibility.

      For Armok's sake, not everyone has temperature enabled, let alone cares enough about it to warrant the change!
      Title: Re: Change temperature to Celsius
      Post by: Silverionmox on March 19, 2009, 04:52:32 pm
      It does matter for intensive modding, though. I'd deplore being necessitated to convert all temperatures to °F after researching and thinking with them in °C.
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on March 19, 2009, 04:53:44 pm
      You're talking about a minor presentation issue, the 'solutions' of which require breaking save compatibility.
      The method I keep bringing up doesn't, which is why I keep angrily insisting on it when people suggest a save-breaking one.  It would only make any mods utilizing the feature incompatible with previous versions, which happens quite often.
      Title: Re: Change temperature to Celsius
      Post by: Random832 on March 20, 2009, 09:18:41 am
      You're talking about a minor presentation issue, the 'solutions' of which require breaking save compatibility.

      It's a modding issue, too, and no it doesn't (well, except for the proposals to change the internal unit to allow more range or more resolution - which is not the main focus of the thread). It doesn't even require breaking RAW compatibility, since no existing raws follow a temperature with a letter.

      And guess what? Save compatibility is already being broken this release. If a save-breaking change is going to be made, now is the time.
      Title: Re: Change temperature to Celsius
      Post by: PTTG?? on March 22, 2009, 12:16:40 am
      I would just like to state, for the record, how absolutely absurd it is for there to be a 7-page discussion on what method of reporting temperature would be the best.  You're talking about a minor presentation issue, the 'solutions' of which require breaking save compatibility.

      For Armok's sake, not everyone has temperature enabled, let alone cares enough about it to warrant the change!

      Well, remember, DF is in Alpha, so you can't expect it to be released and patched in the same way as a finished game. The DF we have today is only 28% complete, and will mutate quite a bit before it's done. Small changes like these will be essential to this process, and really do improve the game.
      Title: Re: Change temperature to Celsius
      Post by: inaluct on March 22, 2009, 01:03:47 am
      I'm throwing my endorsement in on this.
      Title: Re: Change temperature to Celsius
      Post by: Noble Digger on March 22, 2009, 09:02:09 pm
      I can't help but feel that celsius would be the dumbest of the options.  A uint for Kelvin would be nice (or a float, or uint for 10ths of a kelvin or whatever).  Or Farenheit, which is more familiar to most Americans.  As the game is in English, there's more potential players familiar with that scale.  Plus, I'm selfish and don't like Celsius for anything except talking about water.
      BAD BAD BAD!  The US's denial of the SI system to cling to the obsolete English system is one reason most of the world thinks the US is stupid.  America must abandon the English system, lest it fall into being a minor country of little importance.  And really, English is taught everwhere.  Making the game use Fahrenheit for modding would hurt more people than it would help.

      @Appelgren:  We're talking about modding here and the actual values.  The game interface can continue the way it is.

      Uh ohhhh... Don't forget...

      MANY people in the USA use SI measurement for everything when it's important or official, and even among those who use the imperial system there are some things that metric\SI is just better for, and even rednecks will use it. The problem is that our official federal position is to use and teach the imperial system. The last time they tried to switch us all over to SI, there was too much ignorant fear that switching to the metric system would promote communism or something. People literally shot at the road signs which listed distances in KM. Between that, and laziness, and stubbornness, and the cost that would be involved for our millions of machine tool workers and other related jobs, the point is that most people alive today had nothing to do with any of it and use the SI system if they know what's good for them.

      I want to remind you: "The US" is not a person. 350,000,000 or more live in this country and we don't like each other, work together very often, or agree about much of anything, please don't generalize about the population of this mongrel country thxu :)

      As for the display of temperature? The game never displays temperature at all, the choice of units only matters to modders and to Toady, and honestly the small conversion required when adding a single new temperature value isn't a big deal compared to the work of changing all the stored values in the raws over to a new system (though this would be a 1-time deal) because it doesn't affect gameplay or presentation at all. If Toady decided to do so anyway, I would hope he would use kelvin, as it's the only absolute scale which would prevent modders from having to use negative temperature values. Negative values could and should be used for magic and other related temperature-sapping things imho.
      Title: Re: Change temperature to Celsius
      Post by: eerr on March 23, 2009, 02:03:57 am
      the US will stick to the temprature adjusted for the people, by the people.
      scientists can centigrade it up or farenheit boogey if they want.

      but the facts are, fareight is alot more useful to non-technical pursuits like weather, ovens, and other low heat or high heat items.
      Title: Re: Change temperature to Celsius
      Post by: Silverionmox on March 23, 2009, 02:28:42 am
      but the facts are, fareight is alot more useful to non-technical pursuits like weather, ovens, and other low heat or high heat items.
      I don't see why. It's a matter of habit. Fahrenheit temperatures are meaningless for someone used to Celsius. While Celsius at least gives a clear clue about freezing/non-freezing.
      Quote from: Noble Digger
      Negative values could and should be used for magic and other related temperature-sapping things imho.
      From a magical viewpoint, there should be two values: one of the actual temperature of the object, and one for the temperature difference it causes. That way you can have objects of a normal temperature that nevertheless suck heat out of the environment. Near 0 K objects would effectively cool their environs anyway in a realistic temperature system.
      Title: Re: Change temperature to Celsius
      Post by: RAM on March 23, 2009, 02:47:27 am
      Celsius is superior for food preparation and weather, the freezing and boiling points of water are very relevant to those pursuits, Fahrenheit really has no absolute values with any relevance and if the finer scale of Fahrenheit is a significant advantage, then you should probably be going beyond integers anyway, for example: body temperature... I have no idea what is meant by low heat or high heat items.

      Interesting idea, although I can't really see it coming up in many scenarios, perhaps the same effect could be achieved by having a flag that states that an entities temperature is not influenced by external forces...
      Title: Re: Change temperature to Celsius
      Post by: pndrev on March 23, 2009, 03:30:38 am
      Celsius all the way. Or Kelvin, at least.
      Title: Re: Change temperature to Celsius
      Post by: Random832 on March 23, 2009, 08:48:28 am
      Celsius is superior for food preparation and weather, the freezing and boiling points of water are very relevant to those pursuits

      If the boiling point of water is relevant to your weather, tell me where this place is so I can stay far far away from it in the summer ;D

      Quote
      Fahrenheit really has no absolute values with any relevance

      Sure it does - 32 and 212. Well, for pure water at atmospheric pressure, anyway, but Celsius has the same problem. The main advantage to having a scale from 0 to 100 is that you know easily the percentage - but there's nothing meaningful to halfway or 3/4 of the way or 10% from freezing to boiling, so there's no superiority to 0 and 100 vs 32 and 212 for those two temperatures.
      Title: Re: Change temperature to Celsius
      Post by: PTTG?? on March 23, 2009, 11:41:32 am
      Yeah, it's all the redneck's fault we're still in the dark age of measurement. I don't doubt for a moment that the metric system was connected to communism.

      Well, it's not like it'd be impossible to have an init switch from "metric" to "real" values.
      Title: Re: Change temperature to Celsius
      Post by: doctorspoof on March 23, 2009, 01:03:49 pm
      In all honesty, i don't mind the DF scale for temperature. If we can get used to strange tags, and the way the raws work, i'm sure we can get to grips with a slightly offset temperature scale. You yanks have been using one for ages anyway (yay for a snide dig at Fahrenheit) :P
      There's a conversion on the DFwiki page about it, and i'm sure Toady had a reason for implementing it in the first place. Probably something along the lines of being unable to have negative values. Which would kinda stump ice warriors ^^

      Even if it switched it kelvin, which imho would seem second best value system, it's still got the problem of things that are less than theoretical absolute zero. Seems non-sensical, but if you want a mega-badass ice demon or something, you only want the best ;)
      Title: Re: Change temperature to Celsius
      Post by: LumenPlacidum on March 23, 2009, 01:19:16 pm
      >:(
      You did read the thread, right?  You're not the first person to have said this.  We are past using one scale.  We have established that the internal system could use the same scale it uses now, with the raws accepting multiple scales and translating them, and everyone would be happy.  As it stands, you don't actually see the specific temperatures while playing the game, and that's not likely to change.

      While I think that the conversion system is a good idea, please don't use "we" like you're speaking for everyone as there's clearly no real consensus on the issue in the forum (evidence: the thread goes on...).

      The method I keep bringing up doesn't, which is why I keep angrily insisting on it when people suggest a save-breaking one.  It would only make any mods utilizing the feature incompatible with previous versions, which happens quite often.

      None of us really have any right to insist on anything that goes on with the game.  It would be presumptuous to try.

      I don't mean to pick on you, LegoLord, but it seems like whatever anger there is in the thread is on account of this attitude.

      The most compelling argument I've read here so far is that it's easier to find melting points and boiling points for different materials in SI units than it is otherwise.  If the ease of adding in temperatures for materials does not outweigh the hassle of making the shift, then I don't think it should be done.  There's little gain in this since it's a black-box system anyway once the game is running.  There are other changes that would be more compelling and probably more interesting than typing in a whole bunch of numbers.

      It seems like if anyone were to really try to push for the SI system, you should go through the raws and convert all the numbers yourself to make a transition as easy as possible, then post it.
      Title: Re: Change temperature to Celsius
      Post by: Silverionmox on March 23, 2009, 04:21:39 pm
      I don't doubt for a moment that the metric system was connected to communism.
      The metric system as we know it was introduced by revolutionary France. The same spirit gave rise to the Commmune of Paris, and formed a source of inspiration for Marx and the origin of the word communism.
      Title: Re: Change temperature to Celsius
      Post by: Duke 2.0 on March 23, 2009, 04:34:58 pm
      I don't doubt for a moment that the metric system was connected to communism.
      The metric system as we know it was introduced by revolutionary France. The same spirit gave rise to the Commmune of Paris, and formed a source of inspiration for Marx and the origin of the word communism.
      America was formed by a revolution. Communism was formed by a revolution. Thus, America is a communistic country.
      Title: Re: Change temperature to Celsius
      Post by: PTTG?? on March 23, 2009, 04:44:44 pm
      Perhaps I miss-wrote. I meant that I'm not suprised that someone invented a "connection" between communisim and Celsius.

      I don't think that there actually IS a connection- I'm just not surprised that somebody thought there was.

      Don't get the wrong impression of me, please.
      Title: Re: Change temperature to Celsius
      Post by: Duke 2.0 on March 23, 2009, 04:48:43 pm
       Terribly sorry. However, I could not miss the opportunity to show how idiotic the idea was. All of my cynicism is directed at the idea, not the speaker.
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on March 23, 2009, 05:45:39 pm
      It seems like if anyone were to really try to push for the SI system, you should go through the raws and convert all the numbers yourself to make a transition as easy as possible, then post it.
      I supported the suggestion that the raws accept multiple units (including Fahrenheit, DF, what ever), not that we just start using Celsius.  I don't see why there are people that aren't happy with that.  It means anyone could use whatever they wanted to.  The discussion seems pointless to me, too.

      And for the record, Noble Digger, I am American, so I can talk about it like that.  A lot of my teachers don't like the idea of the metric system.  The truth is that most Americans use English units for their daily life - it's the scientists and people of other internationally-working professions that use SI.
      Title: Re: Change temperature to Celsius
      Post by: doctorspoof on March 23, 2009, 05:53:21 pm
      The truth is that most Americans use English units for their daily life - it's the scientists and people of other internationally-working professions that use SI.

      You realise we use celsius, right?
      To my knowledge, we officially use all SI units, except on road signs, where we use y'olde imperial system of miles and yards.
      Informally though, yeah, most people do still use imperial system. Especially older generations.

      Aside from derailment..
      I haven't really been keeping track, but are you guys saying you want the raws to accept all temperature scales, or are you asking for a seperate conversion utility?
      Cos the raws are only notepad files... As far as i know they can't convert stuff. And i don't think the game will pick up letters (F for Fahrenheit, C for celsius, or whatever) in a numerical field.
      Is this what you guys want changed?
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on March 23, 2009, 06:05:00 pm
      The truth is that most Americans use English units for their daily life - it's the scientists and people of other internationally-working professions that use SI.

      You realise we use celsius, right?
      To my knowledge, we officially use all SI units, except on road signs, where we use y'olde imperial system of miles and yards.
      Informally though, yeah, most people do still use imperial system. Especially older generations.
      That last part, yes, is what I am talking about.  Officially we use SI, but really, we use English.
      Title: Re: Change temperature to Celsius
      Post by: Duke 2.0 on March 23, 2009, 10:25:40 pm
      Aside from derailment..
      I haven't really been keeping track, but are you guys saying you want the raws to accept all temperature scales, or are you asking for a seperate conversion utility?
      Cos the raws are only notepad files... As far as i know they can't convert stuff. And i don't think the game will pick up letters (F for Fahrenheit, C for celsius, or whatever) in a numerical field.
      Is this what you guys want changed?

       It would be best used ingame, as there are rather minor calculations Toady should know, having once been a math teacher. Yes, these are changes being asked so the RAWs will accept such letters.
       And while a text document is only storage, what we are asking is that when the game reads the files for the entity information, it would check for these signs and convert the number preceding them into DF units, dependent on what symbol was used.
      Title: Re: Change temperature to Celsius
      Post by: RAM on March 23, 2009, 11:37:35 pm
      Celsius is superior for food preparation and weather, the freezing and boiling points of water are very relevant to those pursuits

      If the boiling point of water is relevant to your weather, tell me where this place is so I can stay far far away from it in the summer ;D

      Quote
      Fahrenheit really has no absolute values with any relevance

      Sure it does - 32 and 212. Well, for pure water at atmospheric pressure, anyway, but Celsius has the same problem. The main advantage to having a scale from 0 to 100 is that you know easily the percentage - but there's nothing meaningful to halfway or 3/4 of the way or 10% from freezing to boiling, so there's no superiority to 0 and 100 vs 32 and 212 for those two temperatures.

      Ambient temperature is not boiling point, but it does have the potential to come up when analysing weather patterns. It is particularly relevant with respect to percentages, as temperature has an influence on humidity...
      Title: Re: Change temperature to Celsius
      Post by: Silverionmox on March 24, 2009, 07:05:24 am
      I don't doubt for a moment that the metric system was connected to communism.
      The metric system as we know it was introduced by revolutionary France. The same spirit gave rise to the Commmune of Paris, and formed a source of inspiration for Marx and the origin of the word communism.
      America was formed by a revolution. Communism was formed by a revolution. Thus, America is a communistic country.
      The American revolution was instigated by wealthy bourgeois wanting a larger share of the pie. The French one had other axes to grind, and the bad living conditions of the Parisian lower classes fueled it. What they had in common was the idea that a bad ruler can and should be deposed by his subjects.
      Title: Re: Change temperature to Celsius
      Post by: WJLIII3 on March 24, 2009, 11:19:49 am
      If we want a very dwarfy system, I suggest an exponential curve mapping Dwarf scale to Kelvin.  I'll explain why at the bottom.

      K = aebD + c
      or
      D = 1/b * ln((K - c) / a)

      where a, b, and c are computed constants, D is degrees Dwarf, and K is degrees Kelvin.

      The computation of the constants should come from this system of equations (I tried to solve it last night, but I suck at solving non-linear systems):

      273.15 = ae0b + c
      373.1339 = ae1000b + c
      1700.0 = ae2000b + c

      The result:  A temperature scale in which water freezes at 0, melts at 1000, and the average temperature of magma is 2000.  Certainly these would be considered the three most important temperatures for a dwarf?  And even if water freezing/melting is not as important as some other temperature, certainly the temperature of magma is.  (And conveniently, as far as I am aware, magma is always exactly one temperature in DF.)


      Absolutely this.
      Title: Re: Change temperature to Celsius
      Post by: Duke 2.0 on March 24, 2009, 12:43:08 pm
      I don't doubt for a moment that the metric system was connected to communism.
      The metric system as we know it was introduced by revolutionary France. The same spirit gave rise to the Commmune of Paris, and formed a source of inspiration for Marx and the origin of the word communism.
      America was formed by a revolution. Communism was formed by a revolution. Thus, America is a communistic country.
      The American revolution was instigated by wealthy bourgeois wanting a larger share of the pie. The French one had other axes to grind, and the bad living conditions of the Parisian lower classes fueled it. What they had in common was the idea that a bad ruler can and should be deposed by his subjects.
      Thus both commies.
       Dammit, you know as well as I do how bad the argument I'm attacking is.
      Title: Re: Change temperature to Celsius
      Post by: ToonyMan on March 24, 2009, 02:20:30 pm
      TOONYMAN!
      Title: Re: Change temperature to Celsius
      Post by: doctorspoof on March 24, 2009, 04:34:23 pm
      That last part, yes, is what I am talking about.  Officially we use SI, but really, we use English.

      IMPERIAL! IMPERIAL DAMNIT!
      :P
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on March 24, 2009, 05:54:46 pm
      Cos the raws are only notepad files... As far as i know they can't convert stuff. And i don't think the game will pick up letters (F for Fahrenheit, C for celsius, or whatever) in a numerical field.
      I missed this first time I read that.  No, that is not how the raws work.  The raws are indeed notepad files, BUT, and this is very important, the tags are converted into a game-readable form upon loading DF.  The game-readable form is stored in data/objects as opposed to raw/objects.  So the raws can essentially be twisted and beaten to work the way Toady wants them to.  The converter would read [20C] as . . . whatever 20 degrees Celsius is represented as in DF raws as of now.  To simplify things, it could be [HEATDAM_POINT:20:C] with the unit separated from the twenty with a colon.  Scale tags could be C (Celsius) F (Farenhiet), K (Kelvin), S (Skantine [sp?]), and D (Default).

      Why would you (all) not be happy with this, when it would allow anyone to effortlessly insert temperature values into the raws?  No looking up the conversion factor (which on the wiki doesn't work for celsius, from my experience) and needing to do the math, because the game would do it for you.

      Side note:  The imperial system is the English system.  AKA imperial because they forced it on their colonies (who didn't, though?).
      Title: Re: Change temperature to Celsius
      Post by: Mikademus on March 24, 2009, 09:15:23 pm
      Why would you (all) not be happy with this, when it would allow anyone to effortlessly insert temperature values into the raws? 

      You have missed the purpose of internet debate: it is not about finding a solution, it is about arguing and eventually invoking Hitler.
      Title: Re: Change temperature to Celsius
      Post by: SirHoneyBadger on March 24, 2009, 09:24:04 pm
      Hitler.

      I'm in favor of the Kelvin x 10 idea that somebody else mentioned, so I'd like to vote for that.

      I grew up with Farenheit, so it's what I know, but I'm willing to learn something different, if it makes the game more broadly functional.

      That and, as much as I enjoy the old measuring systems, I agree that it's about damn time the U.S. got with the program on units of measurement (and did away with daylight savings time).
      Title: Re: Change temperature to Celsius
      Post by: Musluk on March 25, 2009, 01:38:55 am
      I support Toonyman on this :P

      Well... I'm from a SI centralized country. I outright dislike Fahrenheit. My mind can use ten's exponents, but not a scale between a positive integer and a negative integer for everyday calculations. That being said, conversion isn't that much of a problem, really, with a calculator in reach (Hint - there is one in windows and mac, I assume Linux too). But I think it should be unique to the dwarves, not just Dwarven Fahrenheits. Exponential base 'stretched' on dwarven units is a good idea, but in effect it's even more complicated for a modder (even with a standard windows calculator).

      Concluding, if we're to have an arbitrary point, it should be either related to dwarves themselves, or beer. There is a constant in every dwarf's life, it's alcohol intake. If it's too much work, then I'd ask for the 39C 67F or 10067D style - everyone, including Toady, would get what they want - to understand how hot or cold the thing is in a glance.
      Title: Re: Change temperature to Celsius
      Post by: SirHoneyBadger on March 25, 2009, 03:42:49 am
      I support the idea of a "dwarfcentric" measuring system.

      It's one of the aspects of inventing/codifying my own ideas about dwarfs that appealed to me.

      For instance, my dwarfs have 6 fingers on each hand (2 of the fingers are thumbs), so they use a base 12 numerical system.

      At what temperature will alchohol evaporate from beer? At what temperature does beer freeze solid?
      Title: Re: Change temperature to Celsius
      Post by: Mikademus on March 25, 2009, 09:58:42 am
      For instance, my dwarfs have 6 fingers on each hand (2 of the fingers are thumbs), so they use a base 12 numerical system.

      Tom Leher: "Base-eight is just like base-10, only you're missing one finger on each hand".
      Title: Re: Change temperature to Celsius
      Post by: Duke 2.0 on March 25, 2009, 10:33:07 am
       I personally have nothing against SI, and it would be better for the world to have it as the system. However, I must continue to fight this attitude of the US being backwards for it's measuring system and being considered idiots for not doing what the cool kids are doing. We can live together. There is no real trouble to us using a different system if our scientists use the SI system.

       Unless our using a different system deeply offends you, please stop that. If you want us to change so much think of a rather pain-free way of doing it. Don't go about bashing us for not conforming.
      Title: Re: Change temperature to Celsius
      Post by: SirHoneyBadger on March 25, 2009, 01:56:22 pm
      Kind of offends me, though, and I was born here.

      It's not like Farenheit was invented here or anything, let alone a superior system. It was invented in 1724, by a German guy, who lived most of his life in the Dutch Republic.

      Celsius, the metric system, etc. are just better systems, and it's the fault of our educational system-and I'm sure more than a few arrogant politicians that weren't that educated either-that we've got it.

      It's not "American", it's just lazy, and perpetuated by stubborn isolationism.
      The fact that it probably *does* make us look worse than we ought to, to other countries, is just another reason to get rid of it.
      Title: Re: Change temperature to Celsius
      Post by: Fieari on March 25, 2009, 03:10:20 pm
      The following rant has nothing to do with DF.

      Spoiler (click to show/hide)

      For DF, we don't have a display.  Modders can cope, although I can understand why it'd be nicer and easier to be able to specify.  But the thing is, I really don't want Toady to devote ANY resources to this for a while.  The game has been delayed enough as is!  I'd rather things be ten times as hard on modders (assuming that the same functionality is there) and Toady's work load drop by an insignificant fraction.
      Title: Re: Change temperature to Celsius
      Post by: Mikademus on March 25, 2009, 03:23:36 pm
      The following rant has nothing to do with DF.

      Spoiler (click to show/hide)

      I don't know if anyone here has seen the "eight stages of goatse", but that's sort of been my reaction (only prolonged over time) from seeing people desperately trying to defend Fahrenheit - going from utter disgust to deeply enjoying the sheer insanity of it:

      (http://www.the-elite.net/ClarkPage/Phases/pics/1-shock.jpg)
      (http://www.the-elite.net/ClarkPage/Phases/pics/2-disbelief.jpg)
      (http://www.the-elite.net/ClarkPage/Phases/pics/3-disgust.jpg)
      (http://www.the-elite.net/ClarkPage/Phases/pics/4-anger.jpg)
      (http://www.the-elite.net/ClarkPage/Phases/pics/5-curiosity.jpg)
      (http://www.the-elite.net/ClarkPage/Phases/pics/6-reconsideration.jpg)
      (http://www.the-elite.net/ClarkPage/Phases/pics/7-enchantment.jpg)
      (http://www.the-elite.net/ClarkPage/Phases/pics/8-approval.jpg)

      (Original page here (http://www.the-elite.net/ClarkPage/Phases/))
      Title: Re: Change temperature to Celsius
      Post by: Random832 on March 25, 2009, 03:36:29 pm
      The following rant has nothing to do with DF.

      Spoiler (click to show/hide)

      I don't know if anyone here has seen the "eight stages of goatse", but that's sort of been my reaction (only prolonged over time) from seeing people desperately trying to defend Fahrenheit - going from utter disgust to deeply enjoying the sheer insanity of it:

      I'm sure others feel the same way about people suggesting it's "disgusting" to point out that there's no inherent advantage to one arbitrary system over another arbitrary system.
      Title: Re: Change temperature to Celsius
      Post by: alfie275 on March 25, 2009, 03:53:12 pm
      I think that all scientists should us SI, I mean look at the mars lander that crashed, that cost more than $100,000,000, I also think that copuntries should get the words for numbers sorted out, for example in the US a billion is 1000 million but in UK it is a million million.
      Title: Re: Change temperature to Celsius
      Post by: Random832 on March 25, 2009, 04:29:32 pm
      for example in the US a billion is 1000 million but in UK it is a million million.

      No actually in all english speaking countries a billion is 1000 million. The UK hasn't used it to mean a million million since 1974.
      Title: Re: Change temperature to Celsius
      Post by: praguepride on March 25, 2009, 06:35:29 pm
      I never knew they did that anyway...

      the things you learn! AND KNOWLEDGE IS POWER!
      Title: Re: Change temperature to Celsius
      Post by: ToonyMan on March 25, 2009, 06:39:48 pm
      Ex-act-ly!
      Title: Re: Change temperature to Celsius
      Post by: Mikademus on March 25, 2009, 07:34:40 pm
      I think that all scientists should us SI, I mean look at the mars lander that crashed, that cost more than $100,000,000, I also think that copuntries should get the words for numbers sorted out, for example in the US a billion is 1000 million but in UK it is a million million.

      Well, ignoring the... ehrm... well, most of it, actually, I tend to use "milliard" instead of "billion". It is more correct and avoids potential misunderstanding (especially with Scandinavian languages) anyway, though any statement like that will attract the hounds.
      Title: Re: Change temperature to Celsius
      Post by: katana0182 on March 25, 2009, 08:21:13 pm
      Now if you want a universal, non-anthropocentric temperature scale, suitable to creatures whose planet has ammonia or methane in the place of liquid, solid, or gaseous water, you can use electron-volts.

      But for us Earthlings, we should change it to Kelvin, because you get to use uints. Set up conversion based on locale (K - 273 for celsius, I don't know for fahrenheit), overridable in the inits. Default to Fahrenheit for US, Burma, and Liberia. Default to Celsius for other Earthlings.
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on March 25, 2009, 08:30:28 pm
      I'm sure others feel the same way about people suggesting it's "disgusting" to point out that there's no inherent advantage to one arbitrary system over another arbitrary system.
      Allow me to restate:  Celsius is not arbitrary.  It is based on the melting and boiling points of water, one of the most important substances to human existence; it has a great influence on weather, we are largely composed of it, we cook with it, we play all kinds of sports on it, we fight with it, we use it in manufacturing . . . the list goes on.

      And to whoever complained about how Toady is behind on this game and doesn't need to waste time on this . . .

      This is a suggestion thread!  That is not the point of the discussion!  And if Toady thinks he can squeeze it in sometime before DF is done, he can do that if he wants!  If not, we wait 'till it's closer to done.  When it's implemented is really not the issue here. That's how this whole suggestion system works.  Now:

      Kelvin x10:  No reason for that.  DF has no display, so that would just give modders a slightly less unusual number to work with.  Same for any other new scale.  Being able to accept multiple scales would be solution to the OP's problem, which, despite this being the internet, we should be trying to work out.  If you have a better solution, say it.  If you see a problem with multiple scales, say it.  Don't just say "i vote for x system because y" because that'll leave someone else needing to translate all their numbers.  An init option would be absurd, as that could make using mods difficult.
      Title: Re: Change temperature to Celsius
      Post by: SirHoneyBadger on March 25, 2009, 08:32:42 pm
      Well, Kelvin x1 would also suit me.
      Title: Re: Change temperature to Celsius
      Post by: ToonyMan on March 25, 2009, 09:06:19 pm
      -5 Kelvin is my favorite temperature.
      Title: Re: Change temperature to Celsius
      Post by: Draco18s on March 25, 2009, 11:31:20 pm
      I think that all scientists should us SI, I mean look at the mars lander that crashed, that cost more than $100,000,000, I also think that copuntries should get the words for numbers sorted out, for example in the US a billion is 1000 million but in UK it is a million million.

      Just like to point out that that kind of mistake has happened more than once.  The last time it happened a guy noticed the mistake about 48 hours before the Hubble telescope went up and had it's mirror reground.  He got a bonus for it.

      Allow me to restate:  Celsius is not arbitrary.  It is based on the melting and boiling points of water, one of the most important substances to human existence; it has a great influence on weather, we are largely composed of it, we cook with it, we play all kinds of sports on it, we fight with it, we use it in manufacturing . . . the list goes on.

      Celsius is based on the freezing and boiling points of water at 1 atmosphere of pressure.  Once you leave sea level (or worse, leave Earth entirely) the system is meaningless.  On a planet slightly lighter than Earth (say, Mars) water freezes at around 0C, but boils away at 10C (depending on region, some places on Mars are extremely close to the Triple Point: 6.11 millibars).  That's not useful at all!
      Title: Re: Change temperature to Celsius
      Post by: eerr on March 26, 2009, 02:43:13 am
      why are we talking kelvin, celsius, and farenheight?
      have you guys forgotten?
      THIS IS DF!
      we measure tempratures in DF by
      normal, Body Temp, MAGMA, DEADLY HEAT and DEADLY WINTER.

      in an ideal scale, those all fall on units of somethin 00

      any other implementation of temprature is completely arbitrary
      to DF, and will require translation.
      Title: Re: Change temperature to Celsius
      Post by: SirHoneyBadger on March 26, 2009, 03:40:53 am
      Well, one cool thing about celsius is that it was invented by Anders Celsius, who came from Uppsala, Sweden, the heart of the Norse world. Celsius was also an astronomer, and came from a family of astronomers, who were probably all Viking navigators for like a thousand years before that.

      That's a lot more "dwarfy" than some guy from Danzig.
      Title: Re: Change temperature to Celsius
      Post by: RAM on March 26, 2009, 07:16:09 am
      For instance, my dwarfs have 6 fingers on each hand (2 of the fingers are thumbs), so they use a base 12 numerical system.

      Shouldn't they use base 6, for redundancy?

      I prefer million million, numbers in use seem to be getting larger, and an exponential scale is slightly more robust in that regard, once you start dealing with tetrawads and gigloads you will be wishing you hadn't insisted upon all those neat little clumps of 3, but scientific notation will probably kick in before then...

      I think the point of Kelvin x 10 is to allow finer temperature distinction without resorting to floaters...

      I am starting to suspect that Toady would spend more time reading this thread than Toady would spend scripting a new input and conversion code. Assuming that Toady will read this. Toady is probably more likely to waste Toady's time Reading this Toady thread if it mentions Toady alot, unless Toady ignores Toady threads that have Toady written Toady alot Toady Toady Toady...
      Title: Re: Change temperature to Celsius
      Post by: Random832 on March 26, 2009, 08:35:37 am
      Allow me to restate:  Celsius is not arbitrary.  It is based on the melting and boiling points of water

      Right - the melting point at 0 degrees and the boiling point at 99.974 degrees - how could I be so silly as to forget?

      Fahrenheit was originally based on the melting point of water (fixed to 32) and the average human body temperature (fixed to 96 - exactly 64 [26] degrees above 32).

      Now they're both based on an arbitrary fraction of the triple point of water (1/273.16 and 1/491.688) and an arbitrary zero point (in Celsius's case, .01K below that triple point, for Fahrenheit, -32.018°R below it) chosen more to match past flawed measurements than the actual properties of water.

      ---

      Anyway - there are three separate components to this thread:

      The internal representation - right now, this is a scale where one unit = 1°R (~0.56 K) and absolute zero is fixed at 9508.33. This could change, or it could stay the same. Changing it would break saves, but bear in mind he is in the middle of a save-breaking revision right now.

      The raws - the solution most people here seem to support is allowing a variety of units. A bare number (10067) would indicate the old scale, or the temperature could be given as 99F, 37.2C, or 310.3K

      And the last is temperature display - right now all we see is "It is cold", "It is freezing", but why not allow, for example, "It feels like mid-50s" with init set to give it in fahrenheit, or "It feels like about 12 degrees"* (for a temperature of 10030 and a wind-chill factor of ~7F/4C).

      Or even allow thermometers to be built (require a unit of mercury [easily extracted from cinnabar] and a glass tube?) to monitor the temperature at a specific point on the map.

      *How do you say imprecise temperatures in speech in celsius? With your larger degree, [upper/lower/mid]-[decade]s seems like it would be _too_ vague, and an exact degree is too exact
      Title: Re: Change temperature to Celsius
      Post by: RAM on March 26, 2009, 10:05:53 am
      I am not quite entirely certain that I support multiple scales, having to put in a letter before every temperature could get irritating, and forgetting to add one could cause nasty bugs in mods...

      Increased complexity = increased stuff-ups...
      Title: Re: Change temperature to Celsius
      Post by: Random832 on March 26, 2009, 11:36:59 am
      I am not quite entirely certain that I support multiple scales, having to put in a letter before every temperature could get irritating, and forgetting to add one could cause nasty bugs in mods...

      Increased complexity = increased stuff-ups...

      I've got a rudimentary raw parser class (working on an autoconverter from the current raws to the new ones) for .NET, I could write a validator that could check things like this
      Title: Re: Change temperature to Celsius
      Post by: doctorspoof on March 26, 2009, 02:21:26 pm
      I'm sure if multiple temperature scales were possible, Toady wouldn't have implemented DF scale in the first place. There'll be some issues with sticking in 'C's or 'F's or whatever.
      Title: Re: Change temperature to Celsius
      Post by: SirHoneyBadger on March 26, 2009, 04:01:25 pm
      Maybe somebody could make a lil modproggie that would convert temperatures easily from D into F, C, and K?
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on March 26, 2009, 04:57:30 pm
      I'm sure if multiple temperature scales were possible, Toady wouldn't have implemented DF scale in the first place. There'll be some issues with sticking in 'C's or 'F's or whatever.
      Did you even read my posts?  Like, at all?  [TEMP:22:K] for example, the game reads the K (which is separated from the number.  Upon reading that it puts the number through a conversion equation that translates it into the DF scale.  The new number is put into the file in data/objects that the game actually uses (as opposed to the raws). 

      And the game is an alpha.  In other words, some things are placeholders.  An inability to have multiple scales has nothing to do with the current system, as has already been stated.  Really "We don't have it now so we shouldn't have it at all" is all you are saying, which goes against Toady's idea of even having a suggestion forum.

      And RAM, it's less irritating than having to convert all the numbers into the DF scale manually, where you could make one mistake that throws the whole value off.  That's a horrible reason to not have the option of using a real world scale in modding.
      Title: Re: Change temperature to Celsius
      Post by: SirHoneyBadger on March 26, 2009, 06:42:35 pm
      ""We don't have it now so we shouldn't have it at all" is all you are saying, which goes against Toady's idea of even having a suggestion forum."

      I was reading the multi-threading posts today, since I'm buying a quad processor, and it was mentioned that Toady wasn't making DF to utilize multiple processors because he didn't want to take the time to learn how.

      (And I'm not saying he should-or trying to evoke that particular tentacle demon-I'm just saying it's something I read, so kindly call off your ninjas.)

      So I kind of wonder, whenever the game *does* go gold, what all he might decide to do with it, when he has the ability to add things, as the mood strikes, rather than as necessary to get the game running in the desired form.

      I like to think that the Suggestions Forum lays a lot of good groundwork for the future, either short term or long term. And it's there to put in our ideas and input. Toady reads it, and uses it. I've seen that happen personally, and it probably happens better, more often, and more generously here than in many multimillion-dollar companies with hundreds of employees.
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on March 26, 2009, 07:33:10 pm
      What?  I sort of get what you are saying, but not how it relates to what I said.  He was using the lack of a feature as a counterargument, which makes no sense, since this is the sub-forum in which new features are suggested.

      In your example, Toady himself, who knows DF's coding better than anyone here, said that he wouldn't do that and gave a reason. 

      With this topic, that is not the case.  Someone made an assumption about DF without any evidence to back him up other than the lack of a feature.  The suggestion of which we are talking about right now is just asking for Toady to change how the raws work, not how the whole game works.  Something which he has not commented on.
      Title: Re: Change temperature to Celsius
      Post by: Random832 on March 26, 2009, 10:04:41 pm
      Maybe somebody could make a lil modproggie that would convert temperatures easily from D into F, C, and K?

      I'll do it, but only if this actually happens - else what's the point?
      Title: Re: Change temperature to Celsius
      Post by: SirHoneyBadger on March 27, 2009, 02:32:22 am
      What?  I sort of get what you are saying, but not how it relates to what I said.  He was using the lack of a feature as a counterargument, which makes no sense, since this is the sub-forum in which new features are suggested.

      In your example, Toady himself, who knows DF's coding better than anyone here, said that he wouldn't do that and gave a reason. 

      With this topic, that is not the case.  Someone made an assumption about DF without any evidence to back him up other than the lack of a feature.  The suggestion of which we are talking about right now is just asking for Toady to change how the raws work, not how the whole game works.  Something which he has not commented on.

      All of which is why it was idle speculation.

      It relates to what you said because who knows what we'll have in the future? I mean, aside from basic drives towards robust goals, who can say what Toady wants to see happening in the game? If he had a week off to just goof around with a complete, finished, polished DF code, without other pressing concerns, I wonder what little extras he might put in.

      It's easy for us to speculate on what little bits and pieces of the game we'd like to modify or add, but when Toady comes on the boards, he's generally either involved in the business end of things, or acting as a moderator.

      I just wonder what he'd add to the Suggestions board, if he were in our place.
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on March 27, 2009, 07:34:49 am
      Okay.  I'm just saying if he ever had time it seems like it would be easy to implement.  I could be wrong, of course.  But I haven't seen any solid reason why it wouldn't be.
      Title: Re: Change temperature to Celsius
      Post by: Mikademus on March 27, 2009, 04:26:49 pm
      This thread is now about trying to figure out and come to grips with how this thread can have reached eleven bloody pages!
      Title: Re: Change temperature to Celsius
      Post by: Duke 2.0 on March 27, 2009, 04:33:46 pm
      I'm sure if multiple temperature scales were possible, Toady wouldn't have implemented DF scale in the first place. There'll be some issues with sticking in 'C's or 'F's or whatever.
      The DF scale, I assume, is based upon computer requirements and not on a real-life scale.
       Also, if there is a problem with sticking a letter after a number modders will never figure out the next release with tissue layers.

       Also, this thread is fueled by people around the world personally offended by our use of Fahrenheit, and Americans saying we don't have to use Celsius in our daily lives.
      Title: Re: Change temperature to Celsius
      Post by: Draco18s on March 27, 2009, 04:40:32 pm
      I'm sure if multiple temperature scales were possible, Toady wouldn't have implemented DF scale in the first place. There'll be some issues with sticking in 'C's or 'F's or whatever.
      The DF scale, I assume, is based upon computer requirements and not on a real-life scale.
       Also, if there is a problem with sticking a letter after a number modders will never figure out the next release with tissue layers.

       Also, this thread is fueled by people around the world personally offended by our use of Fahrenheit, and Americans saying we don't have to use Celsius in our daily lives.

      Hey now, there could be some people from Burma or Liberia here too.
      Title: Re: Change temperature to Celsius
      Post by: Duke 2.0 on March 27, 2009, 04:41:53 pm
      I'm sure if multiple temperature scales were possible, Toady wouldn't have implemented DF scale in the first place. There'll be some issues with sticking in 'C's or 'F's or whatever.
      The DF scale, I assume, is based upon computer requirements and not on a real-life scale.
       Also, if there is a problem with sticking a letter after a number modders will never figure out the next release with tissue layers.

       Also, this thread is fueled by people around the world personally offended by our use of Fahrenheit, and Americans saying we don't have to use Celsius in our daily lives.

      Hey now, there could be some people from Burma or Liberia here too.
      They are lucky enough to be outside of the spotlight.
       But yes, point taken.
      Title: Re: Change temperature to Celsius
      Post by: profit on March 27, 2009, 05:47:58 pm
      Well since these are raws, and they are read before the main loop can be read and most likely are not read from after that...

      It would seem allowing EVERY temperature scale would be the best solution.

      Why are we even still discussing it...

      It doesn't waste processor time except for the nanosecond when they are read.

      It simple to implement (by comparison to other suggestions)

      And it would make everyone happy... *except the unit nazi's who believe everything has to be done their way even though it doesn't hurt them in the least....

      I think the thread is over

      Done. 

      We would have Fahrenheit Celsius Kelvin and Dwarven units.  And no one will be left out.

      Smile, and hope it makes it in.





      Title: Re: Change temperature to Celsius
      Post by: SirHoneyBadger on March 28, 2009, 05:34:45 am
      This thread is now about trying to figure out and come to grips with how this thread can have reached eleven bloody pages!

      ...I take it you've never been to the - thread, and I, further, suggest you never go...
       
      Title: Re: Change temperature to Celsius
      Post by: Dwarf on April 11, 2009, 02:48:26 am
      Voting for keeping Fahrenheit+10K internally. That scale means we don't need decimals for HOMEOTHERM values nor negative numbers if there's ever a need for supernatural cold.  This will make the game go faster, even if it is totally arbitrary.

      Are you aware that 0° F are not supernaturally cold? It's about -17.7° Celsius. If you go up a mountain about 2000m tall in winter, you'll easily have something in these temparatures... AND SOMEDWARF WILL.


      Also, Fahrenheit is based on the irrational, stupid human, 100 being fever, and 0 being I-don't-know-what.
      Celsius is based on the cold, hard facts of physics, namely the boiling and freezing temparatures of water in a 1-bar environment.
      Title: Re: Change temperature to Celsius
      Post by: zagibu on April 11, 2009, 05:14:44 am
      Voting for keeping Fahrenheit+10K internally. That scale means we don't need decimals for HOMEOTHERM values nor negative numbers if there's ever a need for supernatural cold.  This will make the game go faster, even if it is totally arbitrary.

      Are you aware that 0° F are not supernaturally cold? It's about -17.7° Celsius. If you go up a mountain about 2000m tall in winter, you'll easily have something in these temparatures... AND SOMEDWARF WILL.

      It's fahrenheit +10000, so 0 on this scale would be ways below absolute zero. There is no place on earth where it's below absolute zero. That I know of :). Well, maybe in the genital parts of Alice Schwartzer, but that's another topic.
      Title: Re: Change temperature to Celsius
      Post by: zchris13 on April 11, 2009, 09:27:11 am
      Voting for keeping Fahrenheit+10K internally. That scale means we don't need decimals for HOMEOTHERM values nor negative numbers if there's ever a need for supernatural cold.  This will make the game go faster, even if it is totally arbitrary.

      Are you aware that 0° F are not supernaturally cold? It's about -17.7° Celsius. If you go up a mountain about 2000m tall in winter, you'll easily have something in these temparatures... AND SOMEDWARF WILL.


      Also, Fahrenheit is based on the irrational, stupid human, 100 being fever, and 0 being I-don't-know-what.
      Celsius is based on the cold, hard facts of physics, namely the boiling and freezing temparatures of water in a 1-bar environment.
      It is the coldest temperature reachable by the leading science men of the day.  (Ice covered in salt)
      Title: Re: Change temperature to Celsius
      Post by: Random832 on April 11, 2009, 08:34:49 pm
      Voting for keeping Fahrenheit+10K internally. That scale means we don't need decimals for HOMEOTHERM values nor negative numbers if there's ever a need for supernatural cold.  This will make the game go faster, even if it is totally arbitrary.

      Are you aware that 0° F are not supernaturally cold? It's about -17.7° Celsius. If you go up a mountain about 2000m tall in winter, you'll easily have something in these temparatures... AND SOMEDWARF WILL.


      Also, Fahrenheit is based on the irrational, stupid human, 100 being fever, and 0 being I-don't-know-what.

      It was standardized based on 32 being the melting point of water and 96 being (as well as could be measured at the time) normal human body temperature - why is everyone so obsessed with the decimal system that 100 has to mean something? and 32 was used instead of 0 so that there wouldn't be negative numbers for normal weather temperatures

      Quote
      Celsius is based on the cold, hard facts of physics, namely the boiling and freezing temparatures of water in a 1-bar environment.

      In other words, the boiling and freezing temperatures of an arbitrarily chosen substance at an arbitrary pressure.
      Title: Re: Change temperature to Celsius
      Post by: zchris13 on April 11, 2009, 11:34:54 pm
      It was standardized based on 32 being the melting point of water and 96 being (as well as could be measured at the time) normal human body temperature - why is everyone so obsessed with the decimal system that 100 has to mean something? and 32 was used instead of 0 so that there wouldn't be negative numbers for normal weather temperatures
      I said earlier, that 0 was the coldest temperature they could record.  They covered ice in salt, and that was what they got.

      Also, I heard somewhere that your spit freezes after it hits the ground at like -30, before it hits the ground at -50.
      Title: Re: Change temperature to Celsius
      Post by: Draco18s on April 12, 2009, 01:13:01 am
      It was standardized based on 32 being the melting point of water and 96 being (as well as could be measured at the time) normal human body temperature - why is everyone so obsessed with the decimal system that 100 has to mean something?

      100F was supposed to be a healthy body temperature, but the dude's wife was running a 3-4 degree fever when he measured her temp and didn't find out until much later.
      Title: Re: Change temperature to Celsius
      Post by: Dwarf on April 12, 2009, 05:47:37 am
      Voting for keeping Fahrenheit+10K internally. That scale means we don't need decimals for HOMEOTHERM values nor negative numbers if there's ever a need for supernatural cold.  This will make the game go faster, even if it is totally arbitrary.

      Are you aware that 0° F are not supernaturally cold? It's about -17.7° Celsius. If you go up a mountain about 2000m tall in winter, you'll easily have something in these temparatures... AND SOMEDWARF WILL.


      Also, Fahrenheit is based on the irrational, stupid human, 100 being fever, and 0 being I-don't-know-what.

      It was standardized based on 32 being the melting point of water and 96 being (as well as could be measured at the time) normal human body temperature - why is everyone so obsessed with the decimal system that 100 has to mean something? and 32 was used instead of 0 so that there wouldn't be negative numbers for normal weather temperatures

      Quote
      Celsius is based on the cold, hard facts of physics, namely the boiling and freezing temparatures of water in a 1-bar environment.

      In other words, the boiling and freezing temperatures of an arbitrarily chosen substance at an arbitrary pressure.

      I am obsessed with the decimal system because it's used everywhere else. We count in decimal, most of the world population measures decimal (as opposed to '12 inches are one foot' crap) and because it's generally the easiest numeral system. Would it seem logical to you when 92 % would represent a full chance instead of 100 %?
      Title: Re: Change temperature to Celsius
      Post by: Mikademus on April 12, 2009, 01:43:39 pm
      DIE, THREAD, DIE!
      Title: Re: Change temperature to Celsius
      Post by: Random832 on April 12, 2009, 05:28:19 pm
      It was standardized based on 32 being the melting point of water and 96 being (as well as could be measured at the time) normal human body temperature - why is everyone so obsessed with the decimal system that 100 has to mean something?

      100F was supposed to be a healthy body temperature, but the dude's wife was running a 3-4 degree fever when he measured her temp and didn't find out until much later.

      Again, NO. Healthy body temperature was supposed to be 96, 64 (nice power of 2) degrees above freezing.
      Title: Re: Change temperature to Celsius
      Post by: Random832 on April 12, 2009, 05:31:20 pm
      Voting for keeping Fahrenheit+10K internally. That scale means we don't need decimals for HOMEOTHERM values nor negative numbers if there's ever a need for supernatural cold.  This will make the game go faster, even if it is totally arbitrary.

      Are you aware that 0° F are not supernaturally cold? It's about -17.7° Celsius. If you go up a mountain about 2000m tall in winter, you'll easily have something in these temparatures... AND SOMEDWARF WILL.


      Also, Fahrenheit is based on the irrational, stupid human, 100 being fever, and 0 being I-don't-know-what.

      It was standardized based on 32 being the melting point of water and 96 being (as well as could be measured at the time) normal human body temperature - why is everyone so obsessed with the decimal system that 100 has to mean something? and 32 was used instead of 0 so that there wouldn't be negative numbers for normal weather temperatures

      Quote
      Celsius is based on the cold, hard facts of physics, namely the boiling and freezing temparatures of water in a 1-bar environment.

      In other words, the boiling and freezing temperatures of an arbitrarily chosen substance at an arbitrary pressure.

      I am obsessed with the decimal system because it's used everywhere else. We count in decimal, most of the world population measures decimal (as opposed to '12 inches are one foot' crap) and because it's generally the easiest numeral system. Would it seem logical to you when 92 % would represent a full chance instead of 100 %?

      Ten can be divided by exactly two numbers: two and five. 100 can be divided by 2, 4, 5, 25, 20, and 50. It notably can't be divided into thirds, sixths, eighths, etc etc.

      And we all count 360 degrees in a circle, right? (sure maybe some physicists use radians, but the same people who buy meat measured in kilograms and drinks measured in liters use degrees)
      Title: Re: Change temperature to Celsius
      Post by: Draco18s on April 12, 2009, 06:28:56 pm
      Again, NO. Healthy body temperature was supposed to be 96, 64 (nice power of 2) degrees above freezing.

      *Wiki*
      Ok, I conceed.

      However, it changed due to the fact that water boiled at almost 180 degrees above freezing, so the scale was changed just slightly to accommodate that beautiful number.
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on April 13, 2009, 04:30:27 pm
      (quote abbreviated to make post smaller)
      [argumentative statement ignoring previous counterarguments]
      You just don't get it, do you?  It's easier to remember multiples of 10 than multiples of, say, 8.  100 is simply a reasonably sized number for something near what your unit is based off of.

      25o= room temp ; that's easy to remember.  In Fahrenheit, I don't know what the hell it is, and I'm American.

      Also, as previously stated, water is NOT an arbitrary substance.  In fact, it is one of the most common elements found throughout the whole universe (so far as we can tell, thanks to spectroscopy and the laws of entropy).  There is also no substance that could substitute water in sheer diversity of naturally occurring uses (a.k.a: life, weather, etc.).

      Now drop this thread.
      Title: Re: Change temperature to Celsius
      Post by: WJLIII3 on April 13, 2009, 04:42:45 pm
      I am obsessed with the decimal system because it's used everywhere else. We count in decimal, most of the world population measures decimal (as opposed to '12 inches are one foot' crap) and because it's generally the easiest numeral system. Would it seem logical to you when 92 % would represent a full chance instead of 100 %?

      (I am responding to the entire conversation Dwarf was quoting, as well as his own post, but I decided to trim the quote, as the rest of my post is big enough already)

      See, the problem with that is that you're applying the rules for everything else to measures. Our mathematics are base-10, so base-10 is best, I'll give you. The problem is, measures aren't made to be logical, measures are made to be useful. That's why I, personally, think Fahrenheit is better. It is more precise, and it provides precisely one useful function, namely, that a human being's health can be easily determined by whether their body temperature is above or below 100. Certainly, when dealing with precise scientific measures, Kelvin should be used in all cases, but for everyday use, Fahrenheit is just handier.

      The other metric measures have similar problems. The meter is useful, but the decimeter is just meaningless, unlike the foot, which is a very handy measure. A lot of things out there are about a foot long. This is why I think it would solve a whole lot of problems if metric just added a new measurement. Call it a foot and define it as three decimeters (which is about .98 of an imperial foot). I do prefer metric (except, as I mentioned, in the case of temperature), but there's no reason not to add a few other constants that are just for usability. Measures are abstractions entirely for our benefit, so we should make sure they benefit us as much as possible.
      Title: Re: Change temperature to Celsius
      Post by: Random832 on April 13, 2009, 05:56:41 pm
      (quote abbreviated to make post smaller)
      [argumentative statement ignoring previous counterarguments]
      You just don't get it, do you?  It's easier to remember multiples of 10 than multiples of, say, 8.  100 is simply a reasonably sized number for something near what your unit is based off of.

      Which does not change the fact that claiming some absurd meaning for 100°F - a point on the scale which has _never_ been defined to mean anything in particular, is a logical fallacy.


      Quote
      Also, as previously stated, water is NOT an arbitrary substance.  In fact, it is one of the most common elements found throughout the whole universe (so far as we can tell, thanks to spectroscopy and the laws of entropy).

      Well, it's not an element, but maybe it's up there as one of the most common compounds. It's probably got nothing on elemental hydrogen.

      Quote
      There is also no substance that could substitute water in sheer diversity of naturally occurring uses (a.k.a: life, weather, etc.).

      How earth-centric.

      Quote
      Now drop this thread.

      Why do so many people insist on demanding that discussion be dropped?

      So anyway, why are there 360 degrees in a circle, and not 100? That was the one genuinely new point I made in the post you were replying to, and you ignored it.
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on April 13, 2009, 07:22:51 pm
      I think SI uses 100o circles.

      Anyway, the most common elements are some of the low-mass metals and nonmetals.  Those never show up in elemental form(except noble gases and low-mass noble metals).  Elemental hydrogen is highly reactive, and if there is oxygen around (which there always will be in nature), it will likely form water.

       In stars almost everything is in plasma form, in which they stripped of electrons.  An element is a substance, but when an atom is in non-elemental form, it is a different substance.  Water is the most common substance

      As for the Earth-centric comment . . . Only the planets that are on the highest extremes of heat or cold (naturally possible) don't have weather.  Besides, life and weather are just examples.

      And people keep insisting that the discussion be dropped because there is a lot of faulty logic behind some arguments.

      Fahrenheit is far less useful than Celsius or Kelvin - as stated by others, F's best use is for the human body.  As for being more precise, there are decimal numbers (fractions).  Let them enter your life.  Even Fahrenheit has to use them, more often than you'd think.
      Title: Re: Change temperature to Celsius
      Post by: RAM on April 13, 2009, 08:28:53 pm
      A foot is a really silly unit of measurement, when you hear 'foot' as an object, do you think of anything that wouldn't horrify you if it's dimensions actually approached a foot in size?

      I would guess that many things are about a foot in size because feet have been the most used measurement for a long time. Feet are, however, really unpleasant if you want to compare two objects of drastically different sizes. Do you have any idea just how high a plane is if it is at 10000 feet...
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on April 13, 2009, 08:46:17 pm
      Do you have any idea just how high a plane is if it is at 10000 feet...
      Not one, and feet are what I grew up with.  Give it to me in SI, and I might have a better idea.  That's the old system for ya.
      Title: Re: Change temperature to Celsius
      Post by: Draco18s on April 13, 2009, 09:10:04 pm
      Do you have any idea just how high a plane is if it is at 10000 feet...

      A little under 2 miles, about one third normal cruising altitude of commercial aircraft.
      Title: Re: Change temperature to Celsius
      Post by: Grae on April 14, 2009, 06:38:36 am
      Hi all, first time ever posting here.

      I'm sure this has been done by others, but I wrote a fairly simple tool converts between fahrenheit, celcius, kelvin and DF Temperature Units (calling it urist for lack of more concise term.)

      It utilizes JavaScript, so you'll need to enable it if you don't have it turned on already.
      You can use it here: http://andvari.us/dwarf_temp_tool.html
      To use it offline simply download the html file anywhere to your computer and point your web browser at the local file.

      I put a CC0 notice at the bottom of the page; it's all big and official looking, but the only thing I intended to convey was that I'm putting this out there for anyone to use however they want, they don't even have to give me any credit.
      Title: Re: Change temperature to Celsius
      Post by: zagibu on April 14, 2009, 11:13:11 am
      I think SI uses 100o circles.

      Anyway, the most common elements are some of the low-mass metals and nonmetals.  Those never show up in elemental form(except noble gases and low-mass noble metals).  Elemental hydrogen is highly reactive, and if there is oxygen around (which there always will be in nature), it will likely form water.

       In stars almost everything is in plasma form, in which they stripped of electrons.  An element is a substance, but when an atom is in non-elemental form, it is a different substance.  Water is the most common substance

      As for the Earth-centric comment . . . Only the planets that are on the highest extremes of heat or cold (naturally possible) don't have weather.  Besides, life and weather are just examples.

      And people keep insisting that the discussion be dropped because there is a lot of faulty logic behind some arguments.
      Angle is a unitless measure (it's actually a fraction, nothing else), and that's why it's not mentioned in SI. It doesn't matter whether you have 90/360° degrees, 100/400° gon or whatever, it comes down to 1/4th of a circle.

      I compliment you for your comments about water. Most people think water is a rarity only found on earth, but this is of course nonsense. Hydrogen is the most abundant element in the universe, and Oxygen is following closely on third place. Also, water can form at very low temperatures, and even very high, if pressure is also high.

      Weather on other planets is a bit off-topic though. I don't think we need a scale for gaseous-metal-storms that is useful for regular people. At least not in the near future.
      Title: Re: Change temperature to Celsius
      Post by: Random832 on April 14, 2009, 02:12:37 pm
      I think SI uses 100o circles.

      The only SI unit for angles is the radian, which no-one really commonly uses (except implicitly for torque etc) - there's an obsolete system with the circle divided into 400 units, but that's not SI.

      It might interest you to know that there is no pressure at which water freezes at exactly 0 C and boils at exactly 100 C, and the C scale's definition isn't tied to it (though it is tied indirectly to the _triple point_ of water - the temperature and pressure at which all three states of water can exist simultaneously) anymore.

      Anyway - I agree with the proposal that multiple units should be allowed in the raws. For performance, the internally used number has to be _some_ kind of integer (though it could be tenths or whatever of a degree), and it makes sense to allow it to be entered in either C or K at the least. Once it's doing a conversion, why _not_ allow F?  That's what I don't get - why so many people have such a deep hatred for the fahrenheit scale that people using it _must not_ be accomodated.
      Title: Re: Change temperature to Celsius
      Post by: profit on April 14, 2009, 03:46:31 pm
      Quote from: Random832 link=topic=32300.msg511532#msg511532
        why so many people have such a deep hatred for the fahrenheit scale that people using it _must not_ be accomodated.
      Racism or elitism.  It's not logical but it does happen. 

      Hi all, first time ever posting here.

      I'm sure this has been done by others, but I wrote a fairly simple tool converts between fahrenheit, celcius, kelvin and DF Temperature Units (calling it urist for lack of more concise term.)

      It utilizes JavaScript, so you'll need to enable it if you don't have it turned on already.
      You can use it here: http://andvari.us/dwarf_temp_tool.html
      To use it offline simply download the html file anywhere to your computer and point your web browser at the local file.

      I put a CC0 notice at the bottom of the page; it's all big and official looking, but the only thing I intended to convey was that I'm putting this out there for anyone to use however they want, they don't even have to give me any credit.

      That is a very useful tool.  I am adding it to my modding utilities section in my signature. =)


      Title: Re: Change temperature to Celsius
      Post by: Mikademus on April 14, 2009, 04:06:10 pm
      Why do so many people insist on demanding that discussion be dropped?

      It is immoral because it wastes bandwidth and contributes to making people even stupider.
      Title: Re: Change temperature to Celsius
      Post by: TerminatorII on April 14, 2009, 10:44:10 pm
      Why? It only makes sense for it to be switchable in the init (Celcius,Kelvin,Ferenhiet,Urist)
      Taht way you make NO ONE angry.
      Title: Re: Change temperature to Celsius
      Post by: Noble Digger on April 14, 2009, 11:51:28 pm
      Temperature is never shown in-game in any way shape or form. The units used to measure temperature are only of concern to modders and Toady. Suggest moving this to the DF modding board or something. Also RAGE RAGE RAGE TROLL RAGE TROLL RAGE
      Title: Re: Change temperature to Celsius
      Post by: RAM on April 15, 2009, 12:34:12 am
      Sorry, but the Urist scale is already taken, unless Toady claimed it before...

      DF Temperature Units (calling it urist for lack of more concise term.)

      http://www.bay12games.com/forum/index.php?topic=32300.msg467466#msg467466 (http://www.bay12games.com/forum/index.php?topic=32300.msg467466#msg467466) ::)
      Title: Re: Change temperature to Celsius
      Post by: DJ on April 15, 2009, 06:04:11 am
      0°D = 4°C = perfect temperature for a nice cold beer
      100°D = 73°C = perfect temperature for a cup of boiled wine (OK, I just used 73°C so that 50°D is healthy body temperature)
      Title: Re: Change temperature to Celsius
      Post by: stummel on April 15, 2009, 06:11:53 am
      38.5°C aren't really healthy...
      Title: Re: Change temperature to Celsius
      Post by: Mikademus on April 15, 2009, 11:14:25 am
      To throw in another argument in favour of C in this thread that won't die, in being based on water freezing and boiling at 1 atmosphere C actually is MORE interesting and relevant for the human body than F, in that it says something about the human situation and constitution. 100F (ok, 96F) being "good" is not as immediately telling as 37C in the range 0..100.
      Title: Re: Change temperature to Celsius
      Post by: DJ on April 15, 2009, 12:10:59 pm
      38.5°C aren't really healthy...
      73/2=36.5
      Title: Re: Change temperature to Celsius
      Post by: Draco18s on April 15, 2009, 02:06:30 pm
      This thread amuses me far far too much.
      Title: Re: Change temperature to Celsius
      Post by: LegoLord on April 15, 2009, 08:03:29 pm
      ARGH!

      Init doesn't work; how will that help with raw files?  It won't, that's how.  The init.txt deals largely with display and hardcoded gameplay features.

      No one should say that F shouldn't be included (even though it sucks) but have C & K put in; that screws the people used to F, and there's no harm in throwing it in with C & K.

      Now, will the OP please, please lock this thread?
      Title: Re: Change temperature to Celsius
      Post by: 0x517A5D on April 15, 2009, 10:37:14 pm
      Now, will the OP please, please lock this thread?

      Yeah, I think that's a good idea.  Pool's closed, kids.