Variables Scope

Hello again, apologies if this is really simple, but I was just looking for a way of making my OSC address dynamic. What I am after is being able to change a signal portion of an OSC address (eg Easel1/Sequencer/1 to Easel2/Sequencer/1) using a variable in the address (such as @{parent.id}/Sequencer/1). This would then allow me to easily duplicate a custom template for say a second duplicated soft synth instance, without having to go back and manually adjust all of the OSC targets one at a time. The problem I have is that I would want to define a variable for this that is limited in scope, so that only the panels that are duplicated would ‘see’ the new variable value (and the original panels would update to a different variable). This would be so handy, and I am sure it is easily done in Open Stage Control if I knew how!

As far as I understand, using the variable widget to define a value is global, whereas I am looking for someithing akin to a private variable for only the panels I define. I hope that makes sense! I did wonder if the @{parent} variable may do the trick, but I see it only goes up one level, and some of these panels may be multiply nested, so that could be tricky.

Any help greatly appreciated!

@{parent.variables.anything} is indeed the usual way, nesting is not a problem since by default panels have their variables property set to @{parent.variables}. I’ll post a simple example soon.

I just added clones_and_variables.json to this example repository.

Thank you so much, that is exactly what I’m looking for, and the example in the repository is extremely helpful, now the @{parent.variables} makes perfect sense! Will get back to building my template now!