I want to trigger a specific widget that starts a timer, using the arguments passed via OSC.
I set up a test button with this address, and the incoming ip as the "target" - but nothing happens.
Setting the target is not necessary to receive osc messages. Buttons only receive messages that match their on/off values, if you want to receive any value use a script widget or and input widget.
As I said the button widget don't accept multiple arguments (except if the preArgs property is set but it will only allow you to have fixed arguments before the widget's actual value which can only be equal to its on or off properties). By script I meant script widget, but to make it simple create a text widget with any osc address, sending multiple arguments to this address will work and they'll be displayed in the widget.
The issue is caused by a clone that duplicates panel_1 (and thus button_1), the clone of that button interferes with the command because it has the same id, I'll update setVar() so that it affects all widgets that match provided id, meanwhile you can use "this" instead to make sure the command affects the calling widget.
Yes, "this" works with quotes - except in one script where i check if any other buttons are toggled, and need to change their 'text' variable (not the same object):
Just in case, please try with the latest version. Did you try commenting out some lines to verify there's no conflict between your calls (set() comes to mind as to could well trigger some script)
However, i noticed something else rather wierd... when i toggle a button, and the other button de-toggles, it runs the fadeOut function twice most of the time, but not all of the time...? (should only run once)
Adding this 3rd argument in the set() call of fadeOutOtherPlayerButtons will prevent that (otherwise the script is triggered by this call): {script:false}