Hi @jonny,
it’s very basic (I don’t yet know what a method or class is). the goal for me was simply to listen to all the scales without having to run each scale manually (which is what I did while wrestling with my tick grammar.
i ran puts scale_names and then copied it into a buffer and built around it, each time expecting an error till one time it played - i was giddy. the minute it worked, i detuned all the scales to C256 (philosophical tuning circa 1713) and then added random pan and release functions to make it sound like an unreliable and wonky old piano. Great fun!
live_loop :scales do
trial = (ring :acem_asiran, :acem_kurdi, :acemli_rast, :aeolian, :ahirbhairav, :augmented, :augmented2, :bartok, :bayati, :bayati_2, :bayati_araban, :bestenigar, :bhairav, :blues_major, :blues_minor, :buselik, :buselik_2, :cargah, :chinese, :chromatic, :diatonic, :diminished, :diminished2, :dorian, :dugah, :dugah_2, :egyptian, :enigmatic, :evcara, :evcara_2, :evcara_3, :evcara_4, :evic, :evic_2, :ferahfeza, :ferahfeza_2, :ferahnak, :gong, :gulizar, :harmonic_major, :harmonic_minor, :hex_aeolian, :hex_dorian, :hex_major6, :hex_major7, :hex_phrygian, :hex_sus, :hicaz, :hicaz_2, :hicaz_humayun, :hicaz_humayun_2, :hicazkar, :hicazkar_2, :hindu, :hirajoshi, :hungarian_minor, :huseyni, :huseyni_2, :huzzam, :huzzam_2, :indian, :ionian, :isfahan, :isfahan_2, :iwato, :jiao, :karcigar, :kumoi, :kurdi, :kurdili_hicazkar, :kurdili_hicazkar_2, :kurdili_hicazkar_3, :kurdili_hicazkar_4, :kurdili_hicazkar_5, :leading_whole, :locrian, :locrian_major, :lydian, :lydian_minor, :mahur, :major, :major_pentatonic, :marva, :melodic_major, :melodic_minor, :melodic_minor_asc, :melodic_minor_desc, :messiaen1, :messiaen2, :messiaen3, :messiaen4, :messiaen5, :messiaen6, :messiaen7, :minor, :minor_pentatonic, :mixolydian, :muhayyer, :neapolitan_major, :neapolitan_minor, :neva, :neva_2, :nihavend, :nihavend_2, :octatonic, :pelog, :phrygian, :prometheus, :purvi, :rast, :ritusen, :romanian_minor, :saba, :scriabin, :sedaraban, :sedaraban_2, :segah, :segah_2, :sehnaz, :sehnaz_2, :sehnaz_3, :sehnaz_4, :sevkefza, :sevkefza_2, :sevkefza_3, :shang, :spanish, :sultani_yegah, :sultani_yegah_2, :super_locrian, :suzidil, :suzidil_2, :suznak, :suznak_2, :tahir, :tahir_2, :todi, :ussak, :uzzal, :uzzal_2, :whole, :whole_tone, :yegah, :yegah_2, :yu, :zhi, :zirguleli_hicaz, :zirguleli_hicaz_2, :zirguleli_suznak, :zirguleli_suznak_2, :zirguleli_suznak_3).tick
puts trial
play_pattern (scale :C4, trial)
sleep 3
end
And the @amiika code you linked to? I’ll be studying that for awhile. I try to stare at the code to understand what it’s doing before running it and I got halfway through that script before my brain exploded. Lots to learn