Original project link unavailable so closing.
> It seems like it doesn't account at all for multiple fade behaviors—it triggers stuff based purely on the object instance the Fade behavior belongs to
You're right, this sounds like it would explain it from the description, and it's an architectural oversight more than a bug. The proper fix would involve re-architecting all behavior triggers which would be quite a lot of work, and possibly cause compatibility problems with third-party behaviors. So I think it would be easiest to fix this in the upcoming C3 runtime which is being rewritten anyway.
I'm not sure why you'd want to use two of the same behavior anyway - why not just adjust the settings of one?
Whoop, didn't think the link would die out, sorry about that. Though you responded anyway, so it's not a big deal.
Yeah, it's not a bug per se, just intended to work differently than what I expected. Sorry if I worded any of my posts poorly. I understand the situation and as you implied, I think a C3 adjustment would be the best course here, it's not a problem that can't be worked around in C2 and it's not a simple fix per se, nor is it an issue of much significance.
As for the answer to your question—ease of use/organization.
Let's say I have an object that fades in and out, each at 2 different speeds, meaning there are basically 4 ways it could fade. For each given fade, I could set all the values first before fading, but this would get a bit tedious/cluttered if I call a given fade more than once.
I could then put it in a function to fix that, but then I need to write (preferably using local variables) and call said function before every fade, and I'd rather have that information preset as part of the object/behavior since I'd be able to find it easily, rather than having to look up and edit a function.
Since I can rename behaviors, I thought it effective to name each Fade based on the type it is (e.g. "FadeIn", "FadeInQuick", "FadeOut", "FadeOutQuick"), then just call said fade, thus making it clear what kind of fade is happening, without adding the extra work/clutter of fade functions—C2 lets me set the values to start, anyway.
I'm not sure if there's a notable overhead for having multiple fade behaviors like that, but I can't think of any reason there would be. And if there's an easier way to do it than I've brought up, I apologize for having not been aware of it (and not coming up with it myself).
tl;dr, the issue could easily be considered a matter of convenience/organization and not essential, but might be appreciated in C3 should you find the time. Thank you kindly for responding and for your support.