1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
#best performed one loop at a time
#sounds/feels best with headphones
##120 bpm
bps = 0.5
#change key and mode
key= [:Bb4]
scl = [:major]
#turns on:bass,melody,harmony,ostenato
switch = [true,true, false, false]
live_loop :boom do
if switch[0]
vol = 1
8.times do
with_fx :band_eq, freq: 100 do
sample :bd_boom, amp: vol
sleep bps
end
end
else
sleep bps*8
end
end
live_loop :sing do
if switch[1]
vol = 0.1
use_synth :square
with_fx :gverb, room: 50 do
with_fx :lpf, freq: 200 do
play scale(key[0], scl[0])[0], amp: vol, attack: bps*1.5, release: bps*2.5
sleep bps*2
play scale(key[0], scl[0])[4], amp: vol, attack: bps*1.5, release: bps*2.5
sleep bps*2
play scale(key[0], scl[0])[3], amp: vol, attack: bps*1.5, release: bps*2.5
sleep bps*2
play scale(key[0], scl[0])[2], amp: vol, attack: bps*1.5, release: bps*2.5
sleep bps*2
end
end
else
sleep bps*8
end
end
live_loop :harmony do
if switch[2]
vol = 0.1
use_synth :square
with_fx :gverb, room: 50 do
with_fx :lpf, freq: 200 do
play scale(key[0], scl[0])[choose([2,3,4])], amp: vol, attack: bps*1.5, release: bps*2.5
sleep bps*2
play scale(key[0], scl[0])[choose([0,2,7])], amp: vol, attack: bps*1.5, release: bps*2.5
sleep bps*2
play scale(key[0], scl[0])[choose([1,5])], amp: vol, attack: bps*1.5, release: bps*2.5
sleep bps*2
play scale(key[0], scl[0])[choose([5,7])], amp: vol, attack: bps*1.5, release: bps*2.5
sleep bps*2
end
end
else
sleep bps*8
end
end
live_loop :angels do
if switch[3]
vol = 0.1
use_synth :square
with_fx :slicer, wave: 1, phase: 0.1 do
with_octave 1 do
with_fx :gverb, room: 50 do
with_fx :lpf, freq: 200 do
play scale(key[0], scl[0])[7], amp: vol, attack: bps*1.5, release: bps*2.5
sleep bps*2
play scale(key[0], scl[0])[6], amp: vol, attack: bps*1.5, release: bps*2.5
sleep bps*2
play scale(key[0], scl[0])[5], amp: vol, attack: bps*1.5, release: bps*2.5
sleep bps*2
play scale(key[0], scl[0])[4], amp: vol, attack: bps*1.5, release: bps*2.5
sleep bps*2
end
end
end
end
else
sleep bps*8
end
end
|