Feedback for an early patch
I've just gotten back into Max after playing with it a bit a year or so ago. I've been putting together some simple patches, and I was hoping I could get some feedback on this one about the way it's actually patches.
There's a documentation file in the zip, but in short: It generates MIDI notes within a specific key, with the tempo and velocity of it's output modulatable by some simple parameters.
What I'm concerned about is redundancy. In my first iteration of this, all notes from all four of the lines had the same velocity. So, I could route the pitch values from all the lines through the same pack object to pair them with the velocity. Once I introduced the velocity modulation, I couldn't find anyway to use the same parts of the patch for all the lines. Instead I have four completely separate lines working in parallel.
Any thoughts would be appreciated.
Thanks,
-Zach
Cool idea, but it's tough to know what's happening. There are several toggles which are not defined, what do they do exactly? I also got error messages:
expr: divide by zero detected
Not a big deal, but should be looked into.
Overall I like your idea and the use of [coll] for the scales is good, it's an easy way to define them once and for all. Look at [zl rot] and your scales can be transposed to any other key in a snap, though it seems like your base note does this already (still, [zl] is amazing and should be considered). Decide what you want everything to do and be selective, less clutter = more user goodness. You can also use a [matrixctrl] with 12 cells to allow the user to create any scale they want, and preset it.
Regarding redundancy, it's really OK, but often there are more slick ways to accomplish the same thing. When it's all in subpatches it's a lot more forgiving visually. Sometimes you can save redundancy, but other times you definitely need to have it. Possibly there is a [switch] or [gate] at the top level which would allow you to use only one main chain of events, with that index as a way to accommodate the different scenarios.
Thanks for trying the patch. The first toggle is on/off, the second is tempo modulation on/off, the third enables the Double/Half module, and the last one is velocity modulation.
I thought I had solved the divide by zero issue, but apparently not. I simply can't figure out how to get around that. Not too big a deal, since it's only when the patch is first launched, I guess.
Interesting ideas too. I'll think about implementing those.