Talking it over with TheAaron I think we came up with the simplest solution!
I can read customFX from the FX menu, so instead of having to make a confusing for everday user Array of JSON entries in a handout that would get unwieldy after a handful. People can just define them in the custom FX as normal.
Then I can use the "BLOODCOLOR" attribute we have now to figure out if its a customFX to use.
So the attribute options would be:DEFAULT#AAFFAA(New Option Example): FireAnd the custom FX you named fire will be used.
Logic for it will be:
"If default use default, if matches custom FX name use it, if not any of those assume its a hexcolor."
This way people that dont want to get into that area can just leave it as default, people that just want color changes can just use colors, and advanced users can define custom FX and call them.
Will take me a day or 2 as I think I need to re-write how Im doing the FX so its not overly redundant code wise.
And right now for the first version of that, Its going to be only one FX. Need to work out a reliable way to check if all the comma list is valid, and fire them all off vs a single default or color change