david-c14 / SubmarineFree

Free plugins for VCV Rack
Other
48 stars 10 forks source link

AO conditional feature list sorting #205

Open firolightfog opened 5 months ago

firolightfog commented 5 months ago

OK, so without even thinking of the time and effort needed for the implementation I'd like to share my ergonomic proposal for sorting the formulas in AO modules.

<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40">

Current order | Proposed order -- | -- if Y>0↣X/C | if Y<0↣1/0 if Y<0↣X/C | if Y<0↣C/X if Y=0↣X/C | if Y<0↣C/Y if Y>0↣C/X | if Y<0↣X/C if Y<0↣C/X | if Y<0↣Y/C if Y=0↣C/X | if Y=0↣1/0 if Y>0↣1/0 | if Y=0↣C/X if Y<0↣1/0 | if Y=0↣C/Y if Y=0↣1/0 | if Y=0↣X/C if Y>0↣Y/C | if Y=0↣Y/C if Y<0↣Y/C | if Y>0↣1/0 if Y=0↣Y/C | if Y>0↣C/X if Y>0↣C/Y | if Y>0↣C/Y if Y<0↣C/Y | if Y>0↣X/C if Y=0↣C/Y | if Y>0↣Y/C

I understand the logic behind the currently used order. It's just that I use the AO modules (specially AO-101) a lot and I realized that I always struggle to find the right option in the list as it is sorted by the output result. But it requires reverse thinking in a way.... The proposed sorting would allow to consider the input value and then to decide on the output.

Cheers, Andras

david-c14 commented 5 months ago

Thanks, that makes sense.

Unfortunately there's no easy way to change the order now, because existing patches would break. Which algorithm is currently selected is stored as a parameter value in the patch.

If I ever get back to developing, I might deprecate the AO-1xx series and implement a replacement AO-2xx series. In which case I could tidy up this, and a few other flaws, and provide a convenient cut and paste migration for users wanting to switch to newer devices.