
When creating a world through procedural generation there are 3 major variables that determine what the world surface looks like; Height, Precipitation, and Temperature. Today I want to talk a little about temperature.
In update 0.6 the world generator can now calculate a Climate Temperature for every location in the XY plane. This value ranges from -10C to 30C and and is not a function of time, so any block will have it's temperature be constant. I have yet to determine the exact function that defines what the temp is at a specific location or how fast it changes but temps in the middle i.e. 15C will be more common than the extremes.
The world generator is also capable of of calculating the Actual Temperature for any 3D location in the world. The Actual Temperature takes into account height and its value will be used for gameplay. The Actual Temperature will be equal to the Climate Temperature while at height 0 (base ground level) as you move away from ground level the hold of the climate temp will drop (very quickly if going down and moderately fast if going up) and you will eventually reach a limit (50C for being far underground).
Now you might be asking what is the Actual Temperature going to be used for and you might assume it is for the player character to take damage if somewhere too hot or cold. The plan as it stands is not to include this functionality in the game as I don't feel it adds very much besides an annoyance. Temperature will be used however with any machinery that has to heat up (the boiler for example) the minimum temperature of the machine will now be set based on the Actual Temperature where the machine was placed.