TerraFirmaCraft

TerraFirmaCraft

2M Downloads

Heat Capacity

Tellik opened this issue · 1 comments

commented

I'm adding in a few metals and trying to input the correct information into them, and while looking through the API for heat_capacity I found some inconsistencies.

A number which specifies how fast this item heats up relative to others. This is measured in Energy / °C, meaning higher values indicate it takes more energy (time) to heat up.

While in the real world that's missing the mass of the object, I believe that it's setup in Minecraft since there isn't exactly a mass value associated? Also, since it only calls out Energy, would that be in BTU or Joules? (My guess is J)

My big question is, where are these values of heat capacity coming from? One issue I've noticed is that it seems like all the tfc/item_heats/metals/*ingots use the same value of 2.857 regardless of metal used. (Since mass isn't tracked, it makes sense for the double ingots to use double that value.) At the very least, they should have different values.

For example, copper ingot has a heat capacity of 2.857, while the native copper has a heat capacity of 1.143.

Different /item_heats/ore metals have different heat capacities. Though I'm still not sure where these values were derived from. (Even just using a ratio between silver and copper, copper should have roughly 1.58 times the heat capacity of silver.)

I'm all for a little suspension of disbelief with some things, but it doesn't make sense to me to have a mechanic that's effectively just ignored because it uses the same value for everything.

commented

There's a number of misconceptions here, and the conclusions you draw are just completely wrong.

  1. While in the real world that's missing the mass of the object

It is not. In the real world there are two quantities: specific heat capacity, and heat capacity. We even use both (items use heat capacity, fluids use specific heat capacity). As detailed in below:

/**
* A measure of how fast or slow an item heats up. In the real world, there are two physical quantities:
* <ol>
* <li>Specific Heat Capacity, which is a dimensionless number typically measured in J/(kg°C)</li>
* <li>Heat Capacity, which is the product of a Specific Heat Capacity by an object's mass, typically measured in J/°C</li>
* </ol>

  1. Also, since it only calls out Energy, would that be in BTU or Joules? (My guess is J)

The documentation here is intentionally not specifying a unit, because we don't measure the output of devices in real world units of energy. We measure things in terms of how fast items heat and cool in devices, both in real-world and in-world time. So it's a relative measure.

  1. Where are these values of heat capacity coming from?

They are derived from constants (which are more akin to specific heat capacities), and the mB (mass) of individual items.

  1. All tfc/item_heats/metals/*ingots use the same value of 2.857 regardless of metal used.

This is just wrong.

Your conclusion that the mechanic is unused is just completely wrong. If you have questions or don't understand the system, a better place to continue this conversation would be the #content-dev channel in our discord.