BeeStation / BeeStation-Hornet

99.95% station. 0.05% bees
https://beestation13.com
GNU Affero General Public License v3.0
200 stars 682 forks source link

[Bug]: Apid lungs do not have enough oxygen on lavaland #11731

Open Rukofamicom opened 1 month ago

Rukofamicom commented 1 month ago

Describe the bug

When I try to breath lavaland atmos I am told through interface that there is not enough O2 to breathe.

What did you expect?

Lavaland has about 70% as much oxygen as the station. I expect to be able to breathe because Apids require only 50% as much oxygen as humans.

Other information

Lavaland Oxygen saturation image

Station Oxygen saturation image

MarkusLarsson421 commented 1 month ago

It also has about 40% CO2 as well.

MarkusLarsson421 commented 1 month ago

Same effect can happen on the station if the CO2 percentage is increased past a certain threshold.

Rukofamicom commented 1 month ago

Yes, but we have a CO2 warning when CO2 is too high,

I mentioned in development channel on discord that this might be erroneously showing the "Not enough O2" alert. If there's too much CO2 that should be what's showing, not a low oxygen alert.

HowToLoLu commented 1 month ago

I mentioned in development channel on discord that this might be erroneously showing the "Not enough O2" alert. If there's too much CO2 that should be what's showing, not a low oxygen alert.

Discussed further in the discord, just mentioning here for sake of conversational parity: This was sort've on the right track. The real reason is due to the breathing class counting CO2 against the total amount of O2 available, making the partial pressure of O2 available on lavaland more like a little under ~5kPa PP = -0.7 * (mol CO2 / total_mol * total_pressure) + 1 * (mol O2 / total_mol * total_pressure)

https://github.com/BeeStation/BeeStation-Hornet/blob/b5dfa88be31270ea1f16cd0a6c6fe50bbdb01fd0/code/modules/atmospherics/auxgm/breathing_classes.dm#L23-L28

github-actions[bot] commented 3 days ago

This issue has been inactive for long enough to be automatically marked as stale. If this was a bug report and hasn't been addressed yet, and is still a problem, please don't hesitate to notify a maintainer.