Can anyone summarize what this limitation is?
I'll do my best. The discussions span many, many threads - both related and unrelated. Let's start with the LFO layout itself. Each 'slot' is referenced with a number between 00 and 101. It will become clearer later on as to why this is so important.
00-19 are mathematical algorithms. They're internally generated, and can't be replaced or modified.
20-99 are user-defined LFOs. You can replace them with any .wav file (with some limitations).
100 & 101 are also algorithms - set to produce random values in one or two directions.
When Rapture 1.0 shipped, it came with a couple of user-defined LFOs to get started with. 80 open 'slots' for custom LFOs didn't seem like much of a limitation. But then third-party developers started taking advantage of this powerful feature. I built a half-dozen complete LFO sets as freebies for experimentation. Anderton's Expansion Packs utilized four or five in each set. Galbanum's XP's have some highly-detailed LFOs that use up all 80 'slots'.
In the Universal 120 Expansion Pack, I fashioned each UD-LFO to act as an additional step sequencer. Point them at Pitch [@ 1200 cents], and they're programmed to produce accurate scales, trills, and scalar sequences with glide. You can invert the scales with a single line in the Modulation Matrix.
As you might imagine, an end user with more than one Expansion Pack or custom LFOs is going to see a conflict. When you save a .prog file, the stored parameter doesn't reference the actual LFO itself.
It refers to the numbered slot: 20-99. The entire set of 80 LFOs is loaded upon launching an instance of Rapture. These LFOs must have the exact same naming convention (in every Expansion Pack or custom LFO config): LfoWaveform020.wav ... LfoWaveform099.wav.
If you install a new XP, it will load up it's own set of UD-LFOs. Then, when you load a program that uses
any UD-LFO in its programming, it will load
whatever LFO numbered slot that's referenced. That may or may not be the one that the sound designer had in mind. IOW: if you installed U-120 last, and go to use a Galbanum preset, the Galbanum preset will sound completely different. The Universal 120 presets will play back as intended.
One rough 'solution' is to back up all of your UD-LFO sets in subfolders, and fly them in to the Lfo Waveforms folder manually before launching Rapture. But you need to know where you're going first. Galbanum took a step in the right direction by automatically backing up any existing UD-LFOs during the installation process.
But there are better solutions that can be implemented. Hope I haven't confused the issue any further here.