RimWorld

RimWorld

Automatic Work Assignment
182 Comments
Iarinu 12 Oct @ 5:14am 
First: Love this mod. Searched many, many years for something like this, cause micromanaging all the works with 40+ size colonies gets extremely annoying after a while.
I also do have problems with auto assignment when using Vanilla Skills expanded. After looking into it a but further, I can confirm your suspicion: A critical passion reduces the learning speed to 25% for every other skill, which leads even burning passion skills not being assigned via the "Has Passion" condition, because they tend to land far under 50% learning speed. Now I'm a bit stuck, because I still want to auto-assign such pawns to their other passions, for diversification and also the mood buff. Especially when the critical-passion-skill is meele.
Amity 11 Oct @ 5:01pm 
It seems a reload is all it needed. looks like its working now.
Lomzie  [author] 11 Oct @ 10:37am 
That's strange, it should work just fine. It does ignore passions that result in learning rate less than 100%, such as apathies or the debuff from critical passions.
Amity 11 Oct @ 5:27am 
Hello awesome mod got everything working except that passions included in Vanilla Skills Expanded mod don't work with the condition has passion.
Lomzie  [author] 9 Oct @ 4:06am 
@Vril I don't think a feature that would go against the order set by the work spec list would be a good fit. You should, however, be able to use the "Include specialists" toggle for the basic package. As to compatability with "Personal Work Categories", it depends on how that mod is implemented, but there is a decent chance that it works.

@Lessïlera I'm aware of this issue, and I do plan to add a compatibility patch. Don't know when though, as I have been busy with other projects recently.
Lessïlera 8 Oct @ 6:32pm 
Compatibility feedback : There is no way of restraining a pawn from being assigned to a hated job when using this mod with "More Than Capable (1.6-b)" (https://gtm.steamproxy.vip/sharedfiles/filedetails/?id=3237083444)
Vril 6 Oct @ 1:38am 
Oh and is your mod compatible with personal work categories?
Vril 5 Oct @ 11:39am 
@Lomzie can we get something that make a pawn specialist yet doesn't exclude it from other job? Let say i designate certain jobs as firefighting basics bed rest a basic package, and then have specialized crafting pawns for ammo making, fabricating, smithing etc. Instead of putting these high in the order list, which will affect all pawns, why not make these specialists set those jobs right after in priority after the basic package? So it would look like this 1- basic package 2 - whatever designated job 3- whatever else on the list. The order of the hierarchy of the jobs would not matter for these pawns. They would always have these assigned specialist jobs at priority 2, irrelevant of these job place in hierarchy.
Lomzie  [author] 29 Sep @ 4:14am 
Oh yeah looks like I overlooked the mod settings when I fixed this issue across the mod a while back. Thanks for letting me know, I'll see to fixing it.
Vril 28 Sep @ 6:35am 
float learnRate = skill.LearnRateFactor(true); clearly decimals should be accepted, but they currently arent in modoptions input field.
Vril 28 Sep @ 6:30am 
Hello, the input fields in mod options like "hour treshold for mental break" or "learn rate requirement for passion" clearly take decimal values, but are set to accept integers and not floats/doubles, hence you can't place values like "0.5" in them.
Lomzie  [author] 28 Sep @ 5:45am 
Any work type added by other mods is automatically included in this. This mod is particularly useful with mods that split work into various subtypes.
Lil Kitty Girl 28 Sep @ 5:17am 
Finish is probably finish off work type added by allow tool
Lomzie  [author] 28 Sep @ 1:05am 
Sorry about the late response, I was hyperfocusing on another project lol. Anyhow, thanks for the bug reports, I'll look into it. Regarding landing your ship somewhere there are already people, this might be particularily difficult to solve, so it might take a while.
Lil Kitty Girl 27 Sep @ 1:03am 
Makes sense
Vril 26 Sep @ 1:24pm 
Finishers are leftovers.
Lil Kitty Girl 25 Sep @ 8:51am 
Seems things tend to bug out when my ship lands somewhere where there are already people
Lil Kitty Girl 25 Sep @ 8:30am 
It works at first, but loading the config causes it to break causing you to have to reasign the value even tho it appears to be correct
Lil Kitty Girl 25 Sep @ 8:29am 
Has assignment check seems to be broken for me now. Not sure what happened..
Lil Kitty Girl 25 Sep @ 2:50am 
Was able to prove tit wasn't an issue with my config by setting everyone to an area that wasn't used anywhere and applying my changes. I can confirm that there are groups that are properly matched that should have been asigned to unrestricted and others assigned to ship that weren't
Lil Kitty Girl 25 Sep @ 2:49am 
I bet. It feels like being on an orbital platform really messes with a lot of the conditionals. I've noticed that the issue earlier doesn't happen in my main area. My main area does have the problem where only the main guest from a quest is recognized and not the guards they came with. In my other area I have a problem where the set allowed area isn't actually setting the allowed area.
Lomzie  [author] 24 Sep @ 11:52pm 
It's strangely difficult to figure out if a pawn is a guest or not, so it's not too surprising to me that there are bugs. Strange that it seems to be so inconsistent though. Thanks for the report, I'll look into it.
Lil Kitty Girl 24 Sep @ 11:40pm 
Setting min and target worker to use 1 x G prevents it from triggering if there are no guests, but my colonists are still getting a true on Is guest
Lil Kitty Girl 24 Sep @ 11:38pm 
Have an issue where all my colonists are passing the condition Is guest, despite them not being quest colonists. Am I misunderstanding something?
Lomzie  [author] 24 Sep @ 6:45am 
To further elaborate on what "over-comitting" is, it's basically comitting a pawn more than 100%. It can happen though, after which the system tries to avoid going above 200%, 300%, ect.
Lomzie  [author] 24 Sep @ 6:43am 
Setting up a job that prioritize passion, then skill is simple. Fitness functions cascade down the list, so with a list like [Passion, Skill level], pawns prioritized by passion first, then skill level. One of the preview graphics illustrate this.

I'm not sure what you mean by auto. Auto resolve? That just auto resolves work periodically.

I do realize your questions might just have been examples, but I figured this was better than nothing lol
Lomzie  [author] 24 Sep @ 6:43am 
Thank you for the kind praise. The mod definitely has a learning curve and although there has been some effort to alleviate this, there is still a lot of room for improvement. For the time being though, I'll try to answer your questions here.

Commitment affects pawn prioritization, by de-prioritizing pawns that are already committed to other work. For instance, if you have two pawns, A and B, each with 75% and 25% existing commitments respectively. New work with a commitment of 50% will then prioritize pawn B, in order to avoid over-comitting pawn A.

There are multiple different "if" functions, but in short they work by checking a condition, and return one or another value depending on the condition.
Anex 24 Sep @ 4:44am 
How does Commitment work and affect jobs for starters
how does the If function works, how do I setup job that prioritizes passion and then skill, what is auto, etc
Anex 24 Sep @ 4:42am 
After trying a lot of automated work mods, I found this to be the best one, that you can tweak to your liking, and it works really well. You just have to understand how it works first, which is not an easy task.
To the mod author, I say Thank you for making this, and this really needs a good starter guide or tutorial with pictures.
Lomzie  [author] 23 Sep @ 12:16am 
You can disable alerts by clicking the small A button on the work specification list. I can add an option for toggling all at once if needed.
Lil Kitty Girl 22 Sep @ 11:48pm 
A really useful feature may be a setting to disable warnings when there are under a certain amount of colonists to prevent work sites and temporary maps from being cluttered with a useless warning
Lomzie  [author] 22 Sep @ 1:40am 
Good to know, thanks. I'll note the missing persistence functionality.
Lil Kitty Girl 22 Sep @ 1:31am 
Config file
Lomzie  [author] 22 Sep @ 1:19am 
Saving/loading a save game, or a configuration file? References to in-world elements such as ideologions require some extra code to persist in when importing a file and for gravship launches, and I see that I overlooked some conditions including the one you mentioned.
Lil Kitty Girl 22 Sep @ 1:11am 
Also saving/loading/gravship launch resets Has ideoligion condition
Lomzie  [author] 22 Sep @ 12:27am 
Pull requests are welcome and appreciated. Several tweaks and features have been contributed by others through PRs.

Regarding the ordering issue, I am aware of this. It happens due to post processors (internal name for on assignment tasks) being executed in a different order. In theory it shouldn't be too complicated to fix, I just haven't gotten around to it.
Lil Kitty Girl 22 Sep @ 12:25am 
Also your mod is really awesome. I'm really loving the level of control it provides
Lil Kitty Girl 22 Sep @ 12:09am 
I think normally this wouldnt be noticed since on assignment rarely depends on the order unless its ordering the bar in some way or using conditions that are set within the same on assignment
Lil Kitty Girl 22 Sep @ 12:07am 
I'm referring to the set colonist bar ordering's ordering variable. it seems to only take the first fitness but not 2nd, 3rd and so fourth. I think move in colonist bar is also not following the order of fitness when there are tie breakers and all colonists matches the condition. (The order move left is processed seemed to not be ordered by fitness after first condition, an edge case that really only effects a few things)
Lil Kitty Girl 22 Sep @ 12:01am 
Btw, are you open to pull requests on your github?
Lil Kitty Girl 22 Sep @ 12:00am 
Found the on assignment for bar ordering does not respect 2nd and 3rd and so fourth fitness options on ties. This can be particularly annoying if you want to say have your ideology leader be first, then the moral guide be second, and so fourth.
Lomzie  [author] 21 Sep @ 10:02pm 
Capable of work checks against work types, while "violent" is a work tag. I'll look into adding a separate condition for work tags.
Lil Kitty Girl 21 Sep @ 9:55pm 
The Is cappable of work node doesn't seem to support using the work type "Violent"
Lomzie  [author] 21 Sep @ 7:58am 
Good idea, I'll look into it!
Lil Kitty Girl 21 Sep @ 6:01am 
Also wanted to ask if you could make the has title and has role conditional allow for a any, as in allow anyone with a royality tile/ideology role
Lomzie  [author] 21 Sep @ 5:46am 
I still don't know what you mean. If possible, please provide a screenshot of what you refer to. You can post it in Bug Reports.
Lil Kitty Girl 21 Sep @ 3:45am 
I mean the finish work
Lomzie  [author] 21 Sep @ 3:41am 
Finish Work Tab? I'm not sure what you mean, the only tab added by this mod is the work manager tab.
Lil Kitty Girl 21 Sep @ 1:29am 
What does Finish work tab do?
Lomzie  [author] 18 Sep @ 9:44am 
No, you can fully automate priority assignment.