rgduck Posted August 15, 2021 Share Posted August 15, 2021 Duplicant are pretty dumb, by which I mean they often make choices that the player probably didn't want. Is this intended behavior? Is this meant to be an additional fun challenge for the player? Or is it only that the game is still in development, and the problem I'm asking the developers to solve is a hard one? I found a dead thread here asking the same question, and one common answer was essentially, "There is no problem here. Dupe behavior is deterministic, so if a dupe does something dumb, it's really the player's fault." The problem with this argument is that there are many situations where it is hard for the player to anticipate how the dupe will approach a task. Will the dupe walk over a bridge, or will he walk the same distance through magma? Will he build a wall from the left, or first move to the right and trap himself? Answering these questions often requires a deep understanding of the game's hidden mechanics, and even then it isn't obvious how to alter the instructions so as to produce the intended behavior. Personally, when my dupe does something that is technically what I asked for, but "obviously" not what I intended, I tend to feel cheated (despite the hilarious animation when a dupe gets his head trapped in a tile he just built). IMO, the game would be more enjoyable if dupes employed a modicum of "common sense," at least optionally like with the "Use Proximity" setting. Link to comment https://forums.kleientertainment.com/forums/topic/132708-are-dupes-meant-to-be-so-stupid/ Share on other sites More sharing options...
Onidotmoe Posted August 15, 2021 Share Posted August 15, 2021 Common sense isn't really a thing, tho there are situations where you'd want dups to go through magma or get themselves hurt to complete a task. From what i understand your problem is pathfinding and prioritizing, if the duplicant can reach a task without going through magma then that other path should be taken. Having a setting on the priority bar that only allows a task to be completed when a previous task has been done, like chaining, tho this can be mildly mitigated by prioritizing the inner walls higher than the outer. Link to comment https://forums.kleientertainment.com/forums/topic/132708-are-dupes-meant-to-be-so-stupid/#findComment-1486276 Share on other sites More sharing options...
Sasza22 Posted August 15, 2021 Share Posted August 15, 2021 It seems to be intended for them to do dumb stuff. Even in lore they are pretty dumb. After playing this game a lot i`m mostly able to anticipate what can go wrong during build tasks but still occasionally i get dupes stuck. Most of the time hey get into bad places wither when building or digging. Digging is mostly an issue when dupes don`t have tier 3 mining so they may mine stuff not requiring the skill first and get stuck behind unminable rocks. Occasionally stuff like sand could fall and block them off. Builders usually won`t build themselves on the wrong side of a wall unless they use the rocks from the other side to build the said wall. Anyway while it`s annoying i don`t think thee is an easy fix. Dupes would have to do an extra pathfinding check involing the block they are mining/building so they need to anticipate stuff. Even that won`t fix all the cases as other dupes can block them in. Extra calculations would slow up the game a lot. Still they added a few things like new tiles moving dupes out of the way so they won`t get their heads stuck. Link to comment https://forums.kleientertainment.com/forums/topic/132708-are-dupes-meant-to-be-so-stupid/#findComment-1486277 Share on other sites More sharing options...
rgduck Posted August 16, 2021 Author Share Posted August 16, 2021 8 hours ago, VampireMonkey said: From what i understand your problem is pathfinding and prioritizing, if the duplicant can reach a task without going through magma then that other path should be taken. Yes, that's what I would like. And yes, I think pathfinding and prioritizing are the main tasks that are causing me grief. 8 hours ago, VampireMonkey said: Having a setting on the priority bar that only allows a task to be completed when a previous task has been done, like chaining, tho this can be mildly mitigated by prioritizing the inner walls higher than the outer. This approach introduces other problems. Suppose I have other dupes working on another build across the map. If I assign a lower priority to the second tile I want built, then my dupe will build one tile, then cross the map twice before building the second one. Also, if two dupes are working in the same area, then the higher-skill dupe may get assigned the lower priority task, and the tasks will still get performed out of order. 8 hours ago, Sasza22 said: Anyway while it`s annoying i don`t think thee is an easy fix. Dupes would have to do an extra pathfinding check involing the block they are mining/building so they need to anticipate stuff. Even that won`t fix all the cases as other dupes can block them in. Extra calculations would slow up the game a lot. Really? That's interesting. If pathfinding is the most computationally intensive task, then shouldn't it be relatively easy to speed things up by using multiple CPU cores? I had assumed the game didn't do that because the most CPU-intensive tasks were not easily divided up. In any case, if "common sense" is too much to ask for, then what about additional ways for the player to issue instructions? I can think of quite a few options that would resolve "stupid dupe" issues without (I think) requiring much additional computation. For example, there could be an option to make dupes prefer nearby tasks even when a slightly higher priority task is available across the map. Then VampireMonkey's suggestion of using priorty to control task order would help a lot. Or maybe a way for the player to specify "never walk across this tile." That would resolve the magma problem while actually reducing pathfinding time, no? I often find myself implementing a poor man's version of this feature, by building walls or removing ladders to keep dupes from taking the "dumb" path. A way to specify "do not use these resources" (becuase they're under water or magma) would also help a lot. Link to comment https://forums.kleientertainment.com/forums/topic/132708-are-dupes-meant-to-be-so-stupid/#findComment-1486357 Share on other sites More sharing options...
sakura_sk Posted August 16, 2021 Share Posted August 16, 2021 4 hours ago, rgduck said: there could be an option to make dupes prefer nearby tasks even when a slightly higher priority task is available across the map That's... an option in game. Checking the "proximity" box in priorities menu has that result (I think... I usually don't bother using it ) Link to comment https://forums.kleientertainment.com/forums/topic/132708-are-dupes-meant-to-be-so-stupid/#findComment-1486381 Share on other sites More sharing options...
rgduck Posted August 16, 2021 Author Share Posted August 16, 2021 2 hours ago, sakura_sk said: That's... an option in game. Checking the "proximity" box in priorities menu has that result (I think... I usually don't bother using it ) Unless this is out of date, "Enable Proximity" only activates when two tasks have exactly the same priority. Meaning it has to be 46.5 vs 46.5. While this is certainly prefereable to, say, choosing a random task anywhere on the map among those with equal priorities, what I really want is for dupes to choose nearby tasks even when they're slightly lower priority. Link to comment https://forums.kleientertainment.com/forums/topic/132708-are-dupes-meant-to-be-so-stupid/#findComment-1486389 Share on other sites More sharing options...
sakura_sk Posted August 16, 2021 Share Posted August 16, 2021 If you knowingly set a higher priority on the other side of the map (something that needs immediate attention, if I had to guess) why would a dupe with "common sense" ignore it? Link to comment https://forums.kleientertainment.com/forums/topic/132708-are-dupes-meant-to-be-so-stupid/#findComment-1486394 Share on other sites More sharing options...
rgduck Posted August 16, 2021 Author Share Posted August 16, 2021 8 hours ago, sakura_sk said: If you knowingly set a higher priority on the other side of the map (something that needs immediate attention, if I had to guess) why would a dupe with "common sense" ignore it? You're right that I would still want a way to specify "go do this right away." But often I just want to specify the order in which tasks get done by whatever dupe is working in a particular area. The global priority system doesn't really allow me to issue that instruction, because it results in dupes crossing the map repeatedly. My thought is to implement a distance-based penalty to the priority. Maybe having to walk 500 tiles would reduce the priority as calculated for that dupe by 1, 1000 tiles would reduce it by 2, etc. So if I wanted dupes to cross the map to get something done immediately, I'd set the priority to 8 or 9. If I'd rather they deal with everything in their vicinity first, I'd set it to 6 or 7. That seems to me to yield the best of boths worlds. Link to comment https://forums.kleientertainment.com/forums/topic/132708-are-dupes-meant-to-be-so-stupid/#findComment-1486471 Share on other sites More sharing options...
sakura_sk Posted August 16, 2021 Share Posted August 16, 2021 12 minutes ago, rgduck said: So if I wanted dupes to cross the map to get something done immediately, I'd set the priority to 8 or 9. If I'd rather they deal with everything in their vicinity first, I'd set it to 6 or 7. And why isn't that working right now? I'm playing the game for a long time so maybe that is just a way I found around the issue... but when I have certain dupes doing only specific jobs adjusted through the secondary priorities (usually having the jobs they are good at, in a higher priority) and not disallowing completely any errand, it just works. I usually have dig-builders, tidy-storage and supply (but no very high), dedicated researcher that will turn to be a cook after research is over, rancher, farmer-cook, and every dupe does what they can, the best they can. If I need to disallow certain areas I usually would do that by setting doors access and not expect it from priorities. When I build somewhere they most certainly trap themselves (regolith falling is a deathtrap even if you plan everything to the last detail) I either just watch them build/dig or wait for a starvation/suffocation/mess alert to happen. By now I can anticipate what will happen/when will happen and the recent changes to diagnostics "trapped" alerts are helping a lot in that matter. Link to comment https://forums.kleientertainment.com/forums/topic/132708-are-dupes-meant-to-be-so-stupid/#findComment-1486476 Share on other sites More sharing options...
rgduck Posted August 16, 2021 Author Share Posted August 16, 2021 11 minutes ago, sakura_sk said: And why isn't that working right now? I think we're talking past each other. Let me offer an example: Hassan is a builder/digger dupe. I want him to drive a wire through this pool without spilling the water, so I need the tile to be built before the wire. As far as I know, the only way to ensure that happens by setting the wire to a lower priority: But what if Liam is working on some other priority 5 builds across the map? Then Hassan will build the priority 5 tile, cross the map to help with those priority 5 builds, and then return to do the priority 4 wire build. That's a big time waste. I'd prefer for Hassan to build the priority 5 tile, and then build the priority 4 wire because it's so close. Then if Liam finishes the distant builds before Hassan finishes the wire, Hassan will be spared that trip across the map. That would happen if Hassan subtracted a distance penalty from the distant tasks, so those priority 5 builds that are 750 tiles away would get treated like priority 3.5 tasks, and the priority 4 wire would win. Alternatively, if I really did want Hassan to build the tile and then do the distant builds before building the wire, then I'd just assign the wire build priority 1 instead of 4. That way, even after applying the distance penalty, Hassan would still decide to do the distant builds first. Link to comment https://forums.kleientertainment.com/forums/topic/132708-are-dupes-meant-to-be-so-stupid/#findComment-1486486 Share on other sites More sharing options...
sakura_sk Posted August 16, 2021 Share Posted August 16, 2021 3 minutes ago, rgduck said: Let me offer an example: Nooooooo.... You don't do that to them. You know better. 6 minutes ago, rgduck said: As far as I know, the only way to ensure that happens by setting the wire to a lower priority Nope! The only way to be sure is to wait for the tile to be build first 8 minutes ago, rgduck said: Alternatively, if I really did want Hassan to build the tile and then do the distant builds before building the wire, then I'd just assign the wire build priority 1 instead of 4. That way, even after applying the distance penalty, Hassan would still decide to do the distant builds first. Here is where you need to set your priorities. Do you need to build a wire passing through a puddle no matter what because it's urgent? Or do you want to seal any water before start remodeling/expanding your base? Making every dupe calculate all the time the relative distance of every given job they can reach, on top of calculating everything else (bladder, stress, decor, debuffs, skill points...) , I don't know what pc you have, but I wouldn't like to do that to mine, even if that made dupes a little "smarter". Even if pc performance wasn't the issue and dupes could do every job they were given exactly as you think they would, where is the fun in that? Link to comment https://forums.kleientertainment.com/forums/topic/132708-are-dupes-meant-to-be-so-stupid/#findComment-1486489 Share on other sites More sharing options...
rgduck Posted August 16, 2021 Author Share Posted August 16, 2021 43 minutes ago, sakura_sk said: Nooooooo.... You don't do that to them. You know better. Not sure what you mean by this. 43 minutes ago, sakura_sk said: Nope! The only way to be sure is to wait for the tile to be build first Yeah, I realize a different dupe could get assigned the bottom wire build and finish it before Hassan builds the tile. That's yet another thing I'd love to be able to control. Group tasks so that they only ever get assigned to one dupe at a time. 43 minutes ago, sakura_sk said: Making every dupe calculate all the time the relative distance of every given job they can reach, on top of calculating everything else (bladder, stress, decor, debuffs, skill points...) , I don't know what pc you have, but I wouldn't like to do that to mine, even if that made dupes a little "smarter". That's fair. I'm still really surprised to learn that pathfinding is the game's most CPU intensive task, but I'll defer to those who know more. Frankly, I'm baffled by other aspects of the game's performance. Like why does it use only a single CPU core, and why is that core running flat-out even when the game is paused? But regardless, I'm asking for an optional feature. The player could decide whether it's worth the performance hit. 43 minutes ago, sakura_sk said: Even if pc performance wasn't the issue and dupes could do every job they were given exactly as you think they would, where is the fun in that? I think we'll have to agree to disagree on this. I find the fun in strategizing and building my base. Difficulties in directing dupes mostly detract from my enjoyment. Link to comment https://forums.kleientertainment.com/forums/topic/132708-are-dupes-meant-to-be-so-stupid/#findComment-1486490 Share on other sites More sharing options...
Sasza22 Posted August 17, 2021 Share Posted August 17, 2021 On 8/16/2021 at 2:45 AM, rgduck said: Really? That's interesting. If pathfinding is the most computationally intensive task, then shouldn't it be relatively easy to speed things up by using multiple CPU cores? I had assumed the game didn't do that because the most CPU-intensive tasks were not easily divided up. Multithreading might help but it`s a lot of work to add it to a game that didn`t have it from the start. The devs added multithreading to some stuff but the pathfinding is such a complex system (basically everything is connected t it) that i`m not sure it will be ever done. Anyway we are missing one thing here. Access restrictions. Each door or airlock can have access restrictions. Those not only help prevent dupes from running where they shouldn`t but also help the pathfinding calculations (less possible routes - less calculations to do). You can use doors to keep certain dupes tied to some parts of the base so they aren`t running back an forth and focus on a certain task. Link to comment https://forums.kleientertainment.com/forums/topic/132708-are-dupes-meant-to-be-so-stupid/#findComment-1486648 Share on other sites More sharing options...
rgduck Posted August 18, 2021 Author Share Posted August 18, 2021 On 8/17/2021 at 11:57 AM, Sasza22 said: Anyway we are missing one thing here. Access restrictions. Each door or airlock can have access restrictions. Those not only help prevent dupes from running where they shouldn`t but also help the pathfinding calculations (less possible routes - less calculations to do). You can use doors to keep certain dupes tied to some parts of the base so they aren`t running back an forth and focus on a certain task. Yeah, door access restrictions are super helpful, and this is indeed a solution that I often end up implementing. Like to get a series of tasks done in order, I can specify a single dupe that's allowed into an area and lock him in so that he has to finish even the low priority tasks in that area. Or yeah, cordon off a whole section of the map for certain dupes only. I just sort of hate kluges like this. You have to build doors where you don't actually want them; have to later check if the door has been built and remember what it was you wanted done; have to be careful not to inadvertently create another way in; have to modify access restrictions when dupes learn new skills. Everything I want dupes to do on their own can be done by the player instead. What I'm asking for are really only QoL tweaks, and I totally get it if others don't feel as strongly about it as I do. Link to comment https://forums.kleientertainment.com/forums/topic/132708-are-dupes-meant-to-be-so-stupid/#findComment-1486871 Share on other sites More sharing options...
xenoborg Posted August 20, 2021 Share Posted August 20, 2021 The more lategame the more useless they become. Theres even a Pondering % that you can see when you hover over the working bar on the stats dropdown. Which is them basically stopping dead right next to 1-10-100 tasks and standing there for 10 seconds. out of the 30-40% work I get out of dupes each cycle a third of that is pondering, which is always at the top and 3-4x as much as the second highest. Double the dupes half the work. Link to comment https://forums.kleientertainment.com/forums/topic/132708-are-dupes-meant-to-be-so-stupid/#findComment-1487093 Share on other sites More sharing options...
rgduck Posted August 20, 2021 Author Share Posted August 20, 2021 3 hours ago, xenoborg said: The more lategame the more useless they become. Theres even a Pondering % that you can see when you hover over the working bar on the stats dropdown. Which is them basically stopping dead right next to 1-10-100 tasks and standing there for 10 seconds. Ooh, I'd like to see that. Where is it exactly? I don't know what the "stats dropdown" is. Link to comment https://forums.kleientertainment.com/forums/topic/132708-are-dupes-meant-to-be-so-stupid/#findComment-1487132 Share on other sites More sharing options...
Yobbo Posted August 23, 2021 Share Posted August 23, 2021 I remember quite a lot of work went into the prioritization system in the past, and it is at least a whole lot better now than it was then. It's not a simple fix to make the dupes more clever about task priority. Artificial intelligence is hard. Some sort of heuristic prioritization system could be an improvement over the absolute task ordering system used currently, but at least the current system is predictable, and thus can be worked around by the player once the rules are understood. Probably the most effective thing to make the game better is to suggest specific improvements to behaviour in specific cases. But then again, it's difficult to know what other problems any change in dupe decision making may cause in other scenarios. Personally i think the biggest problem with the current prioritization system is that it doesn't match human decision making, and thus is greatly annoying when dupes don't choose to do what we think they obviously should be choosing to do. But then, as mentioned above, duplicants are stupid and artifical intelligence is hard. Link to comment https://forums.kleientertainment.com/forums/topic/132708-are-dupes-meant-to-be-so-stupid/#findComment-1487732 Share on other sites More sharing options...
Joe Mucchiello Posted August 24, 2021 Share Posted August 24, 2021 The stupidity is programmed. Dupes seem to prefer to build from below, even if that means wading into lava to do the build when there's scaffolding above the intended build target they could have used. Link to comment https://forums.kleientertainment.com/forums/topic/132708-are-dupes-meant-to-be-so-stupid/#findComment-1488126 Share on other sites More sharing options...
rgduck Posted August 30, 2021 Author Share Posted August 30, 2021 On 8/23/2021 at 12:16 AM, Yobbo said: Personally i think the biggest problem with the current prioritization system is that it doesn't match human decision making, and thus is greatly annoying when dupes don't choose to do what we think they obviously should be choosing to do. This is a very good way of putting it. On 8/24/2021 at 4:50 PM, Joe Mucchiello said: The stupidity is programmed. Dupes seem to prefer to build from below, even if that means wading into lava to do the build when there's scaffolding above the intended build target they could have used. It feels that way to me too. I'd hypothesize that the algorithm comes up with possible paths starting from the bottom up, updating its choice every time it finds a shorter path. So it ends up choosing the first (lowest) path that doesn't waste travel time. That means dupes build from below and even deliberately step into puddles so long as they can do so without going out of their way. My usual silly response is to get mad at the dupe. "Listen Meep, you chose to get your feet soggy. Don't come whining to me now." Link to comment https://forums.kleientertainment.com/forums/topic/132708-are-dupes-meant-to-be-so-stupid/#findComment-1489465 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.