When a parameter is only used inside a nested event (and exposed to the parent), trying to “replace with duplicate” from the parent event doesn’t work, though it creates an unused duplicate parameter.
This is actually the intended behavior, but I can see that it’s unintuitive. I’ll add a task to our feature/improvement tracker to make it clearer.
To explain what’s happening and why, I’ll need to explain some background:
- There are a few different reasons why you might want to replace a parameter with an identically-named duplicate, but one of the more common ones is to ensure that the parameter in a nested event differs from the identically-named parameter in its parent event. This means it’s vitally important that replacing a parameter affects only the currently-displayed event, and not any of its parent or child events.
- If a local preset parameter’s “Exposed recursively via event instruments” checkbox is checked (as it is by default), and there is a parameter based on that preset parameter in an event, the parameter will automatically appear in every event that references that event with an event instrument. This saves you from having to automate the parameter knobs of every single event instrument just to be able to update them.
Taking those two points together, this means that “replace with duplicate” context menu command creates a duplicate of the preset parameter, and changes everything in the currently displayed event to use the duplicate instead of the original. Naturally, if the currently displayed event doesn’t actually use that parameter for anything, this means that the duplicate preset parameter won’t be used for anything in that event; and because the parameter in the nested event isn’t changed, it continues to appear in the parent event.
As it happens, we’ve recently been talking about how best to clarify the differences between preset parameters, parameters, and parameter sheets in FMOD Studio, so I’ll add this point of confusion to the discussion.