Examples / Songs / Agency
Zero Day
Play in Cycletron Opens it in the app in your browser, with the visualizers. Desktop browsers only.
// AGENCY OST — 05 · Zero Day
// The duel. Industrial techno: Berghain rumble kick, struck-metal clatter,
// a locomotive phrygian bass. In the overload the Agency motif comes back
// HAMMERED — the badge-in theme as a weapon.
//
// FORM (135 BPM · 1 cycle = 1 bar · 72 bars ≈ 2:08 · loops):
// intro 8 e2 the rumble kick alone in the dark, hats sneak in
// machine 16 e4 + struck metal, rolling 16th bass — dry, no wash
// duel 16 e5 + stabs trading left/right — attack and parry
// vent 8 e2 kick out — drone, metal clatter, a bell tolling
// overload 16 e5 everything + the motif hammered in octaves
// collapse 8 e1 the rumble dies out; one bell left ringing
// hook: the Agency motif, hammered — overload only. Earned.
setbpm(135);
"<intro@2 machine@4 duel@4 vent@2 overload@4 collapse@2>".slow(4).pickRestart({
intro: stack(
s("bd*4").gain(0.95).dist(0.45).lpf(3000),
note("<[c#1*4] [c#1*4] [c#1*4] [c#1 c#1 c#1 b0]>")
.s("sine").attack(0.001).decay(0.32).sustain(0).release(0.4)
.lpf(220).resonance(3).dist(0.5)
.room(0.55).roomsize(0.85).gain(0.6),
s("<[~ ~ ~ ~] [~ ~ ~ ~] [hh*8] [hh*16]>").gain(0.24).hpf(6500)
),
machine: stack(
s("bd*4").gain(0.95).dist(0.45).lpf(3000),
note("c#1*4").s("sine").attack(0.001).decay(0.32).sustain(0).release(0.4)
.lpf(220).dist(0.5).room(0.55).roomsize(0.85).gain(0.55),
s("hh*16").gain(0.28).hpf(6500),
s("RolandTR808_rim ~ ~ RolandTR808_rim ~ ~ RolandTR808_rim ~").gain(0.28).hpf(1800).dist(0.2).room(0.12).pan(0.35),
s("<[~ ~ ~ ~] [~ ~ ~ [ht mt]]>").gain(0.3).crush(6).hpf(600).pan(0.62),
note("<[c#2 c#2 c#3 c#2 c#2 c#3 c#2 c#2 d2 c#2 c#3 c#2 e2 d2 c#3 c#2] [c#2 c#2 c#3 c#2 c#2 c#3 c#2 c#2 d2 c#2 c#3 c#2 e2 d2 c#3 c#2] [c#2 c#2 c#3 c#2 d2 c#2 c#3 c#2 e2 c#2 c#3 c#2 f#2 e2 d2 c#2] [g#1 g#1 g#2 g#1 a1 a1 a2 a1 d2 d2 d3 d2 c#2 c#2 c#3 c#2] [c#2 c#2 c#3 c#2 c#2 c#3 c#2 c#2 d2 c#2 c#3 c#2 e2 d2 c#3 c#2] [c#2 c#2 c#3 c#2 c#2 c#3 c#2 c#2 d2 c#2 c#3 c#2 e2 d2 c#3 c#2] [e2 e2 e3 e2 d2 d2 d3 d2 c#2 c#2 c#3 c#2 b1 b1 b2 b1] [c#2 c#2 c#3 c#2 d2 c#2 c#3 c#2 c#2 c#2 c#3 c#2 c#2 ~ c#2 ~]>")
.s("sawtooth").lpf(1100).resonance(8).dist(0.28)
.decay(0.09).sustain(0).gain("0.62 0.45")
),
duel: stack(
s("bd*4").gain(0.95).dist(0.45).lpf(3000),
note("c#1*4").s("sine").attack(0.001).decay(0.32).sustain(0).release(0.4)
.lpf(220).dist(0.5).room(0.55).roomsize(0.85).gain(0.55),
s("hh*16").gain(0.26).hpf(6500),
s("<[~ ~ ~ [~ mt]] [~ ~ ~ [ht mt]]>").gain(0.32).crush(6).hpf(600).pan(0.62),
note("<[c#2 c#2 c#3 c#2 c#2 c#3 c#2 c#2 d2 c#2 c#3 c#2 e2 d2 c#3 c#2] [c#2 c#2 c#3 c#2 c#2 c#3 c#2 c#2 d2 c#2 c#3 c#2 e2 d2 c#3 c#2] [c#2 c#2 c#3 c#2 d2 c#2 c#3 c#2 e2 c#2 c#3 c#2 f#2 e2 d2 c#2] [g#1 g#1 g#2 g#1 a1 a1 a2 a1 d2 d2 d3 d2 c#2 c#2 c#3 c#2] [c#2 c#2 c#3 c#2 c#2 c#3 c#2 c#2 d2 c#2 c#3 c#2 e2 d2 c#3 c#2] [c#2 c#2 c#3 c#2 c#2 c#3 c#2 c#2 d2 c#2 c#3 c#2 e2 d2 c#3 c#2] [e2 e2 e3 e2 d2 d2 d3 d2 c#2 c#2 c#3 c#2 b1 b1 b2 b1] [c#2 c#2 c#3 c#2 d2 c#2 c#3 c#2 c#2 c#2 c#3 c#2 c#2 ~ c#2 ~]>")
.s("sawtooth").lpf(1100).resonance(8).dist(0.28)
.decay(0.09).sustain(0).gain("0.7 0.5"),
note("<[~ c#4 ~ c#4 ~ ~ e4 ~] [~ ~ ~ ~ ~ ~ ~ ~] [~ c#4 ~ e4 ~ ~ f#4 ~] [~ ~ ~ ~ ~ ~ ~ ~]>")
.s("superzow").decay(0.1).sustain(0).release(0.06)
.lpf(2800).resonance(6).dist(0.35).gain(0.44).pan(0.25),
note("<[~ ~ ~ ~ ~ ~ ~ ~] [~ d4 ~ ~ c#4 ~ b3 ~] [~ ~ ~ ~ ~ ~ ~ ~] [~ g#4 ~ f#4 ~ e4 d4 ~]>")
.s("supersquare").decay(0.1).sustain(0).release(0.06)
.lpf(2400).resonance(6).dist(0.3)
.delay(0.2).delaytime(0.1111).gain(0.4).pan(0.75)
),
vent: stack(
note("<[c#3, e3, g#3, b3] [a2, c#3, e3, g#3]>").s("supersaw")
.attack(1.2).release(3.5).lpf(900).gain(0.3).room(0.7).roomsize(0.85),
s("<[~ ~ [~ metal] ~] [~ ~ ~ [~ rs]]>").gain(0.24).hpf(1500).lpf(6000).room(0.3).pan(0.4),
note("<[c#5 ~ ~ ~ ~ ~ ~ ~] [~ ~ ~ ~ g#4 ~ ~ ~] [c#5 ~ ~ ~ ~ ~ ~ ~] [~ ~ e5 ~ ~ ~ ~ ~]>")
.s("wt_bell").dist(0.2).lpf(4500)
.delay(0.35).delaytime(0.375).delayfeedback(0.4)
.room(0.6).gain(0.3).pan(0.58),
note("c#1").s("sine").slow(2).attack(1.5).release(3).gain(0.42)
),
overload: stack(
s("bd*4").gain(0.95).dist(0.45).lpf(3000),
note("c#1*4").s("sine").attack(0.001).decay(0.32).sustain(0).release(0.4)
.lpf(220).dist(0.5).room(0.55).roomsize(0.85).gain(0.55),
s("hh*16").gain(0.26).hpf(6500),
s("~ ~ oh ~").gain(0.26).hpf(4000),
s("<[~ ~ ~ [~ mt]] [~ ~ ~ [ht mt]]>").gain(0.3).crush(6).hpf(600).pan(0.62),
note("<[c#2 c#2 c#3 c#2 c#2 c#3 c#2 c#2 d2 c#2 c#3 c#2 e2 d2 c#3 c#2] [c#2 c#2 c#3 c#2 c#2 c#3 c#2 c#2 d2 c#2 c#3 c#2 e2 d2 c#3 c#2] [c#2 c#2 c#3 c#2 d2 c#2 c#3 c#2 e2 c#2 c#3 c#2 f#2 e2 d2 c#2] [g#1 g#1 g#2 g#1 a1 a1 a2 a1 d2 d2 d3 d2 c#2 c#2 c#3 c#2]>")
.s("sawtooth").lpf(1250).resonance(8).dist(0.3)
.decay(0.09).sustain(0).gain("0.7 0.5"),
note("<[0 2 4 6 7 4 2 0] [0 2 4 6 7 4 2 0] [0 2 4 6 7 9 7 6] [7 ~ 4 ~ 2 ~ 0 ~] [0 2 4 6 7 4 2 0] [0 2 4 6 7 4 2 0] [12 ~ 9 ~ 7 ~ 6 ~] [7 6 4 2 0 ~ 0 0]>")
.scale("C#4:phrygian").s("supersquare")
.decay(0.12).sustain(0).release(0.06)
.lpf(3000).resonance(5).dist(0.3)
.off(0.5, x => x.add(12).gain(0.4))
.gain(0.42).pan(0.5)
),
collapse: stack(
s("bd*4").gain(isaw.range(0.3, 0.9).slow(8)).dist(0.4).lpf(isaw.range(200, 2500).slow(8)),
note("c#1").s("sine").slow(2).attack(1.0).release(4).gain(0.45),
note("<[c#5 ~ ~ ~ ~ ~ ~ ~] [~ ~ ~ ~ ~ ~ ~ ~] [~ ~ ~ ~ g#4 ~ ~ ~] [~ ~ ~ ~ ~ ~ ~ ~]>")
.s("wt_bell").lpf(3500)
.delay(0.5).delaytime(0.375).delayfeedback(0.55)
.room(0.8).gain(0.28).pan(0.58),
note("<[c#3, e3, g#3, b3] [a2, c#3, e3, g#3]>").s("supersaw")
.attack(1.5).release(4).lpf(isaw.range(300, 900).slow(8))
.gain(0.26).room(0.75).roomsize(0.85)
)
})