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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
-- Good Morning Minneapolis
-- TODO Note default knob values
-- >1A 2A 3A 4A 5A 6A 7A 8A UP DOWN
-- >1B 2B 3B 4B 5B 6B 7B 8B L R
-- `29 30 31 32 33 34 35 36 106 107`
-- >1C 2C 3C 4C 5C 6C 7C 8C
-- `49 50 51 52 53 54 55 56`
-- XXX XXX XXX XXX XXX pSust fSpd gunFreq
-- Dlay DFB XXX XXX crBass pRVel cpStut gunSpd
-- DJF XXX XXX panDr gmSiren pLVel cpSpd gGuns
-- G Kick Sn DrRoll Bass Piano CP Fire
-- X TCHN Stut Wait/Run TCHN XXX XXX XXX
do
-- region Nova Utils
let gF = 1.5 -- gain factor
let gG a = (gain (gF * "^77" * a)) -- gain Global
let gM' l h a = (gG (range l h a)) -- gain Modéré
let gM a = (gM' 0.2 0.8 a) -- gain Modéré doux
let novaOn ch pat = someCyclesBy ch pat
let novaOff ch pat = someCyclesBy (1 - ch) pat
let gReverb = ((# room "^29") . (# sz (range 0 0.9 "^30")) . (# dry (range 0 2 "^13")))
let gLPF = (# lpf (min 10000 ((range 200 20400 ("^49")))))
let gHPF = (# hpf (max 0 (min 7500 ((range "-7500" 7500 ("^49"))))))
let gDJF = (gLPF . gHPF)
-- endregion Nova Utils
let g = (gDJF . gReverb)
-- let g = id
let melody = "<d4'min d4'min <a3'min g4'min e4'min> d4'min>"
let melodyFirst = "<d3 d3 <a3 g3 e3> d3>"
setcps 0.5
d1 $ g
$ novaOn "^41" (superimpose ((# "kick:5"))) -- TECHNO
$ novaOn "^41" (<| "k <k!4 ~!4> k <k!3 k*<1 2>>") -- TECHNO
$ novaOff "^41" (<| "k . k(<1 <3 5>>,8,<0 4>)") -- Hip beat
$ "reverbkick"
# gM' 0 1 "^78"
d2 $ g
$ mask "<f!8 t!8> <f!4 t!4> . t"
$ novaOn "^75" (slice 8 (run 8) . (loopAt 1 . (>| "breaks165")))
$ sometimesBy ("^43") (mask "t(<8!2 12!2>,16)" . stut 4 0.9 "s")
$ every' 8 7 (mask "f t!3" . jux rev)
$ s "~ s ~ <~!4 s!4> ~ s*2 ~ s*2"
# s "snare:20"
# gM' 0 1.2 "^79"
# pan 0.3
d3 $ g -- Drumroll opposé hit roll / hh when TECHNO
$ novaOn "^41" ( -- TECHNO bells!
whenmod 4 3 (
sometimesBy "0!15 <0!4 1!4>" (# silence) .
sometimesBy "0!14 <1!3 1> 0" ((# "hh:1") . (|* gain 1.4)) .
fast 2) .
(|* gain 0.75) .
(>| "ho*8")
)
$ novaOff "^44" (fast "<4!3 <2 [2 <8 [8 16]>]>>") -- Waiting roll
$ novaOn "^44" (fast "<16!3 [16 8]> [8 <8!3 16>]") -- Running roll
$ s "drum:8"
# pan (slow 8 $ range 0.1 0.9 (sine + "^52"))
# gM' 0 1 "^80"
# cut 3
d6 $ g -- Hit roll opposé drumroll
$ every' 4 3 ( -- acceleration + cymbale
fast "2 1" . (# n "0!3 1")
. (|* gain "1!3 <0.65 0.8>")
)
$ s "hh(<3!4 5!4>,8)"
# gM' 0 0 "^80"
# pan 0.7
d4 $ g
-- $ degradeBy "0 0.9!7" -- OUTRO
$ mask "t(<1 2!2 4>,4)"
$ superimpose (
often (off 0.125 (|+ note "<0!3 12>"))
. arp (slow 8 $ "<up down updown downup>")
. (|+ note 36)
. (# velocity (range 0.35 0.75 ("^34" + (fast 4 perlin/8))))
. (|* velocity 1.1)
. (# room 0.2)
. (/ sustain 2)
. (# sz 0.8)
. (|+ pan 0.15)
)
$ note (melody)
# s "superpiano"
# gM' 0 1.1 "^82"
# velocity (range 0.35 0.60 ("^54" + (fast 4 perlin/8)))
# sustain (max 0.45 $ min 1 (2 * range 0.15 1 "^18"))
# room 0.4 # size 0.2
# pan 0.5
d5 $ g -- Basse + Sirene
$ sometimesBy ("^57") ( -- TECHNOPHILE
chop "<2!3 4> <4!3 2>"
-- . often (ply 4)
)
$ superimpose (
slow 4
. (# s "supersiren")
. (-| note 12) -- 24 when crushed
. (# gM' 0.2 0.8 ((
"^81" -- gain bass
* (range 0.7 0.9 "^53") -- Modulated 5C
)
- (0.125 * "^57") -- When TECHNOPHILE
))
. (# crush (range 10 3
"^33"))
. (# room 0.5)
. (# size 0.8)
)
$ note (
"0*2 0 . 0 <7 5 5 7> ~ 0"
+ melodyFirst
)
# s "supersaw"
# voice 0.15
# crush (range 10 2 "^33")
# gM' 0.2 0.8 ("^81" * (range 1 0.45 "^53")) -- Modulated 5C
# pan (slow 10 $ range 0.6 0.8 sine)
d7 $ g -- Claps fantome
$ sometimesBy (range 0 0.25 "^55") (stut 4 0.9 "s")
$ s "~ . cp*<1 1 2 1 1!3 2> ~"
# room 0.2
# sz (range 0.5 0.9 perlin)
# dry 1.05
# speed (range 0.125 1.25 "^35")
# gM' 0 1 "^83"
# lpf 2000
# pan (slow 8 $ range 0.45 0.65 saw)
d8 $ g -- Gunfire
$ sometimesBy "^20" (
superimpose (const -- pistolets
$ someCyclesBy 0.25 ( -- réplique
off 0.5 (|+ gain 0.1)
. (# room 0.25)
)
$ sometimes (stut 2 0.55 ("[s|e|h]")) -- écho
$ s "~ ~ ~ snare:57"
# speed (range 0.4 1 ("^36" + (slow 4 $ perlin/3)))
# gM' 0 1 "^56"
# cut 80
# dry 1.02
# pan (range 0.2 0.8 perlin)
)
)
$ sometimes (off "h" id)
$ s "fire"
# begin (slow 4 "<0 0.2 0.5>")
# cut 8
# room 0.6 # size 0.4
# speed (range 0.5 1.25 (segment 8 $ "^19" + perlin/4))
# gM "^84"
# delay 0.3 # delaytime (1/3) # delayfb 0.8