I have a car tire system set up with 3 different terrains. The “terrain” parameter fades in and out nicely between 1 (asphalt) to 2 (dirt), as well as from 2 to 3 (grass), but when I need to go from 1 to 3, I can’t get the fade, because the terrain parameter has to go through dirt, to get from 1 (asphalt) to 3 (grass).
Indeed, that’s not the best method. Maybe one day my suggested feature will be implemented and it will be possible to do that directly. But in the meantime, in your case, I think I would go with a discrete (labelled) “terrain” parameter, instead of continuous, and set an attack and release (AHDSR) on each instrument. The transition would then have a fixed timing, which would probably even be better than your transitions driven by the parameter’s value: after all the car can’t be at the same time on asphalt and dirt… The only drawback is the first time the event will play: the attack would also apply. But this could be acceptable if this attack value is sufficiently low.