So here is my setup. First, I misspoke. The PC is NOT coming from a scriptlet. It is a standard PC message from midi blocks. The scriptlet is only used to delay the PC messages due to the fact that I have the unused plugins bypassed and they need to be un-bypassed BEFORE the PC message “arrives”. Sometimes, when it all happens at the same time, it doesn’t end up working as expected.
Please note, much of this setup is discouraged due to the unpredictability of preset changes (time it takes, etc), but at least with Arturia and Kontakt, it has been working flawlessly for over a year with 3 live shows per week.
My plugins are in the global rackspace. Notice, each plugin is preceded with a midi block, and the (amazing) plugin persist bypass scriptlet (by @David-san). Most of them also have the PC delay scriptlet in the chain.
Here is what the panel in the GLOBAL RS looks like:
The switch activates the plugin persist scriptlet and underneath is a widget which is mapped to the midi block to send PC. The PC widget is also mapped to a global parameter so I can control it/them from local rackspaces.
As mentioned earlier, Arturia PC messages only work with playlists, so you’d have to put your chosen presets into a playlist and the PC message will go through those presets in the playlist. As you can see, just for the convenience of me being able to see what’s in each playlist, I have a list of the presets under each plugin listen in the rackspace view. This takes time to setup, but once done, its super useful.
Here is what the local rackspaces look like:
I can set the desired plugin with the selected preset (via PC change) for each variation in each rackspace. Levels for each preset can be set as well.
As I switch rackspaces and variations, I notice zero lag. Sounds are available immediately. Its smooth as it can be. I have predictive loading OFF.
I hope that helps! Let me know if you have any questions.