{
   "author" : "grirgz",
   "name" : "In-App purchase",
   "ancestor_list" : [],
   "description" : "the starting element of this track was the \"piano\" (named dru here) which is picking random notes from a scale then putting them at random time on a beat, then remove and add new notes as time advance. there is a bit of random in bass and perc too. You can hear a recording here : https://soundcloud.com/insomniark/in-app-purchase",
   "labels" : [],
   "code" : "(\r\n\t/////////////////////////////////////////// INIT BLOCK\r\n\r\nTempoClock.default.tempo = 130/60;\r\n~t = TempoClock.default.tempo;\r\n\r\nSynthDef(\\aride, { arg out=0, amp=0.1, gate=1, pan=0, freq=200;\r\n\tvar sig;\r\n\tvar sig1, sig2, sig3, sig4, sig5, sig6, sig7, sig8;\r\n\tvar xfreq = freq * ( (1..8)/Rand(8000,1000) + 1 );\r\n\tsig1 = SinOsc.ar(freq)!8;\r\n\tsig2 = SinOsc.ar(xfreq);\r\n\tsig3 = LFSaw.ar(xfreq);\r\n\tsig = SelectX.ar(\\mix.kr(0.5)*2, [sig3, sig1, sig2]);\r\n\tsig = HPF.ar(sig, 200) * LFPulse.ar(xfreq) + sig;\r\n\t//(21000-[20,20000]).log/4\r\n\tsig = RLPF.ar(sig, freq * ( 21000-freq ).log/4, \\rq.kr(0.5));\r\n\t//sig = sig * EnvGen.ar(Env.adsr(0.41,0.1,0.8,0.4),Trig1.kr(gate,1/9),doneAction:2);\r\n\t//sig = sig * EnvGen.ar(Env.adsr(0.01,0.1,0.8,0.4),gate,doneAction:2);\r\n\tsig = sig * EnvGen.kr(Env.adsr(0.01,0.1,0.8,\\rel.kr(0.1)), gate, doneAction:2);\r\n\tsig = sig * 3/4;\r\n\tsig = sig * AmpComp.kr(freq);\r\n\tsig = Pan2.ar(sig, \\pantab.kr(0!sig.size), amp).mean;\r\n\tOut.ar(out, sig);\r\n}).add;\r\n\r\nSynthDef(\\hat, { arg out=0, amp=0.1, gate=1, pan=0, freq=200;\r\n\tvar sig;\r\n\tsig = WhiteNoise.ar;\r\n\tsig = RLPF.ar(sig, \\lpf.kr(11100), \\rq.kr(0.5));\r\n\tsig = RHPF.ar(sig, \\hpf.kr(3100), \\rq.kr(0.5));\r\n\t//sig = sig * EnvGen.ar(Env.adsr(0.01,0.1,0.8,0.2,1,-4),gate,doneAction:2);\r\n\tsig = sig * EnvGen.ar(Env.perc(0.01,\\rel.kr(0.1),-4),gate,doneAction:2);\r\n\tsig = Pan2.ar(sig, pan, amp);\r\n\tOut.ar(out, sig);\r\n}).add;\r\n\r\nSynthDef(\\hat2, { arg out=0, amp=0.1, gate=1, pan=0, freq=200;\r\n\tvar sig;\r\n\tsig = WhiteNoise.ar;\r\n\tsig = RLPF.ar(sig, \\lpf.kr(15100), \\rq.kr(0.5));\r\n\tsig = RHPF.ar(sig, \\hpf.kr(6100), \\rq.kr(0.5));\r\n\t//sig = sig * EnvGen.ar(Env.adsr(0.01,0.1,0.8,0.2,1,-4),gate,doneAction:2);\r\n\tsig = sig * EnvGen.ar(Env.perc(0.01,\\rel.kr(0.1),-4),gate,doneAction:2);\r\n\tsig = Pan2.ar(sig, pan, amp);\r\n\tOut.ar(out, sig);\r\n}).add;\r\n\r\nSynthDef(\\snare, { arg out=0, amp=0.1, gate=1, pan=0, freq=200;\r\n\tvar sig;\r\n\tvar env1, env2, env3, env4, env5, env6, env7, env8;\r\n\tvar sig1, sig2, sig3, sig4, sig5, sig6, sig7, sig8;\r\n\tsig = SinOsc.ar(freq);\r\n\tsig = WhiteNoise.ar;\r\n\tenv1 = EnvGen.kr(Env([4000,4400,1700],[0.04,0.7],-4), 1) * \\env1scale.kr(1);\r\n\tsig1 = RLPF.ar(sig, env1 , \\rq.kr(0.5) * [1,0.5]) * [1,0.7];\r\n\tenv2 = EnvGen.kr(Env([1000,4400,1700],[0.01,0.7],-4), 1) * \\env2scale.kr(1);\r\n\tsig2 = RLPF.ar(sig, env2 , \\rq.kr(0.5) * [1,0.5]) * [1,0.7];\r\n\tsig = [sig1, sig2];\r\n\t//sig = [FreqShift.ar(sig, -220) , sig];\r\n\tsig = DelayL.ar(sig, 0.1, [ 1/8000, 1/7000 ]) + sig;\r\n\tsig = DelayL.ar(sig, 0.1, [ 1/8000, 1/7000 ] * 4.11) + sig;\r\n\tsig = 4.collect { arg x;\r\n\t\tvar isig = DelayL.ar(sig, 0.1,0.01 * ( x/40 )) + sig;\r\n\t\tisig = DelayL.ar(isig, 0.1, [ 1/8000, 1/7000 ] * 0.98 * ( x/10 )) + sig;\r\n\t};\r\n\tsig = sig.mean;\r\n\tsig.debug(\"sig\");\r\n\tsig = sig * EnvGen.ar(\\env.kr(Env.perc(0.01,0.2,1)),gate,doneAction:2);\r\n\tsig = Pan2.ar(sig, pan, amp).mean;\r\n\tOut.ar(out, sig);\r\n}).add;\r\n\r\nSynthDef(\\snare2, { arg out=0, amp=0.1, gate=1, pan=0, freq=200;\r\n\tvar sig;\r\n\tvar sig1, sig2, sig3, sig4, sig5, sig6, sig7, sig8;\r\n\tvar env1, env2, env3, env4, env5, env6, env7, env8;\r\n\tvar fmf;\r\n\tsig1 = WhiteNoise.ar;\r\n\tenv1 = EnvGen.kr(Env([freq,freq*2,4541],[0.01,0.08]), 1);\r\n\tsig1 = BPF.ar(sig1, env1);\r\n\tsig2 = WhiteNoise.ar;\r\n\tenv2 = EnvGen.kr(Env([freq,freq*2,8541],[0.04,0.08]), 1);\r\n\tsig2 = BPF.ar(sig2, env2);\r\n\r\n\tfmf = freq * [1,1/4];\r\n\tenv3 = EnvGen.kr(Env([1,2,1],[0.1,0.8]), 1);\r\n\tsig3 = SinOsc.ar(fmf * ( 1 + ( SinOsc.ar(fmf * 8/10) * env3 )));\r\n\tsig = [sig1, sig2];\r\n\tsig = sig * EnvGen.kr(Env.perc(0.0001,0.02), gate);\r\n\tsig = sig + sig3;\r\n\t//sig = [sig1, sig2] * 2;\r\n\tsig = DelayL.ar(sig, 0.1, [ 1/8000, 1/7000 ] * 1744.11) + sig;\r\n\tsig = sig * EnvGen.kr(Env.perc(0.0001,0.2), gate, doneAction:2);\r\n\tsig = Pan2.ar(sig, pan, amp).mean;\r\n\tOut.ar(out, sig);\r\n}).add;\r\n\r\nSynthDef(\\kick, { |out=0, amp=0.1, pan=0, fratio=1.5, freqpan=0.01, spread=0.08, timeScale=1|\r\n\tvar env0, env1, env1m, son;\r\n\r\n\t//freqpan = [-1,0,1] * freqpan;\r\n\tenv0 = \\env0.kr(Env.new([0, 1, 0.5, 0], [0.105, 0.16, 00.2], [-4, -2, -4]));\r\n\tenv1 = \\env1.kr(Env.new([110, 32, 29], [0.105, 0.29], [-4, -5]));\r\n\t\r\n\tenv0 =  EnvGen.ar(env0, doneAction:2, timeScale:timeScale);\r\n\tenv1 = EnvGen.ar(env1, timeScale:timeScale);\r\n\tenv1m = env1.midicps;\r\n\t\r\n\tson = LFPulse.ar(env1m * freqpan, 0, 0.5, 1, -0.5);\r\n\tson = son + WhiteNoise.ar(1);\r\n\tson = LPF.ar(son, env1m*fratio);\r\n\tson = son + SinOsc.ar(env1m, 0.5);\r\n\tson = LPF.ar(son, \\lpf.kr(2000));\r\n\t\r\n\t//son = son * 1.2;\r\n\t//son = son.clip2(1);\r\n\r\n\tson = son * amp;\r\n\tson = son * env0;\r\n\tson = Pan2.ar(son, pan, amp);\r\n\t\r\n\tOffsetOut.ar(out, son);\r\n}, metadata:(specs:(\r\n\ttimeScale: ControlSpec(0.001,4,\\lin, 0, 1),\r\n))).store;\r\n\r\nSynthDef(\\bass, { arg out=0, amp=0.1, gate=1, pan=0, freq=200;\r\n\tvar sig;\r\n\tvar sig1, sig2, sig3, sig4, sig5, sig6, sig7, sig8;\r\n\tvar xfreq;\r\n\tvar lfo1, lfo2, lfo3, lfo4, lfo5, lfo6, lfo7, lfo8;\r\n\tsig = SinOsc.ar(freq * [1,2] * ( (1..8)/Rand(10,10000) + 1 ));\r\n\tsig = sig + LFSaw.ar(freq * ( 1 + ( SinOsc.ar(70) * SinOsc.kr(1).range(0,1) )));\r\n\txfreq = freq * [1,2] * ( (1..8)/Rand(10,10000) + 1 );\r\n\tsig1 = LFSaw.ar(freq);\r\n\tsig2 = LFPulse.ar(freq);\r\n\tsig3 = SinOsc.ar(freq);\r\n\tlfo1 = SinOsc.kr(\\lfo1.kr(2)*~t,2pi/2).range(0,1);\r\n\tlfo2 = SinOsc.kr(\\lfo2.kr(2)*~t,2pi/2).range(1,2);\r\n\tsig = SelectX.ar(lfo1*2, [sig1, sig2, sig3]);\r\n\tsig = RLPF.ar(sig, \\lpf.kr(700) * [0.5,1,1.2] * lfo2, \\rq.kr(0.7));\r\n\tsig = sig / 2;\r\n\tsig = sig * EnvGen.ar(Env.adsr(0.01,0.1,0.8,0.1),gate,doneAction:2);\r\n\tsig = Pan2.ar(sig, pan, amp).mean;\r\n\tOut.ar(out, sig);\r\n}).add;\r\n\r\nSynthDef(\\bass2, { arg out=0, amp=0.1, gate=1, pan=0, freq=200;\r\n\tvar sig;\r\n\tsig = SinOsc.ar(freq * [1,2] * ( (1..8)/Rand(10,10000) + 1 ));\r\n\tsig = sig + LFSaw.ar(freq * ( 1 + ( SinOsc.ar(70) * SinOsc.kr(1).range(0,1) )));\r\n\tsig = CombL.ar(sig, 1/freq, 1) + sig;\r\n\tsig = sig / 4;\r\n\tsig = RLPF.ar(sig, \\lpf.kr(700) * [0.5,\\lfo1.kr(1.2),\\lfo2.kr(1)], \\rq.kr(0.4));\r\n\tsig = LPF.ar(sig, 1700);\r\n\tsig = sig * EnvGen.ar(Env.adsr(0.01,0.1,0.8,0.1),gate,doneAction:2);\r\n\tsig = Pan2.ar(sig, pan, amp).mean;\r\n\tOut.ar(out, sig);\r\n}).add;\r\n\r\nSynthDef(\\bass3, { arg out=0, amp=0.1, gate=1, pan=0, freq=200;\r\n\tvar sig;\r\n\tvar sig1, sig2, sig3, sig4, sig5, sig6, sig7, sig8;\r\n\tvar xfreq;\r\n\tvar lfo1, lfo2, lfo3, lfo4, lfo5, lfo6, lfo7, lfo8;\r\n\tsig = SinOsc.ar(freq * [1,2] * ( (1..8)/Rand(10,10000) + 1 ));\r\n\tsig = sig + LFSaw.ar(freq * ( 1 + ( SinOsc.ar(70) * SinOsc.kr(1).range(0,1) )));\r\n\txfreq = freq * [1,2] * ( (1..8)/Rand(10,10000) + 1 );\r\n\tsig1 = LFSaw.ar(freq);\r\n\tsig2 = LFPulse.ar(freq);\r\n\tsig3 = SinOsc.ar(freq);\r\n\tlfo1 = SinOsc.kr(\\lfo1.kr(2)*~t,2pi/2).range(0,1);\r\n\tlfo2 = SinOsc.kr(\\lfo2.kr(2)*~t,2pi/2).range(1,2);\r\n\tsig = SelectX.ar(lfo1*2, [sig1, sig2, sig3]);\r\n\tsig = RLPF.ar(sig, \\lpf.kr(700) * [0.5,1,1.2] * lfo2, \\rq.kr(0.7));\r\n\tsig = CombL.ar(sig, 0.1, 1/( freq * [1,1/2] ), 1) + sig;\r\n\tsig = sig / 12;\r\n\tsig = LPF.ar(sig, 1700);\r\n\tsig = sig * EnvGen.ar(Env.adsr(0.01,0.1,0.8,0.1),gate,doneAction:2);\r\n\tsig = Pan2.ar(sig, SinOsc.kr((1..sig.size) * 4 / \\lfo1.kr), amp).mean;\r\n\tOut.ar(out, sig);\r\n}).add;\r\n\r\n\r\n8.collect({ arg x;\r\n\tNdef((\\yaplfo1_++x).asSymbol, { SinOsc.kr(1/(x*3+8), 3pi/2).range(0,1)  });\r\n\tNdef((\\yaplfo2_++x).asSymbol, { SinOsc.kr(1/(x*4+11)).range(0.01,1)  });\r\n});\r\n\r\nPdef(\\dru, \r\n\r\n\tPpar(\r\n\t\t8.collect({ arg x;\r\n\t\t\tvar tdur = 4.0;\r\n\t\t\tPlazy({\r\n\t\t\t\tPbind(\r\n\t\t\t\t\t\\instrument, \\aride,\r\n\t\t\t\t\t\\mix, Ndef((\\yaplfo1_++x).asSymbol),\r\n\t\t\t\t\t\\rel, Ndef((\\yaplfo2_++x).asSymbol),\r\n\t\t\t\t\t\\degree, 28.rand,\r\n\t\t\t\t\t\\octave, 3,\r\n\t\t\t\t\t\\legato, 0.1,\r\n\t\t\t\t\t\\scale, Scale.minor,\r\n\t\t\t\t\t\\legato, 0.05 + Pseg(Pseq([0,1,0.5]/8,inf),8+( x*2 )),\r\n\t\t\t\t\t\\dur, Pn(tdur,rrand(5,14)),\r\n\t\t\t\t\t\\amp, 0.1/10,\r\n\t\t\t\t\t\\lag, tdur.rand / ~t,\r\n\t\t\t\t);\r\n\t\t\t}).loop\r\n\t\t})\r\n\t)\r\n\r\n);\r\n\r\nPdef(\\dru2, \r\n\r\n\tPpar(\r\n\t\t8.collect({ arg x;\r\n\t\t\tvar tdur = 4.0;\r\n\t\t\tPlazy({\r\n\t\t\t\tPbind(\r\n\t\t\t\t\t\\instrument, \\aride,\r\n\t\t\t\t\t\\mix, Ndef((\\yaplfo1_++x).asSymbol),\r\n\t\t\t\t\t\\rel, Ndef((\\yaplfo2_++x).asSymbol),\r\n\t\t\t\t\t\\degree, 28.rand,\r\n\t\t\t\t\t\\octave, 3,\r\n\t\t\t\t\t\\legato, 0.1,\r\n\t\t\t\t\t\\scale, Scale.minor,\r\n\t\t\t\t\t\\legato, 0.05 + Pseg(Pseq([0,1,0.5]/8,inf),8+( x*2 )),\r\n\t\t\t\t\t\\dur, Pn(tdur,rrand(1,4)),\r\n\t\t\t\t\t\\amp, 0.1/10,\r\n\t\t\t\t\t\\lag, tdur.rand / ~t,\r\n\t\t\t\t);\r\n\t\t\t}).loop\r\n\t\t})\r\n\t)\r\n\r\n);\r\n\r\nPdef(\\kick1, Pbind(\r\n\t\\instrument, \\kick,\r\n\t\\env1, Pseq([\r\n\t\t[ Env.new([60, 35, 35], [0.055, 0.29], [-4, -5]) ],\r\n\t],inf),\r\n\t\\env0, Pseq([\r\n\t\t[ Env.new([0, 1, 0.8,0], [0.015, 0.09,0.1], [-4, -5]) ],\r\n\t],inf),\r\n\t\\timeScale, 1,\r\n\t\\isRest, Pseq([\r\n\t\t1,0,0,0, 0,0,0,0,\r\n\t],inf).coin.not,\r\n\t\\fratio, 1,\r\n\t\\degree, Pseq([0],inf),\r\n\t\\dur, 1/4,\r\n\t\\amp, 0.4\r\n));\r\n\r\nPdef(\\kick2, Pbind(\r\n\t\\instrument, \\kick,\r\n\t\\env1, Pseq([\r\n\t\t[ Env.new([60, 35, 35], [0.055, 0.29], [-4, -5]) ],\r\n\t],inf),\r\n\t\\env0, Pseq([\r\n\t\t[ Env.new([0, 1, 0.8,0], [0.015, 0.09,0.1], [-4, -5]) ],\r\n\t],inf),\r\n\t\\timeScale, 1,\r\n\t\\isRest, Pseq([\r\n\t\t0,0,0,0, 0,0,0,0,\r\n\t\t0,0,0,0, 0,0,0,1,\r\n\t\t0,0,0,0, 0,0,0,0,\r\n\t\t0,0,0,0, 0,0,0,0,\r\n\r\n\t\tPlazy({ Pseq([0,0,0,0, 0,0,0,1].scramble) }),\r\n\t\t0,0,0,0, 0,0,0,0,\r\n\t\t0,0,0,0, 0,0,0,0,\r\n\t\t0,0,1,0, 0,0,0,0,\r\n\r\n\t\t0,0,0,0, 0,0,0,0,\r\n\t],inf).coin.not,\r\n\t\\fratio, 1,\r\n\t\\degree, Pseq([0],inf),\r\n\t\\dur, 1/4,\r\n\t\\amp, 0.2\r\n));\r\n\r\nPdef(\\snare, \r\n\r\n\tPbind(\r\n\t\t\\instrument, \\snare,\r\n\t\t\\degree, Pseq([0],inf),\r\n\t\t\\dur, 1/4,\r\n\t\t\\isRest, Pseq([\r\n\t\t\t0,0,0,0, 0,0,0,0,\r\n\t\t\t1,0,0,0, 0,0,0,0,\r\n\t\t],inf).coin.not,\r\n\t\t\\amp, 0.1/10\r\n\t)\r\n\t<>\r\n\tPbind(\r\n\t\t\\env, Pseq([\r\n\t\t\t[ Env.perc(0.01,0.2) ],\r\n\t\t\t[ Env.perc(0.01,0.2) ],\r\n\t\t\t\t//[ Env.perc(0.02,0.4) ]\r\n\t\t],inf),\r\n\t\t\\env1scale, Pseq([1],inf),\r\n\t\t//\\env2scale, Pseq([1,[0.4,0.8]],inf),\r\n\t\t//\\lag, Pseq([0, Ptuple([0,Pwhite(0.01,0.071,1)])],inf),\r\n\t).stutter(8)\r\n\r\n);\r\n\r\nPdef(\\snare2, \r\n\r\n\tPbind(\r\n\t\t\\instrument, \\snare,\r\n\t\t\\degree, Pseq([0],inf),\r\n\t\t\\dur, 1/4,\r\n\t\t\\isRest, Pseq([\r\n\t\t\t0,0,0,0, 0,0,0,0,\r\n\t\t\t0,0,0,0, 0,0,0,1,\r\n\t\t\t0,0,0,0, 0,0,0,0,\r\n\t\t\t0,0,0,0, 0,0,0,0,\r\n\r\n\t\t\t0,0,0,0, 0,0,0,0,\r\n\t\t\t0,0,0,0, 0,0,0,0,\r\n\t\t\t0,0,0,0, 0,0,0,0,\r\n\t\t\t0,0,0,0, 0,1,0,0,\r\n\r\n\t\t\t0,0,0,0, 0,0,0,0,\r\n\t\t\t0,0,0,0, 0,0,0,0,\r\n\t\t\tPlazy({ Pseq([0,0,0,0, 0,0,0,1].scramble) }),\r\n\t\t\t0,0,0,0, 0,0,0,0,\r\n\r\n\t\t\t0,0,0,0, 0,0,0,0,\r\n\t\t\t0,0,0,0, 0,0,0,0,\r\n\t\t\t0,0,0,0, 0,0,0,0,\r\n\t\t\t0,1,0,0, 0,0,0,0,\r\n\r\n\t\t\t0,0,0,0, 0,0,0,0,\r\n\t\t\t0,0,0,0, 0,0,0,0,\r\n\t\t],inf).coin.not,\r\n\t\t\\amp, 0.1/20\r\n\t)\r\n\t<>\r\n\tPbind(\r\n\t\t\\env, Pseq([\r\n\t\t\t[ Env.perc(0.01,0.1) ],\r\n\t\t],inf),\r\n\t\t\\env1scale, Pseq([1],inf),\r\n\t\t//\\env2scale, Pseq([1,[0.4,0.8]],inf),\r\n\t\t//\\lag, Pseq([0, Ptuple([0,Pwhite(0.01,0.071,1)])],inf),\r\n\t).stutter(8)\r\n\r\n);\r\n\r\n\r\nPdef(\\hat2, Pbind(\r\n\t\\instrument, \\hat,\r\n\t\\degree, Pseq([0],inf),\r\n\t\\dur, 1/4,\r\n\t\\sustain, 0.05,\r\n\t\\isRest, Pseq([\r\n\t\tPser([\r\n\t\t\t1,0,0,0,\r\n\t\t],12),\r\n\t\tPser([\r\n\t\t\tPrand([\r\n\t\t\t\tPseq([\r\n\t\t\t\t\t0,1,\r\n\t\t\t\t],1),\r\n\t\t\t\tPseq([\r\n\t\t\t\t\t1,1,\r\n\t\t\t\t],1),\r\n\t\t\t\tPseq([\r\n\t\t\t\t\t1,0,\r\n\t\t\t\t],1),\r\n\t\t\t],1),\r\n\t\t],4),\r\n\t],inf).coin.not,\r\n\t\\rel, Pseq([ \r\n\t\tPser([\r\n\t\t\t0.051,\r\n\t\t],12),\r\n\t\tPser([\r\n\t\t\tPrand([\r\n\t\t\t\tPseq([\r\n\t\t\t\t\t0.1,\r\n\t\t\t\t],1),\r\n\t\t\t\tPseq([\r\n\t\t\t\t\t0.2,0.1,\r\n\t\t\t\t],1),\r\n\t\t\t],1),\r\n\t\t],4)*1,\r\n\t],inf),\r\n\t\\amp, 0.01/10,\r\n\t\\amp, Pkey(\\amp) * Pseq([\r\n\t\t1,0.7,0.9,0.6,\r\n\t],inf),\r\n));\r\n\r\nPdef(\\bass, Pbind(\r\n\t\\instrument, \\bass,\r\n\t\\degree, Pseq([0],inf),\r\n\t\\octave, 3,\r\n\t\\lpf, Ndef(\\basslfo1, { SinOsc.kr(1/14).range(170,1100)  }),\r\n\t\\lfo1, Prand([2,4,8,6,1,3,1/2],inf),\r\n\t\\lfo2, Prand([2,4,6,1,3,1/2]/2,inf),\r\n\t\\legato, Pseq([\r\n\t\tPser([\r\n\t\t\t2,0,0,0, 0,0,0,0,\r\n\t\t\t2,0,0,0, 0,0,0,0,\r\n\t\t\t2,0,0,0, 0,0,0,0,\r\n\t\t\t1/4,Pwhite(1/4,7/4,1),0,0, 0,0,1/2,0,\r\n\t\t\t2,0,0,0, 0,0,0,0,\r\n\t\t\t2,0,0,0, 0,0,0,0,\r\n\t\t\t2,0,0,0, 0,0,0,0,\r\n\t\t\t1/4,Pwhite(1/4,7/4,1),0,0, 0,0,1/2,0,\r\n\t\t],inf),\r\n\t\t//Pser([\r\n\t\t//\t1,1,1,1, 1,1,1,1,\r\n\t\t//],8),\r\n\t],inf)*2,\r\n\t\\mtranspose, Pseq([0,0,0,0, 0,0,0,-1],inf).stutter(8),\r\n\t\\scale, Scale.minor,\r\n\t\\isRest, Pseq([\r\n\t\tPser([\r\n\t\t\t1,0,0,0, 0,0,0,0,\r\n\t\t\t1,0,0,0, 0,0,0,0,\r\n\t\t\t1,0,0,0, 0,0,0,0,\r\n\t\t\t1,1,0,0, 0,0,0,0,\r\n\r\n\t\t\t1,0,0,0, 0,0,0,0,\r\n\t\t\t1,0,0,0, 0,0,0,0,\r\n\t\t\t1,0,0,0, 0,0,0,0,\r\n\t\t\t1,1,0,0, 0,0,1,0,\r\n\t\t],inf),\r\n\t\t//Pser([\r\n\t\t//\t0,1,1,1, 1,0,1,0,\r\n\t\t//],8),\r\n\t],inf).coin.not,\r\n\t\\dur, 1/2,\r\n\t\\amp, 0.1\r\n));\r\n\r\nPdef(\\bass2, Pbind(\\instrument, \\bass2) <> Pdef(\\bass));\r\nPdef(\\bass3, Pbind(\\instrument, \\bass3) <> Pdef(\\bass));\r\n\r\n\r\n)\r\n\r\n\r\n\t/////////////////////////////////////////// START\r\n\r\n\r\n(\r\nTdef(\\main, {\r\n\tvar p1;\r\n\t// intro\r\n\r\n\tPdef(\\perc, Ppar([\r\n\t\tPdef(\\kick1),\r\n\t\tPdef(\\kick2),\r\n\t\tPdef(\\snare),\r\n\t\tPdef(\\snare2),\r\n\t\tPdef(\\hat2),\r\n\t])).play;\r\n\r\n\t8.wait;\r\n\tPdef(\\dru).play;\r\n\t16.wait;\r\n\tPdef(\\bass).play;\r\n\t32.wait;\r\n\r\n\t// break\r\n\r\n\tPdef(\\perc).stop;\r\n\t16.wait;\r\n\r\n\t// no bass\r\n\r\n\tPdef(\\bass).stop;\r\n\tPdef(\\perc).play;\r\n\t16.wait;\r\n\r\n\t// part 2\r\n\r\n\tPdef(\\bass3).play;\r\n\t(32).wait;\r\n\r\n\t// only modified piano\r\n\r\n\tPdef(\\perc).stop;\r\n\tPdef(\\bass3).stop;\r\n\tPdef(\\hat2).play;\r\n\tPdef(\\dru).set(\\out, BusDef(\\null, \\audio));\r\n\r\n\tPdef(\\dru2).play;\r\n\t8.wait;\r\n\r\n\t// part 1\r\n\r\n\tPdef(\\dru2).stop;\r\n\tPdef(\\hat2).stop;\r\n\r\n\tPdef(\\dru).set(\\out, 0);\r\n\tPdef(\\perc).play;\r\n\tPdef(\\bass).play;\r\n\t32.wait;\r\n\r\n\t// only bass\r\n\r\n\tPdef(\\perc).stop;\r\n\tPdef(\\dru).set(\\out, BusDef(\\null, \\audio));\r\n\tPdef(\\bass).stop;\r\n\r\n\tPdef(\\bass3).play;\r\n\t16.wait;\r\n\r\n\t// return of piano\r\n\r\n\tPdef(\\bass3).stop;\r\n\r\n\tPdef(\\bass2).play;\r\n\tPdef(\\perc).play;\r\n\tPdef(\\dru).set(\\out, 0);\r\n\t64.wait;\r\n\r\n\t// break 2\r\n\tPdef(\\bass2).stop;\r\n\tPdef(\\perc).stop;\r\n\t32.wait;\r\n\r\n\t// part 3\r\n\tPdef(\\perc).play;\r\n\tPdef(\\bass3).play;\r\n\t64.wait;\r\n\r\n\t// end\r\n\tPdef(\\bass3).stop;\r\n\tPdef(\\perc).stop;\r\n\t32.wait;\r\n}).play\r\n)\r\n\r\n)",
   "id" : "1-50Y",
   "is_private" : null
}
