RimWorld

RimWorld

Common Sense
Yoann 8 Apr, 2022 @ 11:24am
More options for cleaning feature?
Hello,
I wish to see more options for this feature please:

- (optional) pawns are encouraged to clean rooms where they're about to operate a building (ex. researching, cooking/crafting, or just going to sleep);

The pawns keeps cleaning before actions like rearming / refueling / uninstalling / repairing / deconstructing / using a switch / playing or even taking beer out of fermenting barrel... for many buildings where/when it's not common sense at all, time-consuming.

Recently I discovered your patch for the cleaning gizmo, I tried to edit it to give me more liberty (better than nothing) this way : <xpath>Defs/ThingDef[defName]/comps</xpath>
And sadly, it doesn't affect the 6 basics recreation buildings (Horseshoes pin/hoopstone ring/game-of-ur board/chest table/billards table/poker table), do you know why?

Having an option to show the gizmo on more buildings and being able to set the checking at false by defaut would be already a big improvement

Or restrict the cleaning for the work "do a bill", sleep and research (but maybe harder do to).

If it can help you, here the buildings who require to clean (other than bench):
_Turrets (x3)
_Mortar (not for using it)
_Traps (spike and others)
_Fermenting barrel (not checked for fill it)
_Sun lamp
_Plant pot & Bonsai pot (not for plant work)
_Battery
_Power switch
_Hydroponics basin (not for plant work)
_Comns console
_Orbital trade beacon
_Drum, Harp, Harpsichord & Piano (Drum maybe only because of a mod)
_Grave & Sarcophagus
_Heater
_Recreations buildings (6 + TV x3)
I forgot to check some buildings from Power tab.

There is also when interacting with prisoner.


Also, I don't know if it's still true 6 months later, but when a pawn do the cleaning before interact, an other pawn can come do the job before him (more time-consuming).

Thank you for reading (my bad english^^')
< >
Showing 1-3 of 3 comments
avil  [developer] 9 Apr, 2022 @ 9:07am 
There are three separate cleaning actions:
- clean when you plan to do something with a building (universal);
- straight up reworked "clean in the middle of the job" action for bills;
- heavily modified action for "move food to the table, clean, eat";

Pawns clean when building, switching and etc because this action works for anything that can be considered operating a building. Even going to sleep counts as operating a bed. Operating a bed or construction site (or even a switch on tv) have no distinction code-like, only by Id, and creating a whole data-base, what action counts or doesn't count as a good target for cleaning, seems like a bit too much work, don't even mind that it would ruin any kind of mod compatibility with building/action adding mods. So best I could do is limit, how much time they waste doing it.

Gizmo works only for bills. I probably should add a check just in case if building has it.
Maybe I could add some special flag that could be added in xml if action should use cleaning logic or not. And leave it at it in case if some geek wants to tweak his experience. I can even make an example since I actually hard-coded some actions from triggering cleaning.

I don't exactly remember, but isn't queueing an action makes a reservation on building? So an option to add a task to queue should work.
Last edited by avil; 9 Apr, 2022 @ 9:09am
Yoann 9 Apr, 2022 @ 9:27am 
Originally posted by avil:
Pawns clean when building, switching and etc because this action works for anything that can be considered operating a building.
It's the intuition that I had.
So the easier solution would be a better filtering of buildings affected (to remove the first cleaning action from buildings like battery, power switch...) by "blacklisting" some vanilla buildings (to keep compatibility with mods), and add a gizmo on all buildings affected to be able to turn it off before minimize/deconstruct... And to add an option to choose to turn off the Gizmo by defaut (pleaseeee).


Originally posted by avil:
Gizmo works only for bills. I probably should add a check just in case if building has it.
Maybe I could add some special flag that could be added in xml if action should use cleaning logic or not. And leave it at it in case if some geek wants to tweak his experience. I can even make an example since I actually hard-coded some actions from triggering cleaning.
So if I can't have a gizmo on the 6 recreations buildings it's because this cleaning is hard coded?
If you let me good tool to interact on xml part, it's all I wish :)
Yoann 28 Jun, 2022 @ 2:17am 
Again thank you a lot for the last update, greatly appreciated!

One last thing is missing to make the opportunistic cleaning perfect: the ability to disable it when the pawn is outdoor (mainly to avoid the cleaning of outdoor by doctors after tending).
< >
Showing 1-3 of 3 comments
Per page: 1530 50