Bugfix for Version 3
This is a picked upload! It showcases some of the best talent and creativity available on MTS and in the community.
(01/03/2018) - This updates the .package file for version 3 of SCAM. Children and toddlers were unable to access the control autonomy menus. I just realized this last night and found it kind of annoying myself so I figured a fix was in order.
Update to Version 3
Version 3 extends the Currently Running Autonomy selection to include all recent autonomy, so you can change autonomy settings for actions that you missed catching the first time. Up to 50 actions performed by all the Sims on the lot are tracked by the game's built-in interaction archiver feature. This archive of recent actions is not cleared and persists as you move from lot to lot, or even if you reload your game.
This mod could conflict somewhat with any other mods that also utilize the interaction archiver feature of the game. To the best of my knowledge there are no other mods that do so. The only conflict that should arise would be if the other mods turn off the archiver or modify the numbers of actions which are tracked per Sim. If another mod should turn off these settings, the mod would continue to work as it did in version 2, showing only currently running or queued autonomy, but not a snapshot of past autonomous actions.
Version 2 Notes
Version 2 of the mod includes some new features to control autonomy even more. First, a brief discussion before the standard change notes as there are some big changes to consider:
The first new option is to control "mixers" which are the sub-actions that occur as part of another action, the most obvious example being the things Sims chat about. Turning off a chat mixer that you don't want to occur autonomously will remove that mixer from consideration for both starting a chat and from occuring during a chat. If you have the menu turned on, clicking on a Sim in a conversation and choosing to control autonomy will include all mixer actions they are currently considering. This list can change depending on a Sim's mood, the target's mood, gender or age, or various other buffs and traits.
The second new option is to show all current autonomy which is occuring on the entire lot. This will allow you to disable certain actions that are normally inaccessible by catching a Sim in the action. A silly simple example for instance, while cooking pancakes a Sim will perform a flip animation - if you don't like that wait until a Sim starts to flip a pancake and access the current autonomy list from the terrain menu (it can help to pause the game). Then just turn off "Stove_FryingPan_Flip_Basic" and save the changes. Sims will never flip a pancake again! Unfortunately...
This will allow you to turn off things that you really really
don't want to, or shouldn't. Continuing the example of turning off the pancake flip - any school child can tell you that flipping pancakes is an essential part of making a plate of pancakes! So if you do turn that off, when the Sim reaches the point where they are supposed to flip the pancake, they will simply stop and stare stupidly into space. They will never finish the chore of cooking the pancakes because the entire pancake making process is stuck!
Oh No! Guess I have to restart my game? Nah, I got you covered, because the third change in version 2 of SCAM is that you can now click the terrain menu to Choose Actions to Restore. This will present a list of all autonomous actions that you have turned off, in order of the most recently disabled ones. So you can simply go into there, turn pancake flipping back on, and the Sim will happily start flipping the suckers back in the air and finish cooking their breakfast.
Some actions won't continue properly even when switched back on, but you still shouldn't need to leave the game. Other options are to cancel the action normally, which usually works. Or if you have other controllable Sims, selecting one and travelling to another lot and back can work. If that doesn't help, saving your game AS A NEW SAVE and restoring will generally produce sanity again.
Most of these subactions will not "lock up" a process like the above example of flipping pancakes. I have a Sim who writes books, for example, and I hate when she suddenly and often gets distracted to look at something stupid on the desk. Turning off the "idle" action of staring at business cards or whatever will eliminate that and they'll just continue working on their book. As an experiment I turned off every available subaction of writing that came up and the Sim just stared at the screen (not typing, not moving the mouse, just staring) and the book continued to magically write itself.
Finally, I took a page from Deaderpool's playbook and added the ability to change the display of autonomous actions from the internal action name, for example from "sim_doPushUpsAutonomously," to the in-game display text "Do Sit Ups". This last change involved removing the "Cancel" button from the dialog to save some space, so to cancel you can just use the "X" button in the top right corner and any changes you've made since the last time you clicked "Save Changes" will be ignored.
If you have any helpful tips or even funny stories (for instance turning off the action to grab a plate of food after cooking made my Sims cook a meal, drop it, and then return to cook another meal they wouldn't eat over and over getting hungrier by the minute) about actions you've played with changing the autonomy, please share them in the mod's comments section! And have fun with your new autonomy control options!
- v2 (Dec 8, 2017)
- Moved the terrain click Control Autonomy selections (e.g. Enable/Disable Control Autonomy) into a sub-menu due to adding new features.
- Removed cancel button from autonomy list window and replaced with a button to switch the display from the default internal action names to the descriptive text that is used in game, for example "phone_PlayGames_AutonomousOnly" vs. "Play Game".
- Clicking a Sim to control autonomy will now include mixer interactions currrently being considered, e.g. "mixer_social_Insult_Mean_STC" which if turned off will mean Sim's won't consider insulting each other during a chat.
- From the terrain click menu, you can select to control all currently running and queued autonomy that is occuring on the lot. So if you catch a Sim doing something you don't want them doing, you can turn that off. *WARNING* -- This will allow you to turn off some stuff that you really don't want to turn off and can cause autonomy to stop functioning properly for certain situations. Which is one big reason behind adding...
- From the terrain click menu, you can select Choose Actions to Restore which will present a dialog with all the autonomous actions you have turned off so you can re-enable them easily (and without restarting the game). The normal version of this will present the list of autonomous actions in order by what you have most recently disabled first, there is also a Choose Actions to Restore (Sorted) option which will present the list sorted by the internal action name.
- v1.1 (Nov 20, 2017)
- Interactions on Control Autonomy dialog are now sorted by name
- Corrected a cosmetic bug with page number display on dialog
- Minor performance tweak on first load when starting game
The Self-Configurable Autonomy Mod allows players to alter the autonomy for actions in the game, while it is running. Changes take effect immediately, there is no need to exit and reload the game!
You will be able to configure the "No Autonomy" settings in your game with precise control, turning off only those autonomous actions that you want disabled and leaving the rest to work normally. For instance, you can click on a stereo and disable just "Listen Deeply" if you want. Or click a baby and turn off bounce, shoosh and coo at, while leaving everything else the same.
Your configuration is saved to a text file in the same folder the mod is installed in and reloaded each time you run the game. If needed, the configuration can be removed to restore all default autonomy settings in the game. The file can also be edited with a standard text editor to remove specific entries (handy if you have a lot of things disabled you want to re-enable).
- Click an open terrain area in the game (the ground, a floor, etc.) and choose "Enable Control Autonomy".
- This enables the ability to edit autonomy, it doesn't switch the whole mod on or off - the mod is always on while installed.
- The control autonomy menu item is only turned on for the current sim (controlled by a hidden trait that is not saved in your game). If you change to another sim you will need to re-enable the menu by clicking the terrain.
- Now click on an object and choose "Control Autonomy". This will pop-up a dialog with buttons for all autonomous actions that are attached to that object.
- Click a button to enable or disable autonomy for the described action.
- If there are more than one page of autonomous actions for that object, you will have a Next Page and Previous Page button available.
- Click Cancel if you change your mind, no changes are made until you click the Save Changes button.
- You don't need to click Save Changes on each page if there's more than one change you want to make.
- Once you click Save Changes, all the autonomous actions you chose will be turned off immediately in the game. The configuration will also be saved to a text file.
- To re-enable an autonomous action, just click that object again and the disabled actions will appear without an asterisk
- next to them. Click the button to turn it back on and click Save Changes.
- There are many autonomy settings that are attached to a sim, for instance to configure phone autonomy click on the sim and look through the many settings to find what you want to turn off.
- Click on the terrain again and choose "Disable Control Autonomy" to remove the control autonomy button from all the objects in the game. The mod is still running, it just turns off the clutter in your action picker menu.
- Like most "No Autonomy" mods, you can still choose to have a sim perform the action. This only removes the autonomy from it.
- Also, again like most autonomy mods, this disables the autonomy for an action. That action may be associated with multiple objects and it will turn off the autonomy for ALL items in the game that allow that action. For instance, turning off "Ghost_Possess" on a table will disable ghosts possessing any other item in the game.
- Changes are made in memory only and written to a configuration file. You can remove the configuration file to restore all autonomy settings back to default.
- If you have other No Autonomy mods installed, they will take precedence over this one - you will not be able to configure autonomy for actions that have been removed by another mod.
- Removing the mod will also restore all autonomy to default. You can retain the configuration file to use later if you wish.
- You can break some game functionality in ways that are not intended by the developer if you turn off the wrong things. If you aren't sure what an action does, you can disable it and re-enable it later if you like. Most choices are pretty clear what they do, but some not so much.
For instance, I'm not sure what would happen if you disable the autonomy for "mailbox_MailmanDeliverMail". Maybe bills will never be delivered, or maybe you just won't get a bill and then have the power turned off anyway, or maybe the mailman will get stuck on your lot wandering around like a zombie.
Typically it would be perfectly safe to try turning something off, then re-enabling it if things don't seem to work right afterwards. Nothing you disable should prevent you from being able to load the game and perform autonomy configuration, but in the worst case you can always delete the configuration file, or edit it with a text editor to remove the action you feel you shouldn't have turned off.
Installation Instructions and Compatibility
To install, unzip the two files contained in the download file into your game's mod folder. It can be placed in a sub-folder if desired. It uses a script, so the mod cannot be installed more than one sub-folder deep.
This mod was written and tested on Windows for The Sims 4 version 188.8.131.520 (Nov 7, 2017). It should be compatible with any stuff or game packs and other mods (even other No Autonomy mods).
The script uses features of the game that have been stable for years and are not likely to break in future patches. I wrote the core bits of this mod over a year and a half ago, and when I recently started working on finishing it the mod loaded without any issues.
This mod uses the ts4script file format for the script portion of the mod and cannot be installed automatically with a mod manager (until a mod manager is updated to support these files). To install the mod manually, extract both the package and ts4script files from the download into your mods folder.
Script mods must be enabled in your game options for this mod to work properly.
This mod could conflict somewhat with any other mods that also utilize the interaction archiver feature of the game. To the best of my knowledge there are no other mods that do so. The only conflict that should arise would be if the other mods turn off the archiver or modify the numbers of actions which are tracked per Sim. If another mod should turn off these settings, the mod would show only currently running or queued autonomy and not a snapshot of past autonomous actions.
This mod alters the schema and correpsonding archive_interaction() method for the game's interaction_archiver and interaction_archiver_mixer. Any other mod which attempts to also modify the schema and archive method will conflict with this mod.
If you use Deaderpool's MC Command Center, the functionality of SCAM is now included in the latest versions (4.0 and newer). Although both mods can theoretically co-exist just fine, it is best to use one or the other (they won't share configurations for one thing).
- Kuree and all the others at Sims4Group who have put together the S4PE tool
- Deaderpool for figuring out how to modify tuning at game load
- Maybecats for figuring out how to use button dialogs in script mods
- As always, Scripthoge for writing the script "injector" routines
- And of course big thanks to the translators:
- Egureh for the Chinese translation
- Snugglypoo4 for the German translation
- Heidi137 for the French translation