You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In certain circumstance a dying patient at the end of a corridor, can receive an invalid walk action.
In the save in #1284 at (50,63) is a dying patient.
In action_die_start a randomly selected direction (south or east) is chosen for the fall. In this intance south is blocked. It also happens that, a humanoid was at the door of the pharmacy adjacent to the patient at the time the tile was checked, so neither South or East is chosen. The code then goes on to check the west and north tiles. The west tile first, here is checked, and has no objects/humanoids but is outside the hospital. The patient is then given a walk instruction to that west tile, that no path can be found to and becomes stuck.
The code will also behave incorrectly with objects (mainly side objects being a concern here) as isTileEmpty checks for humanoids and objects.
I answered my question in the RFC; in short the original just allows the patient to fall through an invalid tile. There is a minor graphical issue (the patient falls through whatever was blocking them), but nothing game breaking for such a rare occurrence.
Describe the issue
In certain circumstance a dying patient at the end of a corridor, can receive an invalid walk action.
In the save in #1284 at (50,63) is a dying patient.
In action_die_start a randomly selected direction (south or east) is chosen for the fall. In this intance south is blocked. It also happens that, a humanoid was at the door of the pharmacy adjacent to the patient at the time the tile was checked, so neither South or East is chosen. The code then goes on to check the west and north tiles. The west tile first, here is checked, and has no objects/humanoids but is outside the hospital. The patient is then given a walk instruction to that west tile, that no path can be found to and becomes stuck.
The code will also behave incorrectly with objects (mainly side objects being a concern here) as isTileEmpty checks for humanoids and objects.
Steps to Reproduce
Unknown
Save Game
See #1284
Expected Behavior
Patient should either probably fall still to the east or find a free tile
System Information
Gamelog.txt
None
Additional Info
The text was updated successfully, but these errors were encountered: