Hi case, thank you very much for the feedback, but I don't quite understand your criticism. What specific features did you have in mind that the plugin should be able to do? If you could give me a concrete example, that would be very helpful. Maybe I can incorporate that somehow in a new version. English isn't my first language, so it's sometimes a little difficult for me to understand.
I'm sorry - and please don't understand it as criticism, more like a feature request? The problem is that I don't know whether what I'm asking it's even possible - I know that some people have tried, but I'm not sure if I understand VaM's mechanics well enough.
So the goal is "simply" to be able to load one set out of a number of sets of clothing items into a scene without having to edit and save a local copy of the scene. Now you'll probably think "But you can do that already! Just load a clothing preset?". Yeah, I can do that, but then all the triggers in the scene still point to the original clothing item. Like when there's an undress action pointing at "T-Shirt XYZ", the trigger will point not to "a generic T-shirt", but to that one specific T-shirt, and nothing else. Or consider cumcloth items: You want them to be invisible, until one specific moment, and then they should appear. So what creators do is they load every clothing items they use at the beginning of the scene, then they set the alpha value to minimum, and then set alpha to normal again with a trigger (similar with undress triggers, but you know that already, since you wrote this plugin).
So when I want "T-shirt B" instead of "T-shirt A", I can load it into the scene, but all the triggers pointing to T-shirt A will still point to T-shirt A. And the scene will still load T-Shirt A at the beginning, wasting memory and CPU resources. And the trigger undressing T-Shirt A will break if I delete T-Shirt A ... Now, what if I have 20 whole clothing sets of T-shirt, skirt, bra, panty etc, and I want to be able to load the scene, and
then decide which one of those clothing sets I want to load this time around? Then this becomes A LOT of work.
(I think the root cause is that VaM doesn't know
categories of clothing - there is no trigger "undress T-Shirt" because VaM doesn't know what a T-Shirt is)
There have been different attempts to make this more flexible (note: both try to solve slightly different problems!):
1) I know that atani has this elaborate "quick XYZ" system, and part of that is "quickdress" (
https://hub.virtamate.com/resources/quickdress-quickly-load-and-control-clothing-presets.32469/) - the idea is to have an empty atom with a little plugin in it that manages the loading of the clothing items and all trigger actions pointing to them. Then you can load different presets of the empty atom, rather than the clothing presets to load different sets of clothes. And the little plugin offers eg three different trigger actions (say undress item A, undress item B, alpha value item C) - then you can build a scene where the triggers just point to those three trigger actions, and you can exchange the clothing by loading another quickdress atom (which is an empty with a plugin) without breaking any triggers. Drawback is that building different "quickdress" variants is a lot more work for a user, because VaM has no simple menu to support that, and that scene creators would have to use that quickdress system right from the beginning, so I guess that's why that never got much use.
2) TGC (and SlamT?) did something different (
https://hub.virtamate.com/resources/virtual-sweetheart-reloaded.12577/): Both of them build scenes where they had menu buttons that each triggered loading clothing presets with names like "Custom/Atom/clothing/clothing 1.vap", "Custom/Atom/clothing/clothing 2.vap" etc. and the published .zips with placeholder presets that you can unzip to your local installation - then you can overwrite those placeholder presets with your own presets and the scene will still work. Of course, every "undress trigger" or "alpha trigger" still can only point to specific, fixed clothing items - you can't exchange those, and I don't think they ever solved that.
TL;DR - I thought that with your method, one could maybe use that to solve those problems more elegantly?