8 years ago
Why do injections work fine for some objects and weirdly (or not at all) for others?
So common practice is to, when possible, inject new super affordances into objects when possible, as opposed to adding them manually (the latter having compatibility problems with other modders and possible changes to the object from Maxis down the road).
But what I don't understand is for some objects, there's just a central file you can inject to and that's it. For example, object_toddler_pottyChair. There are two different potty objects in-game, but only object_toddler_pottyChair shows up in the game files (that I've seen) and if you inject a new super affordance to it, it'll show up on both potty chairs.
Then there's stuff like bed. Bed has a file for single bed, a file for double bed, and files for the individual different beds themselves. If I inject to the single bed and/or double bed file, it doesn't show up at all. Presumably it'll show up if I inject to the individual bed files, but that means injecting to every single bed there is and that means a little forward compatibility problems, as if new beds get added, you now have to take them into account. And I'm not sure about it possibly causing problems if you attempt to inject to an object id that doesn't exist... might throw an error, so if that's the case, you'd need to make a different script for each combinations of packs that involve beds (living nightmare).
Does anyone know a way to get around this problem?
I'd also like to understand, for the sheer curiosity of it, why it is that some objects operate differently in this way. The potty chair did come later, so maybe the practice was changed down the line? Or there's something different about it that removes the need for a unique object XML file for each different chair?
But what I don't understand is for some objects, there's just a central file you can inject to and that's it. For example, object_toddler_pottyChair. There are two different potty objects in-game, but only object_toddler_pottyChair shows up in the game files (that I've seen) and if you inject a new super affordance to it, it'll show up on both potty chairs.
Then there's stuff like bed. Bed has a file for single bed, a file for double bed, and files for the individual different beds themselves. If I inject to the single bed and/or double bed file, it doesn't show up at all. Presumably it'll show up if I inject to the individual bed files, but that means injecting to every single bed there is and that means a little forward compatibility problems, as if new beds get added, you now have to take them into account. And I'm not sure about it possibly causing problems if you attempt to inject to an object id that doesn't exist... might throw an error, so if that's the case, you'd need to make a different script for each combinations of packs that involve beds (living nightmare).
Does anyone know a way to get around this problem?
I'd also like to understand, for the sheer curiosity of it, why it is that some objects operate differently in this way. The potty chair did come later, so maybe the practice was changed down the line? Or there's something different about it that removes the need for a unique object XML file for each different chair?