TiryanaBell Posted June 23, 2019 Share Posted June 23, 2019 So my second dupe now died because she couldn't make her way to an area with oxygen. Basically two area's of oxigen were within reach, however she kept going back an forth on 2 CO2-loaded tiles, unable to choose which o2 area she wanted to go to, and ended up dying due to flawed pathing. This is game breaking! If a dupe dies due to my fault I can live with it and just call myself stupid, if they die due to pathing errors, that's on the developers: Fix Your Game! Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/ Share on other sites More sharing options...
Oozinator Posted June 23, 2019 Share Posted June 23, 2019 You can always use the "move to" command, when you see it happening. Most times it happens in areas without enough air pressure. It happened to me in the past - reload last save - manual move to command. Then analyze your area, to prevent it. Share screenshot of that area? Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213166 Share on other sites More sharing options...
Gurgel Posted June 23, 2019 Share Posted June 23, 2019 27 minutes ago, TiryanaBell said: This is game breaking! It is not. It is a minor annoyance. Please keep the hysterics under control. Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213168 Share on other sites More sharing options...
Sasza22 Posted June 23, 2019 Share Posted June 23, 2019 This will keep comming up as new players encounter it. It`s actually a pretty annoying pathing logic bug that seems to be really hard to fix, given how long it`s around. We need a way to inform newer players how to deal with it. Manual move command is the easiest. Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213170 Share on other sites More sharing options...
bobucles Posted June 23, 2019 Share Posted June 23, 2019 Quote It is not. It is a minor annoyance. A bug that causes dupes to spontaneously suicide hardly qualifies as "minor". Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213181 Share on other sites More sharing options...
Nightinggale Posted June 23, 2019 Share Posted June 23, 2019 1 hour ago, Sasza22 said: It`s actually a pretty annoying pathing logic bug that seems to be really hard to fix I think the problem is that the dupe runs towards the nearest oxygen. It might seem like the obvious choice to do so, but in this case it's a problem. The core of the problem is the low framerate, or rather the fight against it. What I think happens (not based on code reading, it's an educated guess) is that the dupe orders a chore update. For performance reasons it will run on a different CPU core and be ready 200 ms later. This means when a dupe makes a decision on what to do, the dupe will have executed the old chore for 200 ms and moved to a new cell. A_BC_D Dupe is on cell C and detects oxygen at cell D. Works fine. Dupe is on cell D, notice the nearest oxygen is on cell A and runs towards it. Once it reach cell C, the chore update detects oxygen has arrived at cell D, which is now the closest. This chore replaces the currently used chore (goto A), but not until the dupe reach B. On cell B, the dupe detects the nearest oxygen at cell A, but it doesn't act on it before reaching cell C, in which case D is closest and we have the stuck dupe running between B and C until death. Fixing this is easy. Fixing this without doing horrible stuff to performance is not easy. Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213188 Share on other sites More sharing options...
Gurgel Posted June 23, 2019 Share Posted June 23, 2019 17 minutes ago, Nightinggale said: Fixing this is easy. I am not sure about that. It could be made more deterministic though. For example with the dupe always running towards the printer when low on oxygen. That would at least make things reliable and less random. It also would make them reliably deadly in many cases though. Maybe a "pause game on xx" function would be best. Then the player can fix this manually without time pressure. Come to think of it, Klei could also cheat, for example after the 3rd failed attempt to get to Oxygen, the Dupe could just reliably find some where it is moving. Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213193 Share on other sites More sharing options...
Saturnus Posted June 23, 2019 Share Posted June 23, 2019 57 minutes ago, bobucles said: A bug that causes dupes to spontaneously suicide hardly qualifies as "minor". Yes. It does. It's not a bug though. It's feature. Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213197 Share on other sites More sharing options...
Nightinggale Posted June 23, 2019 Share Posted June 23, 2019 2 minutes ago, Gurgel said: I am not sure about that. It could be made more deterministic though. For example with the dupe always running towards the printer when low on oxygen. That would at least make things reliable and less random. It also would make them reliably deadly in many cases though. What I mean by easy is it would remove any lag between monitoring all the data and making the decision. That should solve the problem, but then you might be stuck with maybe 4 fps. Aiming for the printer is a silly idea. What if it is covered by CO2, but the rest of the base has oxygen? Then heading there is the worst possible action. A solution would likely be more in the nature of the dupe making a decision of where to go and then stick to that decision and don't change decision possibly multiple times each second. The hardest part is locations where oxygen is mixed with something else, meaning sometimes there is oxygen and sometimes not. The dupes have no memory of what the gas was a moment ago. They will aim for where oxygen is now even if the player knows it will go away before arrival. Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213198 Share on other sites More sharing options...
Glassyfo Posted June 23, 2019 Share Posted June 23, 2019 2 hours ago, bobucles said: A bug that causes dupes to spontaneously suicide hardly qualifies as "minor". Don't you get a notification that they're suffocating? Manually move them problem solved. Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213217 Share on other sites More sharing options...
Yunru Posted June 23, 2019 Share Posted June 23, 2019 3 hours ago, Gurgel said: I am not sure about that. It could be made more deterministic though. For example with the dupe always running towards the printer when low on oxygen. That would at least make things reliable and less random. It also would make them reliably deadly in many cases though. Maybe a "pause game on xx" function would be best. Then the player can fix this manually without time pressure. Come to think of it, Klei could also cheat, for example after the 3rd failed attempt to get to Oxygen, the Dupe could just reliably find some where it is moving. Or just weight the dupe's choice based on the mass of breathable gas and distance, rather than just distance. Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213239 Share on other sites More sharing options...
Prince Mandor Posted June 23, 2019 Share Posted June 23, 2019 So far, the cause of this "dance of death" was mostly moving gas. Dupe run for it, but oxygen doesn't wait for him, patiently. It moves. And if it moves beyond reach, or far away, dupe runs for the next nearest oxygen. But if both patches of oxygen moving back and forth, or even more often if it is same oxygen, moving so, dupes must move to different spots to reach it - then dupe is in trouble. So far I see multiple solutions. First, and simplest, make option to pause game on all red alerts. If someone suffocate, just pause and player make some conscious decision. If this option will be turned off, or player decision will be wrong - well, it is not Klei fault. Another one is if dupe run for air and on next recalculation there are no more oxygen in his endpoint run not to nearest oxygen, but to oxygen nearest to previous endpoint. Situation still can be deadly for dupe, but dupe behavior will looks consistent. It run for oxygen, but cannot reach it in time. Oops. And player, killing dupes by oxygen absence, will put less blame on Klei, and possibly just reread game title Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213244 Share on other sites More sharing options...
Sasza22 Posted June 23, 2019 Share Posted June 23, 2019 6 hours ago, Nightinggale said: Fixing this is easy. Fixing this without doing horrible stuff to performance is not easy. Well if it was an automation problem i`d add a buffer gate after the dupe makes a choice so he won`t change his mind before passing 2-3 tiles. If dupes were run by automation it would work. Maybe adding something like this is the easiest fix without it hitting performance. There just might be an edge case scenario where it kills a dupe but it would be like 0.001%. Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213292 Share on other sites More sharing options...
Nightinggale Posted June 23, 2019 Share Posted June 23, 2019 1 minute ago, Sasza22 said: Well if it was an automation problem i`d add a buffer gate after the dupe makes a choice so he won`t change his mind before passing 2-3 tiles. If dupes were run by automation it would work. Maybe adding something like this is the easiest fix without it hitting performance. There just might be an edge case scenario where it kills a dupe but it would be like 0.001%. So you are saying if dupe has "reach oxygen" chore active, it can't be overwritten by another chore before the first disbands itself. It will disband itself if target becomes unreachable or loses oxygen. Maybe there can be edge cases, but yeah that would likely work way better than the current solution. Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213295 Share on other sites More sharing options...
bobucles Posted June 23, 2019 Share Posted June 23, 2019 Quote Yes. It does. It's not a bug though. It's feature. Entombing dupes is a feature. Dupes pissing themselves is a feature. Dupes suffocating in space because they ran outside and a meteor exploded their way back is a feature. Dupes running back and forth until they die because their AI routines broke down isn't a feature. Whether or not it can be trivially resolved is also not a solution. The problem is caused because duplicants make a pathing decision every single step they take. There is no need for this level of oxygen clairvoyance and it causes a clear problem, even if the problem is a niche edge case. If they're running to oxygen and another piece of oxygen is trivially closer, the duplicant should already be happy with the oxygen they can reach. Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213298 Share on other sites More sharing options...
Sasza22 Posted June 23, 2019 Share Posted June 23, 2019 6 minutes ago, Nightinggale said: So you are saying if dupe has "reach oxygen" chore active, it can't be overwritten by another chore before the first disbands itself. It will disband itself if target becomes unreachable or loses oxygen. Kinda yes. But more like the chore can`t be overriden for a small amount of time like 2 seconds (however many game cycles that would be). After 2 seconds real time the dupe should already walk away from the "indecision trap". Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213300 Share on other sites More sharing options...
Nightinggale Posted June 23, 2019 Share Posted June 23, 2019 9 minutes ago, bobucles said: Dupes running back and forth until they die because their AI routines broke down isn't a feature. It's shockingly realistic though. I once saw an elderly lady who wanted to take a train. Train approaches and she still haven't figured out which of the two platforms she believes to be the correct one and she starts to run between them... or rather she does as the dupes, takes one step, turns around, takes one step, turns around etc. She does that right in the crossing, meaning it's on the track the train is approaching and she looks at the train while doing so. She is clearly aware that it was there. In what seems like last minute, the train reached a switch and turned from the main track to the other one, hence going around the lady. In retrospect I get why the train never used the horn, but still. What??? And before anybody asks, no, I wasn't close enough to reach the lady to do anything about the situation before it was all over. Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213307 Share on other sites More sharing options...
Yunru Posted June 23, 2019 Share Posted June 23, 2019 2 hours ago, Nightinggale said: It's shockingly realistic though. I once saw an elderly lady who wanted to take a train. Train approaches and she still haven't figured out which of the two platforms she believes to be the correct one and she starts to run between them... or rather she does as the dupes, takes one step, turns around, takes one step, turns around etc. She does that right in the crossing, meaning it's on the track the train is approaching and she looks at the train while doing so. She is clearly aware that it was there. In what seems like last minute, the train reached a switch and turned from the main track to the other one, hence going around the lady. In retrospect I get why the train never used the horn, but still. What??? And before anybody asks, no, I wasn't close enough to reach the lady to do anything about the situation before it was all over. You sure it wasn't a suicide attempt? Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213346 Share on other sites More sharing options...
Nightinggale Posted June 23, 2019 Share Posted June 23, 2019 43 minutes ago, Yunru said: You sure it wasn't a suicide attempt? I'm quite sure of that for reasons which would be way off topic here. I suspect dementia or something else of that nature. Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213354 Share on other sites More sharing options...
Yunru Posted June 23, 2019 Share Posted June 23, 2019 ... My dupes having dementia makes way too much sense. Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213355 Share on other sites More sharing options...
Gurgel Posted June 24, 2019 Share Posted June 24, 2019 15 hours ago, Saturnus said: Yes. It does. It's not a bug though. It's feature. I think I may agree on this. Especially as there are reliable ways to avoid it and it only happens in pretty bad environmental conditions. 15 hours ago, Nightinggale said: What I mean by easy is it would remove any lag between monitoring all the data and making the decision. That should solve the problem, but then you might be stuck with maybe 4 fps. Nope. The problem is that when the dupe arrives, the oxygen has gone away. They have not do dupes travel the whole way for that reason, the decision gets revised when the situation at the target location changes. You have the wrong model. 12 hours ago, Yunru said: Or just weight the dupe's choice based on the mass of breathable gas and distance, rather than just distance. That will eliminate some cases, but not all of them. 9 hours ago, bobucles said: Dupes running back and forth until they die because their AI routines broke down isn't a feature. I do not agree. Their AI is not capable of predicting gas movement, so they do the best they can. And that does not always work. Also keep in mind that the whole problem does only happen when dupes move into danger and then this is simply an accident. Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213409 Share on other sites More sharing options...
Glassyfo Posted June 24, 2019 Share Posted June 24, 2019 10 hours ago, bobucles said: Dupes running back and forth until they die because their AI routines broke down isn't a feature. Disagree. If you're okay with dupes entombing themselves or magically teleporting out of reach it seems silly to not be okay with this particular part of the game. Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1213437 Share on other sites More sharing options...
Zarquan Posted June 27, 2019 Share Posted June 27, 2019 I agree with the OP to a certain extent. I wouldn't say it's quite game breaking because the game has a quite loud suffocating warning that is hard to miss unless your base is falling apart, but it is almost game breaking and very annoying when it happens and should be fixed. The dupes should be smart enough to breathe. I feel around 95% of these events would be negated if they didn't repath to a closer oxygen source if one appears, but instead only repath if their destination oxygen source disappears. And repathing should first look around the original destination and see if there is a place close to the original destination before looking for a closer spot so they don't turn around. The dupes not constantly trying to repath to "better" oxygen sources would probably reduce computational load when dupes need to breathe, so it's a win-win. Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1214864 Share on other sites More sharing options...
bobucles Posted June 27, 2019 Share Posted June 27, 2019 Quote If you're okay with dupes entombing themselves or magically teleporting out of reach it seems silly to not be okay with this particular part of the game. Yeah, nah. You're not going to convince any ordinary player that duplicants suffocating in an oxygen rich environment is part of the game. They're just going to tilt their head and say "WAT" Edit: It looks like dupes forgetting to breathe has a fix in the beta. Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1215040 Share on other sites More sharing options...
Glassyfo Posted June 27, 2019 Share Posted June 27, 2019 10 minutes ago, bobucles said: Yeah, nah. You're not going to convince any ordinary player that duplicants suffocating in an oxygen rich environment is part of the game. They're just going to tilt their head and say "WAT" Actually they're far more likely to also not see the teleporting as part of the game either. You completely misread my comment. Link to comment https://forums.kleientertainment.com/forums/topic/107842-dupe-pathing-still-broken/#findComment-1215053 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.
Please be aware that the content of this thread may be outdated and no longer applicable.