Files
Bubberstation/code/modules
Redbert b142bebe10 Change gas mixer to mix by molar instead of volumetric (#78034)
## About The Pull Request

<!-- Describe The Pull Request. Please be sure every change is
documented or this can delay review and even discourage maintainers from
merging your PR! -->
Gas mixer output now accurate to set ratio regardless of mismatched
input temperatures
Input

![53c841b2db6c6d5f0db15634c613c50c-1](https://github.com/tgstation/tgstation/assets/109347230/086a4c3b-f76e-4e8b-8b38-9669e6bfaffd)

Mixer

![c619537ba1cdbfc5ec8a6c384aabc6c3](https://github.com/tgstation/tgstation/assets/109347230/388ecead-9a19-45da-8b54-33ed6e11ec7e)

Output

![2d9c662f348838f427c1523fd86c092b](https://github.com/tgstation/tgstation/assets/109347230/bbc8dbaf-f529-4ba6-ac65-a19214f1c8de)

## Why It's Good For The Game
 
We can start by looking at what gas mixers are actually good for. First
we have air supply mix and burn mixes, these are the main uses for a
mixer, but the resulting mix becomes inaccurate if one of your gas
supply tanks is cooler or warmer than another (this often happens when
someone adds a bunch of cold n2 or o2 to wastes). A gas mix for the HFR
or crystallizer, usually these are set up with a constant supply of
gasses with temperature of an input often varying, eventually clogging
if the mix becomes inaccurate. Finally we have bomb and internal mixes,
I would argue that this is the most important reason to keep things the
way they are, but are actually currently the easiest to manage. All of
these uses require molar precision, something the gas mixer doesn't
really provide on its own, making it almost useless if two inputs do not
match in temperature.

In my experience, in order to mix gasses accurately, you must do one of
three things. First, you must use a combination of heat gates and
thermomachines to equalize the temperatures before mixing. Second, you
can combine the mixtures into one to equalize the temperature, filter
the gasses apart, and mix again with your desired ratios. Or the third
option, you could create a custom calculator to take in your desired
ratio and the current temperatures of your input and plug the resulting
ratio into the mixer.

The way gas mixers work currently serves no real purpose outside of
tripping up new players and providing 'busy work' for the experienced
ones. Many newer players expect gas mixers to provide the set ratio to
the output, not knowing that the temperatures on the input mixes must
match. It requires a lot of additional effort and knowledge to
accurately mix gasses, something that should just be provided by the
tool itself.

This change is good because it helps makes atmos a bit simpler and more
intuitive. Unfortunately we will lose complexity in setups and make
atmos a bit easier, but maybe these are good things

## Changelog

🆑
balance: gas mixer output now accurate to set ratio regardless of input
temperatures
/🆑
2023-09-07 13:56:33 -06:00
..
2023-09-07 20:25:52 +01:00
2023-09-04 20:53:09 +02:00
2023-09-04 20:53:09 +02:00
2023-08-31 10:31:33 -06:00
2023-09-07 16:33:31 +01:00