Forum Discussion
22 Replies
- Firstly, I'm not posting here as mts site staff, but as a creator and user. (I'm also not aware there's any plans to change upload policy at mts, in case that's what you're concerned about – the current way to handle overrides (i.e. what you describe: creators must state what resources they're using, so that downloaders have a chance to sort it out) is tried and tested and seems to make sense. Any other concerns regarding mts, please post there in Site or Creator Issues.)
Apart from what velocity says about large-scale vs small-scale mods, there's also the problem with overriding objects that have tuning for completely different aspects – there is no logical reson one wouldn't want to, say, have children be able to use gardening plants and at the same time change their harvesting states. Or have several different custom interactions added to the same object (say, dancing on tables vs. sitting on tables or whatever). But by overriding, this isn't possible – everyone would only be able to change exactly one property of each object (or manually splice the mods together).
Also, overrides always come with the joy of having to check for differences with every single patch Maxis will publish .. if they keep up their current rate, I'm rather not so keen on that. Scripting might offer the big advantage of being able to keep using the same script to modify whichever the current version happens to be, without touching the rest of it.
Also, for all I can tell (I don't remember very much about TS3 tuning), tuning in general is vastly more powerful in TS4. So trying to make it work as hassle-free as possible would be something that has more of an impact now than it would have previously. "pbox;12872143" wrote:
But by overriding, this isn't possible – everyone would only be able to change exactly one property of each object (or manually splice the mods together).
We modders did this manually splicing tuning mods together all the time during the Sims3 days at Naughty Sims Asylum. We call these "combo" mods; a mod between one of mine and one of Blue's for example, which is required by someone because they want both my mod and her's which have used the same resource.
As far as I understand these gigantic lists, which isn't very far, the files velocitygrass mentions; it is completely viable for one single individual to have one of these files as a "mod", hosted at MTS for example. When some modder makes a new item, it is added to this "list", the modder who has made the new item does not have that "list-file" included in their mod, it is maintained separately as a Helper-mod. Anyone downloading the new modder's new item will need to download the new Helper-mod which has already been updated with the new item, because the new modmaker has contacted the maintainer of the List in advance.
There is some technical reason concerning these "list files" which will not allow the procedure I describe above to work correctly?- Well it does require cooperation of everyone making mods that affect the resource. With each generation of Sims game, it appears (to me anyway) that the spirit of cooperation is diluted.
- But this cooperation will be FORCED upon people who want to participate in making the new Interactions (or whichever mod type, whichever of these list-files) which would be a good thing.
- More than just cooperation, if I understand correctly what you describe it would also require some sort of centralised database with the info on who is “maintaining” which resouce .. good luck organising that =P
Also, if a thing like that affordances list (or maybe even a smaller one, like story progression) has only 10 attributes one may want to change (or not change), that already results in 99 possible combinations (even with just boolean changes). I am not sure who would consider it fun to update 99 different flavours of a mod on every patch ..
Did TS3 also have tuning for every single object? (I really don’t remember) - (Doublepost so that I can tag)
I believe it would be much more viable to agree on some sort of canonical scripting way by which stuff can appended to existing tuning; maybe @SpidersWeb can comment on the doability of that? If that would work, maybe someone will be so nice as to provide a sort of “template script” that all the XML tuning folks can use for their mods? - Sorry for the slow response, I have been thinking about it since you tagged me but barely had any time to actually sit down and mess with it (getting married in 4 weeks + work etc etc). I managed 30 minutes last night but spent that writing a logging function.
For the sake of discussion, I'll just think out loud.
The tunables are just loaded in to variables. So an individual mod could update that variable with new values it loads from it's own XML file (or be hardcoded in the PYO).
But one issue is that you'd need to know where in the Python code you'd want to apply that change - and it may vary, so it wouldn't be a case of quickly editing a template.py as such.
The other thing I'm not certain on, is if the variables which hold the tunable are static or not. If they're static, then you apply the change once and it would affect every instance (provided it does not reload the tunable). Otherwise you'd need to do it at startup, and everytime an object/sim was introduced - which could be quite annoying and you'd be reliant on callbacks for those events.
I'm also not sure if every piece of code defines it's tunables when setup (class definition)- if it was called inside a function you might not be able to update it in time without overwriting that function - and you'd want to avoid doing that as it'll cause just as much of a conflict issue. - So I spent a an hour (all I had) playing with it last night. There is a case of multiple instances (which I guess is kind of obvious) even with BaseInteractionTuning.GLOBAL_AFFORDANCES (when called from cheat prompt at least) but my approach (in my case its for a sim interaction but it could be applied to XML appending as well) will be iterating objects at start and when added, then modifying as needed.
If I'm remembering right, the code that generates the pie menu looks at the "super_affordances" flex method to get stuff, so that's a helpful place to poke around. For the XML appends, you might need to extend/copy some of the tuning functions to read a specific file - I didn't look too much at that.
(If anyone thinks what I'm saying is err... less than intelligent? .. please let me know, any pointers would be handy, I'm a fairly experienced developer but I'm learning Python on the fly here so saying something stupid or missing an important detail would be quite easy). - SimGuruEugi11 years ago
EA Staff (Retired)
Hi @SpidersWeb
Feel free to ask any specific questions you might have about how the tuning system works and interactions are generated. - Well, I've managed to get this working through Python scripting to add super affordances for sim's. The same tactic should work with some modification for objects. I've got a post on Mod The Sims with the details.
modthesims.info/showthread.php?t=546901
About The Sims 4 Mods & Custom Content
Find expert tips, troubleshooting help, tutorials for mods and custom content, and The Sims 4 patch files in our forum.15,685 PostsLatest Activity: 12 days ago
Community Highlights
Recent Discussions
- 2 hours ago
- 2 hours ago
- 4 hours ago
- 4 hours ago
- 4 hours ago