- Site Map >
- Modding and Creation >
- Sims 4 Creation >
- Modding Discussion >
- Testers wanted: No random desk-cleaning
- Site Map >
- Modding and Creation >
- Sims 4 Creation >
- Modding Discussion >
- Testers wanted: No random desk-cleaning
Replies: 5 (Who?), Viewed: 2233 times.
#1
16th Jan 2019 at 7:02 PM
Last edited by Anonymouse85 : 18th Jan 2019 at 1:50 PM.
Posts: 117
Thanks: 1965 in 15 Posts
Testers wanted: No random desk-cleaning
Hello Everyone I'm posting this one here for now because I'm not sure if it is a very lucky coincidence or if I really did it.
I searched and searched for years to find a mod that would disable the silly clean_desk interaction that was intended to be used by butlers only.
I've never played with a butler in my game but it kept annoying me that my sims, especially the neat ones, would randomly get up from watching TV or leaving a conversation to clean a stupid desk.
I could not find a mod that would disable that and it is an "all or nothing" situation.
Since I only started modding yesterday, it would be nothing short of amazing if I really did it but to make sure (because I'm afraid it will stop working if I take the files out of my mods folder, no kidding), can someone please test it?
I've tested it with different households and a new game and it seems to be working. I've gotten a butler for one household and he doesn't do it anymore, either.
Advertisement
#2
17th Jan 2019 at 5:26 AM
Posts: 2,671
Thanks: 62741 in 190 Posts
Setting the interaction's allow_autonomous to false should be enough to take care of the issue. By changing the constraints you are telling the Sim that they must stand a distance of 0 from the center of the desk in order to clean it from the pie menu and this causes a route failure. Leave the constraint as is and selecting Clean from the pie menu will continue to work.
PS: Congrats on your first mod, other than that one issue that's a great start!
PS: Congrats on your first mod, other than that one issue that's a great start!
#3
17th Jan 2019 at 7:34 AM
Posts: 117
Thanks: 1965 in 15 Posts
Ah, that makes sense. At first, I changed the distances, a lot. Higher, lower, nothing worked. The file for non-butler-sims doesn't have an autonomy line, although I haven't tried adding one.
What I actually did, aside from messing with the distances, was to change the periodic_stat_change in line 70 and that seemed to work, the desks just don't become imaginary dirty anymore so I guess that's all it takes, since the desk-cleaning interaction was actually supposed to be for butlers only (and I have no clue as to why regular sims were so much affected by it) but everytime my sim was in the same room as a desk, which happens a lot, especially in the apartments, they just could not leave it alone.
Getting up to clean the desk after writing one email? Come on. They even did that when it was a desk that hadn't been used and didn't have a PC standing on it and two days ago, I just finally had enough of that.
Selecting it manually in the game was never possible, when I just clicked on a desk, absolutely nothing happened which just added to my being annoyed by it.
It's like the watching toddlers when they go potty, that is another one of my pet-peeves with the Sims 4. Just give the kid some privacy in the bathroom, that really isn't too much to ask, especially if they've otherwise ignored the toddler all day but they go potty and boom, mom drops everything and goes to watch. That's just so weird and also inappropriate.
Oh, got a bit side-tracked Anyway, thank you so much! Your faster-gardening-mod and the working alarm clocks are some of the things I'd never want to miss in my game.
What I actually did, aside from messing with the distances, was to change the periodic_stat_change in line 70 and that seemed to work, the desks just don't become imaginary dirty anymore so I guess that's all it takes, since the desk-cleaning interaction was actually supposed to be for butlers only (and I have no clue as to why regular sims were so much affected by it) but everytime my sim was in the same room as a desk, which happens a lot, especially in the apartments, they just could not leave it alone.
Getting up to clean the desk after writing one email? Come on. They even did that when it was a desk that hadn't been used and didn't have a PC standing on it and two days ago, I just finally had enough of that.
Selecting it manually in the game was never possible, when I just clicked on a desk, absolutely nothing happened which just added to my being annoyed by it.
It's like the watching toddlers when they go potty, that is another one of my pet-peeves with the Sims 4. Just give the kid some privacy in the bathroom, that really isn't too much to ask, especially if they've otherwise ignored the toddler all day but they go potty and boom, mom drops everything and goes to watch. That's just so weird and also inappropriate.
Oh, got a bit side-tracked Anyway, thank you so much! Your faster-gardening-mod and the working alarm clocks are some of the things I'd never want to miss in my game.
#4
17th Jan 2019 at 8:12 AM
Posts: 117
Thanks: 1965 in 15 Posts
Fixed it (I think). For some odd reason, disabling only the autonomy doesn't do it. Oh well. The more I get into it, the less I understand some of the choices some of the programmers made. I guess that's part of being a modder.
#5
17th Jan 2019 at 6:51 PM
Posts: 2,671
Thanks: 62741 in 190 Posts
Quote: Originally posted by Anonymouse85
What I actually did, aside from messing with the distances, was to change the periodic_stat_change in line 70 and that seemed to work, the desks just don't become imaginary dirty anymore so I guess that's all it takes... |
This answer got rather long as I kind of was poking around at the files while writing it and kept coming up with a number of WTF is going on here questions The final answer should point you in the right direction, but some of the rambling prior to it may be informative for you so I'm not removing it but rather putting it all into a spoiler.
The periodic stat changes are used to cause changes to the statistics of the desk or the Sim during the duration of the interaction. For instance, in the case of the periodic change of 10 to the commodity_dirtiness, that sets the Desk_Clean interaction to make the desk CLEANER as the interaction run. There's also a change of 10 stated further down which is driven by Mood_Energized, so a Sim that is currently energized will make the desk 20 cleaner every time that updates.
I'm actually not seeing anything in the game that makes the desk dirtier. For instance, if you look at the bar objects you can see that bar_MakeDrink_Staging_basic makes a periodic change of -0.556 to commodity_dirtiness, making the bar more dirty (yes, the numbers are kind of reversed logic - as the statistic gets LOWER the object gets DIRTIER). The bar_Clean interaction then has the same +10 changes that are used in the Desk_Clean.
I've never seen a Sim try to clean a desk, and I'm honestly not sure how the desk gets dirtier since I don't see any actions that reduce the commodity, but I could be missing something.
Actually, digging deeper, I do see that the filthy lot trait does add a decay of 2 to the commodity_dirtiness for many objects (including desks) so perhaps you have that lot trait set?
It looks like it's a time-waster interaction that is associated with the filthy lot trait, and if your lot doesn't have that trait set then I'm honestly not sure how desks are getting any dirtier. I was able to get the Desk_Clean interaction to trigger only by using a cheat on the desk to make it dirty.
Finally, the reason the clean interaction is available to normal Sims is that near the end of the XML there are the various tests. The test_autonomous section has two test groups, the first allows the action to be available if the Sim is not a slob (blacklist_traits) and is not running the butler_situation. The second group alllows the action if the trait is not a slob but does have (buff whitelist) the butler NPC buff. Since a non-butler Sim would never be running that butler situation, that makes the interaction available to pretty much any non-slob Sim.
The desk_Clean_Butler interaction appears to be a busy-work kind of thing that the butler will do if there's nothing that really needs cleaning. The Desk_Clean interaction has a global test that requires the desk to have a DirtyState_Dirty in order for the interaction to occur, but the desk_Clean_Butler interaction has no requirement for the desk to be dirty. So perhaps, if you aren't using that filthy lot trait, that is the interaction that your Sims are actually running, and I agree that action should only be available to butlers.
And that makes perfect sense now why I'm not seeing Sims want to clean desks -- I don't have the stuff pack that adds butlers to the game, so my game doesn't load the desk_Clean_Butler interaction. I'm almost certain at this point that is what is happening in your game, due to that first test_autonomous group in the desk_Clean_Butler interaction the interaction is available to any Sim that is both not a slob and not currently being a butler.
So -- final answers as to what should fix the problem:
- Don't make any changes to desk_Clean, they shouldn't be required. You could add the allow_autonomous False flag if you want, but that shouldn't ever run unless the lot has that filthy trait.
- Change desk_Clean_Butler by either:
- Add the allow_autonomous False flag - this would cause that interaction to not be available to either butlers or normal Sims. This may be preferable to you if you just want to eliminate that fake butler busy action completely.
- Or, remove that first group of tests from the test_autonomous so that non-butlers won't consider performing the action autonomously. This would still allow a butler to run the task randomly sometimes when they want to do busy work.
Here's what that test_autonomous section should look like when I say to remove that first group of tests. This should make that interaction only available autonomously to an on-the-job butler that is not a slob.
Code:
<L n="test_autonomous"> <L> <V t="appropriateness" /> <V t="trait"> <U n="trait"> <L n="blacklist_traits"> <T>16860<!--Trait: trait_Slob--></T> </L> </U> </V> <V t="buff"> <U n="buff"> <V n="whitelist" t="enabled"> <L n="enabled"> <T>145405<!--Buff: buff_Role_Butler_NPC--></T> </L> </V> </U> </V> </L> </L>
#6
17th Jan 2019 at 8:40 PM
Posts: 117
Thanks: 1965 in 15 Posts
Oh wow, thank you for taking the time! Indeed, I now understand a few things that I couldn't figure out before.
Yes, the butler only came with the vintage glamour pack.
Long before I even started thinking about writing my own mods, I tried to find mods for this very problem a lot and I could never find one. Even now, still can't find one. Good thing I don't need to anymore, either Still makes me wonder tho.
Now, more caffeine and then, on to it! Ooooh, I can even offer different flavors of the mod, thanks to you! Wow, I hadn't even thought about that before. Learning new things is so exciting, I love it
Thank you so much.
Yes, the butler only came with the vintage glamour pack.
Long before I even started thinking about writing my own mods, I tried to find mods for this very problem a lot and I could never find one. Even now, still can't find one. Good thing I don't need to anymore, either Still makes me wonder tho.
Now, more caffeine and then, on to it! Ooooh, I can even offer different flavors of the mod, thanks to you! Wow, I hadn't even thought about that before. Learning new things is so exciting, I love it
Thank you so much.
Who Posted
|