Pattrns Phrase Scripting - Examples

Hello everyone,
this is the place to share your Pattrns Phrase Scripting ideas/scripts.

This is an experimental arpeggiator which lets you combine rhythmic and melodic sequences in different ways to create evolving melodies or chords. Take a look at the script and extend / modify the sequence lists to your liking. It is meant as an inspirational tool.

STR Arpeggiator.lua (6.2 KB)

Have a good one!

12 Likes

Nice, this one is a very versatile arp that’s easy to configure!

Note, you can also use the playground to share scripts online (for example here is a link to your script on the playground).

2 Likes

Ah, thank you!

1 Like

Very impressive! :+1:

1 Like

Thanks!
Well it´s only as impressive as one is willing to put time to experiment into it :slight_smile:

Also i find forcing the output to a certain scale/flavour (using Renoise´ scale selector) quite useful at times. Especially in those cases when disharmonics occur. But those could be handled programmatically as well.

1 Like

This shows how a melody can be evolved using the script parameters only, and how complexity and dynamics can be added and reduced in a controlled manner.

3 Likes

Indeed, i agree with you! Devs can only give the possibilitys. The users must lot out the deep of it. Yesterday i play around with your script on Pattrns Playground (thx to unless for this :)). Have i your grant to upload it on Renoise Themes & Stuff discord? I have create a Pattrns script share section there, because the link to it on Playground was very long and cryptic. Dont know who’s project “Pattrns.playground” is (unless?) but i think shortlinks for uploaded scripts would be a good idea, if it should become a regulare share source for such scripts.

happy tracking :slight_smile:

@unless if i call you link up i get this… Not good for linking scripts from external resources and sharing.

https://pattrns.renoise.com/dev/#eyJzY3JpcHQiOiItLSBWZXJzYXRpbGUgQXJwZWdnaWF0b3IgdXNpbmcgcmh5dGhtLCBhcnAgYW5kIG1vZCBpbnRlcnZhbCBzZXF1ZW5jZXMgKGV4dGVuZCBhdCB3aWxsKSBcbi0tIGJ5IHN0cm9ib3RvbmVcblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxubG9jYWwgcmh5dGhtX2RhdGEgPVxueyBcbiAgXCIxXCIsIFxuICBcIjEgMFwiLFxuICAtLVxuICBcIjEgMCAwXCIsXG4gIFwiMSAwIDFcIiwgXG4gIFwiMSAxIDBcIiwgXG4gIC0tXG4gIFwiMSAwIDEgMVwiLCBcbiAgXCIxIDEgMCAxXCIsIFxuICAtLVxuICBcIjEgMCAxIDEgMFwiLCBcbiAgXCIxIDAgMSAwIDAgMSAwXCIsIFxuICBcIjEgMCAwIDEgMCAwIDEgMFwiLCBcbiAgXCIxIDEgMCAxIDAgMCAxIDBcIiwgXG4gIFwiMSAxIDAgMCAwIDAgMSAxXCIsIFxuICAtLVxuICBcIjEgMCAxIDAgMSAxIDAgMSAxIDAgMSAxIDAgMSAxIDBcIlxufVxuXG4tLSBmb3JtYXQgOiBcIltkdXJhdGlvbl0gLi5cIlxubG9jYWwgYXJwX2ludGVydmFsX2RhdGEgPVxue1xuICBcIjAgMTJcIixcbiAgXCItMTIgMFwiLFxuICBcIjAgMCAxMlwiLFxuICBcIjAgMiAzXCIsXG4gIFwiMCAwIDIgM1wiLFxuICBcIjAgLTMgNFwiLFxuICBcIjAgOCA1XCIsXG4gIFwiMCAxIC0yXCIsXG4gIFwiMCAxMiA3XCIsXG4gIFwiMCAxMiA3IDVcIixcbiAgLS1cbiAgXCIwIDMgNSA3XCIsXG4gIFwiMCAzIDUgOFwiLFxuICBcIjAgMyA3IDhcIixcbiAgXCIwIDQgNyAxMFwiLFxuICBcIjAgNCA3IDEyXCIsXG4gIFwiMCA1IDcgOFwiLFxuICAtLVxuICBcIjAgMSAzIDVcIixcbiAgXCIwIDIgMyA3XCIsXG4gIC0tXG4gIFwiMCAxIC0xMSAtMTJcIixcbiAgXCIwIC0zIDkgMCAxMlwiLFxuICBcIjAgMSAzIDRcIixcbiAgXCIwIDEgMyA0IDZcIixcbiAgXCIwIDAgMCA1IDcgMTJcIixcbiAgXCIwIC0yIDAgNSA3IDEyXCIsXG4gIFwiMCAzIDUgNyAxMCAxMlwiLFxuICBcIjAgMiAzIDUgNyAxMCAxMlwiLFxuICBcIjAgMiAzIDcgOSAxMCAxNCAxNVwiLFxuICBcIjAgLTIgMiAtMiAwIC01IC03IC01XCIsXG4gIFwiLTEyIDAgLTEyIDAgLTEyIDEgLTEyIC0yIC0xMiAtNVwiXG59XG5cbi0tIGZvcm1hdCA6IFwiW2ludGVydmFsXXhbZHVyYXRpb25dIC4uXCJcbmxvY2FsIG1vZF9pbnRlcnZhbF9kYXRhID1cbntcbiAgXCIweDQgM3g0XCIsXG4gIFwiMHg4IDN4NCA3eDRcIixcbiAgXCIweDQgNXg0XCIsXG4gIFwiMHg0IDd4NFwiLFxuICBcIjB4NCAxMng0XCIsXG4gIFwiMHg4IC01eDhcIixcbiAgXCIweDggMTJ4OFwiLFxuICBcIjB4OCAtMTJ4OCAweDggMTJ4OFwiLFxuICBcIjB4NCAxMng0IDI0eDQgMTJ4NFwiLFxuICBcIjB4OCAzeDggLTJ4OCA1eDhcIixcbiAgXCIweDggMng4IDN4OCA1eDhcIixcbiAgXCIweDggLTV4OCAtMng4IC03eDhcIixcbiAgXCIweDMyIC01eDMyIC0yeDMyIC03eDMyXCIsXG4gIFwiMHgxNiAtNXgxNiAzeDE2IC00eDE2XCIsXG4gIFwiMHgxNiAtNXgxNiAtMngxNiAtN3gxNiAtNXgxNiAweDE2IC00eDE2IC0yeDE2XCIsXG4gIFwiMHg4IDR4OCAweDcgLTN4OCAtNXgxXCIsXG4gIFwiMHg4IDJ4OCAzeDggNXg4IDd4OCA5eDggMTB4OCAxMng4XCIsXG59XG5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmxvY2FsIGhhcm1vbnlfaW50ZXJ2YWxzID1cbntcbiAge1wiTWluIDNyZFwiLCB7M319LFxuICB7XCJNYWogM3JkXCIsIHs0fX0sXG4gIHtcIjR0aFwiLCB7NX19LFxuICB7XCI1dGhcIiwgezd9fSxcbiAge1wiTWluIDd0aFwiLCB7MTB9fSxcbiAge1wiTWFqIDd0aFwiLCB7MTF9fSxcbiAge1wiTWFqIDNyZCArIDV0aFwiLCB7NCw3fX0sXG4gIHtcIk1haiAzcmQgKyA1dGggKyBNYWogN1wiLCB7NCw3LDExfX0sXG59XG5cbmxvY2FsIGhhcm1vbnlfaW50ZXJ2YWxfbmFtZXMgPSB7fVxubG9jYWwgaGFybW9ueV9pbnRlcnZhbF9sb29rdXAgPSB7fVxuZm9yIGkgPSAxLCAjaGFybW9ueV9pbnRlcnZhbHMgZG9cbiAgbG9jYWwgbmFtZSA9IGhhcm1vbnlfaW50ZXJ2YWxzW2ldWzFdXG4gIGxvY2FsIHZhbHVlID0gaGFybW9ueV9pbnRlcnZhbHNbaV1bMl1cbiAgaGFybW9ueV9pbnRlcnZhbF9uYW1lc1tpXSA9IG5hbWVcbiAgaGFybW9ueV9pbnRlcnZhbF9sb29rdXBbbmFtZV0gPSB2YWx1ZVxuZW5kXG5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmxvY2FsIGZ1bmN0aW9uIHBhcnNlX2ludF9zZXF1ZW5jZShzdHIpXG4gIGxvY2FsIHJlc3VsdCA9IHt9XG4gIFxuICBmb3IgdmFsdWUgaW4gc3RyOmdtYXRjaChcIiVTK1wiKSBkb1xuICAgIHJlc3VsdFsjcmVzdWx0ICsgMV0gPSB0b251bWJlcih2YWx1ZSlcbiAgZW5kXG4gIFxuICByZXR1cm4gcmVzdWx0XG5lbmRcblxubG9jYWwgZnVuY3Rpb24gcGFyc2VfbW9kX3NlcXVlbmNlKHN0cilcbiAgbG9jYWwgdmFsdWVzID0ge31cbiAgbG9jYWwgdG90YWwgPSAwXG5cbiAgZm9yIHRva2VuIGluIHN0cjpnbWF0Y2goXCIlUytcIikgZG9cbiAgICBsb2NhbCBpbnRlcnZhbCwgZHVyYXRpb24gPSB0b2tlbjptYXRjaChcIigtPyVkKyl4KCVkKylcIilcbiAgICBpbnRlcnZhbCA9IHRvbnVtYmVyKGludGVydmFsKVxuICAgIGR1cmF0aW9uID0gdG9udW1iZXIoZHVyYXRpb24pXG5cbiAgICB2YWx1ZXNbI3ZhbHVlcyArIDFdID0geyBpbnRlcnZhbCwgIGR1cmF0aW9uIH1cbiAgICB0b3RhbCA9IHRvdGFsICsgZHVyYXRpb25cbiAgZW5kXG5cbiAgcmV0dXJuIHsgdmFsdWVzID0gdmFsdWVzLCB0b3RhbCA9IHRvdGFsIH1cbmVuZFxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0gcHJlcGFyc2UgYWxsIHNlcXVlbmNlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxubG9jYWwgcGFyc2VkX3JoeXRobV9kYXRhID0ge31cbmxvY2FsIHBhcnNlZF9hcnBfaW50ZXJ2YWxfZGF0YSA9IHt9XG5sb2NhbCBwYXJzZWRfbW9kX2ludGVydmFsX2RhdGEgPSB7fVxuXG5mb3IgaSA9IDEsICNyaHl0aG1fZGF0YSBkb1xuICBwYXJzZWRfcmh5dGhtX2RhdGFbcmh5dGhtX2RhdGFbaV1dID0gcGFyc2VfaW50X3NlcXVlbmNlKHJoeXRobV9kYXRhW2ldKVxuZW5kXG5cbmZvciBpID0gMSwgI2FycF9pbnRlcnZhbF9kYXRhIGRvXG4gIHBhcnNlZF9hcnBfaW50ZXJ2YWxfZGF0YVthcnBfaW50ZXJ2YWxfZGF0YVtpXV0gPSBwYXJzZV9pbnRfc2VxdWVuY2UoYXJwX2ludGVydmFsX2RhdGFbaV0pXG5lbmRcblxuZm9yIGkgPSAxLCAjbW9kX2ludGVydmFsX2RhdGEgZG9cbiAgcGFyc2VkX21vZF9pbnRlcnZhbF9kYXRhW21vZF9pbnRlcnZhbF9kYXRhW2ldXSA9ICBwYXJzZV9tb2Rfc2VxdWVuY2UobW9kX2ludGVydmFsX2RhdGFbaV0pXG5lbmRcblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxubG9jYWwgZnVuY3Rpb24gZ2V0X25vdGVfaW50ZXJ2YWxfaW5kZXgoY29udGV4dCwgZGF0YSwgZGlyZWN0aW9uKVxuXG4gIGxvY2FsIGxlbiA9ICNkYXRhXG4gIGxvY2FsIHN0ZXAgPSBjb250ZXh0LnN0ZXAgLSAxXG5cbiAgaWYgZGlyZWN0aW9uID09IFwiVXBcIiB0aGVuXG4gICAgcmV0dXJuIChzdGVwICUgbGVuKSArIDFcbiAgZW5kXG5cbiAgaWYgZGlyZWN0aW9uID09IFwiRG93blwiIHRoZW5cbiAgICByZXR1cm4gbGVuIC0gKHN0ZXAgJSBsZW4pXG4gIGVuZFxuXG4gIGlmIGRpcmVjdGlvbiA9PSBcIlVwPD5Eb3duXCIgdGhlblxuICAgIGxvY2FsIGN5Y2xlID0gKGxlbiAqIDIpIC0gMlxuICAgIGxvY2FsIHBvcyA9IHN0ZXAgJSBjeWNsZVxuICAgIGlmIHBvcyA+PSBsZW4gdGhlblxuICAgICAgcG9zID0gY3ljbGUgLSBwb3NcbiAgICBlbmRcbiAgICByZXR1cm4gcG9zICsgMVxuICBlbmRcblxuICBpZiBkaXJlY3Rpb24gPT0gXCJEb3duPD5VcFwiIHRoZW5cbiAgICBsb2NhbCBjeWNsZSA9IChsZW4gKiAyKSAtIDJcbiAgICBsb2NhbCBwb3MgPSBzdGVwICUgY3ljbGVcbiAgICBpZiBwb3MgPj0gbGVuIHRoZW5cbiAgICAgIHBvcyA9IGN5Y2xlIC0gcG9zXG4gICAgZW5kXG4gICAgcmV0dXJuIGxlbiAtIHBvc1xuICBlbmRcbiBcbiAgLS0gZWxzZSByYW5kb21cbiAgcmV0dXJuIG1hdGgucmFuZG9tKDEsIGxlbilcbmVuZFxuXG5sb2NhbCBmdW5jdGlvbiBnZXRfbW9kX2ludGVydmFsX2luZGV4KGNvbnRleHQsIG1vZF9kYXRhKVxuICBsb2NhbCB2YWx1ZXMgPSBtb2RfZGF0YS52YWx1ZXNcbiAgbG9jYWwgdG90YWwgPSBtb2RfZGF0YS50b3RhbFxuICBsb2NhbCBzID0gKChjb250ZXh0LnN0ZXAgLSAxKSAlIHRvdGFsKSArIDFcbiAgbG9jYWwgYWNjID0gMFxuICBmb3IgaSA9IDEsICN2YWx1ZXMgZG9cbiAgICBhY2MgPSBhY2MgKyB2YWx1ZXNbaV1bMl1cbiAgICBpZiBzIDw9IGFjYyB0aGVuXG4gICAgICByZXR1cm4gaVxuICAgIGVuZFxuICBlbmRcbmVuZFxuXG5sb2NhbCBmdW5jdGlvbiBybmQoYSxiKVxuICByZXR1cm4gYSArIG1hdGgucmFuZG9tKCkqKGItYSlcbmVuZFxuXG5sb2NhbCBmdW5jdGlvbiBtYWtlX25vdGUoa2V5LCBjb250ZXh0KVxuICBsb2NhbCBwID0gY29udGV4dC5wYXJhbWV0ZXJcbiAgcmV0dXJuXG4gIHtcbiAgICBrZXkgPSBrZXksXG4gICAgLS1kZWxheSA9IHJuZChwLmRlbGF5X21pbiwgcC5kZWxheV9tYXgpLFxuICAgIHZvbHVtZSA9IHJuZChwLnZvbF9taW4sIDEuMClcbiAgfVxuZW5kXG5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbnJldHVybiBwYXR0ZXJuXG57XG4gIHBhcmFtZXRlciA9XG4gIHtcbiAgICBwYXJhbWV0ZXIuZW51bShcInJoeXRobV9zZXFcIiwgcmh5dGhtX2RhdGFbMV0sIHJoeXRobV9kYXRhLCBcIlJoeXRobVwiKSxcbiAgICBwYXJhbWV0ZXIuYm9vbGVhbihcImFycF9lbmFibGVkXCIsIHRydWUsIFwiQXJwZWdnaWF0b3JcIiksXG4gICAgcGFyYW1ldGVyLmVudW0oXCJhcnBfaW50ZXJ2YWxzXCIsIGFycF9pbnRlcnZhbF9kYXRhWzFdLCBhcnBfaW50ZXJ2YWxfZGF0YSwgXCJBcnAgSW50ZXJ2YWxzXCIpLFxuICAgIHBhcmFtZXRlci5lbnVtKFwiYXJwX2RpclwiLCBcIlVwXCIsIHsgXCJVcFwiLCBcIkRvd25cIiwgXCJVcDw+RG93blwiLCBcIkRvd248PlVwXCIsIFwiUmFuZG9tXCIgfSwgXCJBcnAgRGlyZWN0aW9uXCIpLFxuICAgIHBhcmFtZXRlci5pbnRlZ2VyKFwicmFuZF9zZWVkXCIsIDEsIHsxLCA5OTk5OTk5OX0sIFwiUmFuZCBTZWVkXCIpLFxuICAgIHBhcmFtZXRlci5udW1iZXIoXCJ2b2xfbWluXCIsMC44LHswLjAsMS4wfSxcIlJhbmQgVm9sIG1pblwiKSxcbiAgICBwYXJhbWV0ZXIuYm9vbGVhbihcIm1vZF9lbmFibGVkXCIsIGZhbHNlLCBcIk1vZHVsYXRvclwiKSxcbiAgICBwYXJhbWV0ZXIuZW51bShcIm1vZF9pbnRlcnZhbHNcIiwgbW9kX2ludGVydmFsX2RhdGFbMV0sIG1vZF9pbnRlcnZhbF9kYXRhLCBcIk1vZCBJbnRlcnZhbHNcIiksXG4gICAgcGFyYW1ldGVyLmJvb2xlYW4oXCJoYXJtb255X2VuYWJsZWRcIiwgZmFsc2UsIFwiSGFybW9ueVwiKSxcbiAgICBwYXJhbWV0ZXIuZW51bShcImhhcm1vbnlfaW50ZXJ2YWxcIiwgXCI1dGhcIiwgaGFybW9ueV9pbnRlcnZhbF9uYW1lcywgXCJIYXJtb255IEludGVydmFsXCIpLFxuICAgXG4gIH0sXG5cbiAgdW5pdCA9IFwiMS8xNlwiLFxuICBcbiAgcHVsc2UgPSBmdW5jdGlvbihjb250ZXh0KVxuICAgIGxvY2FsIHJoeXRobV9zZXFfdmFsdWVzID0gcGFyc2VkX3JoeXRobV9kYXRhW2NvbnRleHQucGFyYW1ldGVyLnJoeXRobV9zZXFdXG4gICAgbG9jYWwgc3RlcCA9ICgoY29udGV4dC5wdWxzZV9zdGVwIC0gMSkgJSAjcmh5dGhtX3NlcV92YWx1ZXMpICsgMVxuICAgIHJldHVybiByaHl0aG1fc2VxX3ZhbHVlc1tzdGVwXSA9PSAxXG4gIGVuZCxcblxuICBldmVudCA9IGZ1bmN0aW9uKGNvbnRleHQpXG4gICAgbWF0aC5yYW5kb21zZWVkKGNvbnRleHQuc3RlcCAqIGNvbnRleHQucGFyYW1ldGVyLnJhbmRfc2VlZClcbiAgICBcbiAgICBsb2NhbCBub3RlMSA9IG1ha2Vfbm90ZSg0OCwgY29udGV4dClcblxuICAgIGlmIGNvbnRleHQucGFyYW1ldGVyLmFycF9lbmFibGVkIHRoZW5cbiAgICAgIGxvY2FsIG5vdGVfaW50ZXJ2YWxfdmFsdWVzID0gcGFyc2VkX2FycF9pbnRlcnZhbF9kYXRhW2NvbnRleHQucGFyYW1ldGVyLmFycF9pbnRlcnZhbHNdXG4gICAgICBsb2NhbCBpbnRlcnZhbF9pbmRleCA9IGdldF9ub3RlX2ludGVydmFsX2luZGV4KGNvbnRleHQsIG5vdGVfaW50ZXJ2YWxfdmFsdWVzLCBjb250ZXh0LnBhcmFtZXRlci5hcnBfZGlyKVxuICAgICAgbm90ZTEua2V5ID0gbm90ZTEua2V5ICsgbm90ZV9pbnRlcnZhbF92YWx1ZXNbaW50ZXJ2YWxfaW5kZXhdXG4gICAgZW5kXG4gIFxuICAgIGlmIGNvbnRleHQucGFyYW1ldGVyLm1vZF9lbmFibGVkIHRoZW5cbiAgICAgIGxvY2FsIG1vZF9pbnRlcnZhbF92YWx1ZXMgPSBwYXJzZWRfbW9kX2ludGVydmFsX2RhdGFbY29udGV4dC5wYXJhbWV0ZXIubW9kX2ludGVydmFsc11cbiAgICAgIGxvY2FsIG1vZF9pbmRleCA9IGdldF9tb2RfaW50ZXJ2YWxfaW5kZXgoY29udGV4dCwgbW9kX2ludGVydmFsX3ZhbHVlcylcbiAgICAgIG5vdGUxLmtleSA9IG5vdGUxLmtleSArIG1vZF9pbnRlcnZhbF92YWx1ZXMudmFsdWVzW21vZF9pbmRleF1bMV1cbiAgICBlbmRcblxuICAgaWYgY29udGV4dC5wYXJhbWV0ZXIuaGFybW9ueV9lbmFibGVkIHRoZW5cbiAgICAgbG9jYWwgaGFybW9ueSA9IGhhcm1vbnlfaW50ZXJ2YWxfbG9va3VwW2NvbnRleHQucGFyYW1ldGVyLmhhcm1vbnlfaW50ZXJ2YWxdIG9yIHt9XG4gICAgIGxvY2FsIG5vdGVzID0geyBub3RlMSB9XG4gICAgIGZvciBpID0gMSwgI2hhcm1vbnkgZG9cbiAgICAgICAgbm90ZXNbI25vdGVzICsgMV0gPSBtYWtlX25vdGUobm90ZTEua2V5ICsgaGFybW9ueVtpXSwgY29udGV4dClcbiAgICAgZW5kXG4gICAgIHJldHVybiBub3Rlc1xuICAgZW5kXG4gICAgXG4gIHJldHVybiB7IG5vdGUxIH1cbmVuZFxufVxuIiwibmFtZSI6ImN1c3RvbSIsImJwbSI6MTIwLCJpbnN0cnVtZW50IjoiMTkifQ==

Sure, go ahead! And thanks for your interest.

I have some more stuff i will add here later on.

1 Like

You can use link alias feature in markdown (like on this forum or discord) to shorten the link if you type it like

[shorter alias](https://theactualsuperlonglink.boing)

It will look like how I did it above:

The link is so long because the actual script is inside the link itself. This makes it so the playground doesn’t need to have an entire server architecture with users, persisting data and so on to share scripts, it’s just a static website that can decode the script data from the link.

This specific script is fairly long compared to most, so the link is also long.

Btw, the playground was created by taktik, I’ve added this link feature to make sharing scripts more interactive, you will find the same link data style in almost all livecoding projects that run on the web. When you edit a script on the playground, you will see the URL automatically change as you type, so you can just copy-paste the url to someone to talk about a script.

1 Like

ah i understand, so its in principle similar to the “preset exchange” function in Cubase or Ableton.

This Renoise pattrns script generates chord voicings with some degree of humanization.
The 3rd and 5th can be shifted up an octave to remove some potential muddiness from a dense chord. Additional 7th and 9th can be added an octove above to add upper harmonics.
Note delay can be quantized to more rhythmic values, so instead of chords it can produce melodies instead or something inbetween. (see ‘quantize_steps’ in the script)

STR Chord Voicing.lua (2.2 KB)

And remember, script parameters can be bound to macros.

Cheers!

7 Likes

really impressive, i just cant get the same results.

Everything is the same as in the videos, but sound totally different. Its generate 0-8-16-24-32-40-48 etc steps every time. but in the video its 0-32- and sos on… this is the first thing i cant get right.

then the note steps. is is faster than yours. same tempo and same delay min max vaules.

u set min 0.001. i need to set it to 0.480 or more the get the same smooth results….

1 Like

Just beautiful! Thanks for sharing.

In case someone wants this not be a single shot, not a repeating pattern, add a repeats = 0, to:

return pattern
{
   unit = "1/4",
   repeats = 0,
  --  [...]
}

@strobotone are we allowed to add this to the Renoise stock presets with a proper credit?

1 Like

Thanks everyone for your feedback! I really appreciate it.

@hotelsinus
Those settings should work:

grafik

And yes, the script uses [ unit = “1/1” ] , hence the different time signature.
The chords are triggered from a pattern [ F-4, C-4, D-4, A-3 ].

Here is an updated version which has 2 new parameters:

  • Random Seed ( 0 = no seed )
  • Keep Root on 1 ( Root note always on beat 1 )

STR Chord Voicing.lua (2.7 KB)

@taktik
Yes, I am honored. For the crediting we should probably communicate via PM i guess.

And thanks for the “single shot” info. I was looking for this.
By the way, is there any way to control [ unit ] from a parameter?
So the note delay quantization would be more controllable as well.

Also i would like to add keyboard split using context.trigger.notes.
Is there a built-in way to convert key string to number?

Thanks and kind regards
Martin

2 Likes

… can be deleted

Sure. You can send me a version with comments on top of the Lua file. Have a look at the other factory presets on how that works.

More one-finger fun. Just as an inpiration.

2 Likes