One of the things I have been seeking a long time is for a truely interval based way of live jamming.
pScale is great, but there are issues that arise when jamming live that can’t be easily rewritten in the moment.
The first thing is “scale” FX - I appreciate the “stick” parameter, but if you want to vary wildly between scales/modes, particularly with harmony/chords, you find situations where say instead of playing 1-3-5-7, you end up with one of the notes either being duplicated or jumping an extra interval. Particularly if you start stacking multiple scalers.
Solution is to ALWAYS deal in intervals with every transpose/harmonise/scale - eg:
scale FX doesn’t look at the actual midi note number programmed, it looks at the current interval of the note programmed.
Harmonise fx - addition or subtraction should be in intervals not semitones (yes, this prevents accidentals - I’d prefer this, but ideally as a stretch goal some way to program these or special chords.) Perhaps a different FX mode that uses chord type rather than harmonise semitones. Then it could be automated if desired?
Transpose - again, interval not note number.
Perhaps an alternative solution to different FX all being rewritten/expanded, would be a note number->interval converter effect, and an interval->note number converter.
So say you begin your chain with note number to interval, then the effects apply as interval modifiers, then you convert back at the end from interval to note number to send out.
I get that this isn’t super simple as Ive built my own version in max/map, but it’s also not that hard and provides huge added live performance space.