SanchozzDeponianin / ONIMods

Sanchozz's mods for Oxygen Not Included
MIT License
16 stars 15 forks source link

[Suit Recharger] Chore loop #31

Closed MegaJani closed 1 year ago

MegaJani commented 1 year ago

Current Behavior

If a dupe runs out of air during downtime and is currently trying to use the toilet, the suit recharger chore will repeatedly interrupt the bathroom chore and locks the dupe in place, leading to a suffocation-starvation-exhaustion loop.

Mod Versions

Newest version, using Mod Updater

Steps to Reproduce

  1. During downtime
  2. Suit air tank runs out as 2.5 Going to the bathroom
  3. Dupe themselves running out of air while on the toilet, so needs to take the helmet off and stop any chore
  4. Breath regained, start new toilet chore
  5. Repeat (since their bladder is at 100%, they will be stuck in this loop indefinitely, regardless of downtime, it onyl needs to initiate it)

A possible solution would be to move the recharge chore to be a personal need and/or increasing the priority.

SanchozzDeponianin commented 1 year ago

Please provide me with your save file when this happens.

MegaJani commented 1 year ago

Here you go: https://drive.google.com/drive/folders/1LPMZhj3geeIAp9hOiql1_tsHKx27Y1AY?usp=share_link

Although heavily modded, none of them seem to conflict to cause the issue.

SanchozzDeponianin commented 1 year ago

strange, I can't reproduce it. Marie successfully manages to use the toilet before she needs to regain her breath. 457140_20230122215546_1 457140_20230122215614_1

Also a question. These rechargers were connected to oxygen by some kind of modding pipe ? or are they not connected ? 457140_20230122215642_1

However, I already have thoughts on improving the priority of super urgent charging.

MegaJani commented 1 year ago

Yes, I use the high pressure pipes mod to connect them, that's no problem. I noticed that sometimes they make it in time (mostly when they run out exactly as they go to the bathroom, but it's these instances when things align precisely to lock a dupe that are mildly annoying.

I thought of making a suggestion to configure the recharge threshold percentage, but that might not solve the conflicting chores if they reach that in downtime.

MegaJani commented 1 year ago

Hi! I managed to capture one where I don't forget to check the priorities: https://drive.google.com/drive/folders/1LPMZhj3geeIAp9hOiql1_tsHKx27Y1AY?usp=share_link

SanchozzDeponianin commented 1 year ago

before I upload the new version to the workshop. can you test it locally ?

MegaJani commented 1 year ago

Gladly. I see, it's grouped with "recover breath" now, and so it's immediate. Nice fix!

Although one dupe tried to eat while their oxygen was just "low", not empty, and they were picking up food endlessly. I don't know if there's any spaghetti code in the game's logic, but I think it would be best to just make the regular "recharge equipment" chore an involuntary action as well, they stop their regular chores for it anyway. Downtime can wait a bit. Edit: The problem still presents itself in the bathroom given their oxygen levels are just "low", not entirely empty. Edit 2: Game speed might be a contributing factor here (time to complete a chore vs. time to check new chores)

SanchozzDeponianin commented 1 year ago

Hi. I have seen your recent posts in the unofficial ONI discord. So, definitely, your Chore loop problem is not caused by my mod.