Rational Priority

If you liked this item, please rate it up on Steam Workshop page.

Author: mesi

Last revision: 11 Apr, 2025 at 22:29 UTC

File size: 33.62 KB

On Steam Workshop

Description:

By default duplicant task prioritization is inflexible, irrational, and quite frankly insane. This makes their task selection more rational, and thus slightly less insane.

Key Features
  • Duplicants no longer prioritize tasks based on a fixed importance heirarchy. In stead they will weigh the task priority, their personal preferences, and the travel distance required, making an informed decision based on all of these factors combined. This means a lower priority task nearby may outweigh a higher priority task far away. Similarly a nearby high priority task may outweigh a low priority task for which they have higher personal preference. In general, their task selection will simply make more sense.

New Priority System

Most of the time you won’t need to worry about task selection with this mod. If you want a duplicant to spend more time doing digging tasks, increase their personal digging priority in the priorities screen. If you want them to dig even more, increase it again. If you want a task done, set it to a higher priority. If your duplicants are doing something you think is unimportant, set it to a lower priority. This should all just work.

Without this mod a duplicant with a higher personal digging preference will never do another task when there is digging to be done, no matter how high you set the priority of the other task, or how low the priority of the digging. With this mod a duplicant with a digging preference may still decide to clean that toilet, if you set the priority high enough and they are nearby.

It also greatly reduces instances of duplicants running across the map for trivial reasons. If there is a task right in front of them, they will prefer to do that before running off to do something far away. Of course if the far away task is significantly more important, they may still run to do it.

In general, an increase of +1 priority on a task will cause a duplicant to walk twice as far to do it. An increase of one personal preference level will cause a duplicant to walk 4 times as far, all else being equal. But as i said above you probably don’t need to care. Just set the priorities as you think they should be, and treat your duplicants with the respect they hopefully now deserve.

F.A.Q.

Q: If they prefer to do tasks nearby, doesn’t this mean they won’t ever go do far away tasks even if i set them to high priority?
A: No it doesn’t. They will still go do high priority tasks far away. They will just be rational about it. If you are having problems with this please let me know, but if you just think it might be a problem and you haven’t actually tried the mod… try the mod.

Q: Will my existing colony explode if I install this mod? I have things set up just the way I like them.
A: Things might need a little tweaking but it shouldn’t ruin existing setups. High priority tasks are more important, low priority tasks are less important, this basic premise is still the same. Where it’s most likely to cause problems is where this premise is not respected by the original system. You can always "Save As" before you start, if it makes you feel more at ease. This mod doesn’t affect save files at all.

Tips for getting the most out of the new priority system
  • Use the lower priority numbers, not just the higher numbers. 5 to 9 only isn’t always enough.
  • Set dupe priorities in the priorities screen. Specialists get things done. Generalists keep your colony running.
  • The "!!" priority still overrides everything else.
  • If you have tasks that need doing frequently far away from your base, consider stationing some dupes there more permanently. It’s cheaper to ship food and oxygen than to ship dupes back and forth.
  • There is a somewhat hidden "Enable Proximity" setting in the game. It’s best to leave this in its default off state. When it is on the game removes some useful priority information. This mod always takes proximity into account regardless of the setting.

Notes and Known Issues

The duplicant "to do" list sometimes will not list the correct priority or type for a job. Particularly this applies to sweep errands. Dupes should still choose the correct job. This list just sometimes displays incorrect information. This also applies to the base game even without this mod. As such it would be quite a pain to fix.

Bugs, Feedback and Requests

As always, all feedback is welcome. Either here, or on github.

I did a fair bit of playtesting, but if you think dupes aren’t prioritizing things the way they should, let me know. The prioritization behaviour is quite delicate, so there could easily be bugs, or weird edge cases i missed.

Source code and copyright

Source code for this mod can be found on github, here[github.com].

As far as i am concerned, this mod is public domain. You can adapt, copy, modify, repost, or generally do whatever you want with it without my permission, so long as you also abide by Klei’s terms of use.

Changelog

v0.7: update for ONI build 646687 (bionic booster pack). Bionics should be supported. Nearby digging behaviour should also be improved.
v0.6: udpate for ONI build 642443. No changes to functionality, Klei just moved some internals around.
v0.5: update for ONI build 525812. Out-of-world minor patch no longer needed so removed
v0.4: duplicants will now prefer more entertaining relaxation pastimes
v0.3: tasks requiring learned skills are now considered slightly more important than unskilled tasks, so duplicants with those skills are more likely to do them.
v0.2: clarify todo list tooltips, and correct errands tab tooltips.
v0.1: initial release