vgstation-coders / vgstation13

Butts
GNU General Public License v3.0
260 stars 541 forks source link

Adds a lower bound on mols of oxygen for combustion #36670

Closed west3436 closed 2 weeks ago

west3436 commented 3 weeks ago

What this does

Combustion will now cease if the average mols/turf drops below 1.

Why it's good

Helps fighting fires by exposing the burning zone to space and closes #36667.

How it was tested

Tested igniting rooms, letting them cook, then breaching the floor with debug messages to monitor the mol count compared to the limit.

Changelog

:cl:

SECBATON-GRIFFON commented 3 weeks ago

not sure how accurate this is to real life but decent enough hotfix. there's definitely less of it at that pressure, that's all i know.

hacker-on-steroids commented 3 weeks ago

i think you should go by partial pressures, the firePR used to be that way when i reviewed it and doesnt seem to be anymore but seeing as the whole behemoth seems to work i'm not gonna be too much of a smartass

west3436 commented 3 weeks ago

i think you should go by partial pressures, the firePR used to be that way when i reviewed it and doesnt seem to be anymore but seeing as the whole behemoth seems to work i'm not gonna be too much of a smartass

Partial pressure is an inaccurate way to go about this (and the proc which calculates it is pretty counterintuitive). Using total mols in an area works just fine and produces results which feel better than how it works currently.

hacker-on-steroids commented 3 weeks ago

Partial pressure is an inaccurate way

20mol oxygen at 99999kelvin (60bar) would ignite stuff much easier than 20 mol roomtemp oxygen (0.2bar)

results which feel better

this is the more important part, i'm just being being a smartass about muh realism in a completely unrealistic videogame measuring moles might actually be better, because it makes fire "worse" at higher temperatures, making it faster to cool and repair afterwards

west3436 commented 3 weeks ago

Partial pressure is an inaccurate way

20mol oxygen at 99999kelvin (60bar) would ignite stuff much easier than 20 mol roomtemp oxygen (0.2bar)

You mentioned temperature here for a reason as temperature is the important factor, not pressure. Temperature is already factored in via the burnrate var which changes how quickly fuel mass is consumed and temperature increases.

results which feel better

this is the more important part, i'm just being being a smartass about muh realism in a completely unrealistic videogame measuring moles might actually be better, because it makes fire "worse" at higher temperatures, making it faster to cool and repair afterwards

This won't change how quickly a room cools off, and while it does produce another way for fire to burn itself out, it'll likely already burn out due to a low ox:fuel ratio prior to this.