I received this error (above) while trying to change the value of a global parameter in unity using C# code
Debugs in the code indicate that it works in unity but the problem is on FMOD’s end. Something about conflicting parts in my timeline?
This doesn’t make sense to me because the transition works fine in the timeline
I’m at a loss. Any suggestions much appreciated. Thanks in advance.
The warning you’re receiving is caused by having an infinite amount of instantaneous transitions in a timeline - that is, an infinite loop that is occuring at a single point in a timeline. The FMOD system will terminate after processing 101 transitions, at which point it terminates to prevent infinitely looping.
I would recommend checking events/snapshots affected by the global parameter to see whether they contain any of these infinite loops, and removing them. A common example of a loop like this would be a transition and its corresponding destination marker placed on the same position.
Unfortunately, there’s currently know way for FMOD to tell you ahead of time whether your timeline logic will cause this issue. The timeline screenshot isn’t particularly helpful either, as I cannot examine what parameters you have affecting trigger conditions, or test it myself.
That said, the warning itself will indicate what the last transition the system tried to process was. More importantly, you can receive this warning in Studio as well - if you play the offending event in Studio with the Console window open from Window → Console, and trigger the instantaneous transition loop, the same warning that appeared at run time in Unity will also display in the Console.
I can definitely why it would be useful, so I’ve added it to our internal feature/improvement tracker.
The error will only be reflected in the console if you trigger it while playing back the event in Studio. If it’s difficult to identify what part of the timeline logic is causing the problem, I would recommend trying to reproduce the scenario that caused the warning to be displayed in Unity - i.e. setting your parameter values and timeline position such that they are what they were in Unity, then changing the global parameter, and seeing whether you can trigger the warning.