Created
October 27, 2018 19:41
-
-
Save Freemoth/ab97b187031d862bf31ed230fce61990 to your computer and use it in GitHub Desktop.
nobiilus
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Nobilus, no. 2, 19Mar2017; 28Dec2017 | |
# nobilus2b.txt | |
use_debug false | |
tb = 24; tc = 12 | |
notes0 = [67, 69, 70, 72, 74] | |
notes1 = [67, 69+tc, 71, 72-tb, 74-tb] | |
notes2 = [67-tb, 69-tb, 70-tb, 72, 74] | |
notes3 = [67+tc, 69-tc, 70, 72-tc, 74-tc] | |
notes4 = [67-tc, 69, 71-tc, 72+tc, 74+tc] | |
#### see also comments in loops below | |
tickypan = [0.9, 0.75, 0.55, 0.45, 0.35, 0.25, 0.15, 0, | |
-0.15, -0.25, -0.35, -0.45, -0.55, -0.65, -0.75, -0.85, -1] | |
z = 0; zz = 0; piano = 0; q = 0.2; qq = 0 #### loop one variables, e, x (declared in the loop) | |
t = 0; v = 0.1 #### ticky variables and s (declared in the loop) | |
d = 0 #### bass variable and, xb, y, z, c (declared in the loop) | |
#### w perc variable (declared in the loop) | |
live_loop :ticky, delay: 15 do | |
t += 1 #### resets tick, v | |
v += 0.03 #### controls amp and rate of sample | |
s = 0.75 + (v * 0.5) #### sleep value | |
puts "t = #{t}" | |
puts "v = #{v}" | |
puts "s = #{s}" | |
if t < [17, 4].choose | |
with_fx :hpf, cutoff: rrand(80, 100), mix: 0.6 do | |
sample :elec_blip, amp: 0.1, pan: [tickypan.reverse.tick, tickypan.tick].choose, | |
amp: v, rate: 1 + v * 0.1, release: 0.5 | |
end | |
sleep s | |
else | |
if t == 30 | |
tick_reset | |
t = 0 | |
v = 0.1 | |
end | |
sleep 0.75 | |
end | |
end | |
live_loop :one do | |
e = [3, 7, 1].choose #envelope curve | |
piano += 1 | |
puts "envelope is #{e}" | |
x = rrand_i(0, 4) | |
if x == 4 | |
zz += 1 | |
end | |
puts "x is #{x}" | |
puts "zz is #{zz}" | |
qq = q + 0.4 | |
puts "q is #{q}" | |
puts "qq ............ #{qq}" | |
use_synth :beep | |
use_synth_defaults env_curve: e, attack: (x * 0.0015) + 0.01, amp: q + 0.5, | |
pan: rrand(-qq, qq) | |
with_fx :gverb, pre_amp: [0.45, 0.15].choose, release: 0.75, pre_damp: 0.8, | |
room: rrand(10, 12), mix: 0.2*x do | |
if zz == 3 | |
with_fx :echo, amp: 1.2 do | |
case x | |
when x = 0 | |
play notes0[x + rrand_i(0, 4)], release: q | |
if piano > [24, 22].choose | |
puts "piano yes" | |
with_fx :reverb, amp: [0.6, 1.2].choose, mix: rrand(0.6, 0.8) do | |
with_synth [:dark_ambience, :piano].choose do | |
play_chord [notes0[0, 2], notes2[1, 3], notes3[2,4]].choose, release: q | |
end | |
if piano == 30 | |
piano = 0 | |
end | |
end | |
end | |
when x = 1 | |
play notes1[x + rrand_i(-1, 3)], release: q | |
when x = 2 | |
play notes2[x + rrand_i(-2, 2)], release: q | |
when x = 3 | |
play notes3[x + rrand_i(-3, 1)], release: q | |
when x = 4 | |
play notes4[x + rrand_i(-4, 0)], release: q | |
end | |
end | |
else | |
case x | |
when x = 0 | |
play notes0[x + rrand_i(0, 4)], release: q | |
sample [:drum_cymbal_pedal, :drum_snare_soft].choose | |
when x = 1 | |
play notes1[x + rrand_i(-1, 3)], release: q | |
when x = 2 | |
play notes2[x + rrand_i(-2, 2)], release: q | |
when x = 3 | |
play notes3[x + rrand_i(-3, 1)]-2, release: q | |
puts "yes" | |
when x = 4 | |
with_fx :panslicer, amp: 0.6, pulse_width: 0.6, smooth: 0.3, phase: 0.35 do | |
play notes4[x + rrand_i(-4, 0)], release: q | |
end | |
sample :bd_808 | |
end | |
end | |
end | |
if zz == 5 | |
zz = 0 | |
q = [0.05, 0.1, 0.3, 0.6].choose | |
sleep [2, 4].choose | |
else | |
sleep [0.25, 0.33333333].choose | |
end | |
end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment