Posts: 7
Thanks: 25 in 3 Posts
2 Achievements
Method of getting around the 3 trait CAS limit + arbitrary configuration in CAS
What I don't think a lot of modders have realized is the potential of CAS preferences. Since you can have up to 50, and this can be increased by overriding traits.preference_tuning, this allows one to get around the 3-trait CAS limit and also apply other data not externally considered traits by the general playerbase, such as modded occults, reward traits, etc. The TDESC tells us that the like and dislike are full trait references. I'm not sure if they can be any trait or only preferences, but either way a trait can just contain a buff that loots adding another trait when added to effectively add that trait. So in one button a mod could map the like and dislike to two separate traits. For example, SpinningPlumbobs' Expanded Mermaid mod adds Sea Witches and Kelpies. So, that mod or a helper mod could wrap those two purely trait-handled occults (since custom fully recognized occults are not possible) in a preference item, then map "Like" to Sea Witch and "Dislike" to Kelpie, with no preference meaning neither. Alternatively, to allow both at the same time, just map the dislike option to a placeholder trait and use two separate preference items.
Options for grouping are rather limited, since there is a global list of CasPreferenceGroups that depends on SimData, and each CasPreferenceGroup has a SimData-dependant list of Categories. However, individual preference options link to their category, so an unlimited number of options can be added to a given category without causing a problem. Either we need a global list similar to the Venue List or VFX List, or put your configuration into an unfitting existing category (which is a valid option but kinda hacky). Unfortunately I am not the right person to host any universal lists because I have long periods of inactivity away from the Sims. (Edit: Nevermind the previous sentence, Zerbu has such a thing:
https://zerbu.tumblr.com/post/75689...preferences-mod ) It is also in theory possible to override SimData by poking memory, though I have only tested this through Cheat Engine and making it into a mod would involve loading a real executable in some way (see my research
here)