{
   "labels" : [
      "kick",
      "gabber",
      "bassdrum"
   ],
   "code" : "/// Kicks and Bassdrums\r\n\r\n\r\n///SinOsc Kick\r\n\r\n(\r\n\tSynthDef(\"kicksin\", {\r\n\targ\r\n\tpitchkick=40, pitchrel=0.17, pitchmod=5, pitchcrv=(-7),\r\n\r\n\t                             amprel=0.76, ampcrv=(-2),amposc=1,\r\n\r\n\t                                     clickrel=0.18, clickamp=0.31,clickcrv=(-9),\r\n\r\n\t                                                     dist=4, pan=(0),amp=0.41, out=0;\r\n\r\n\t\tvar env0, env1, envclick, click, sig;\r\n\r\n\t\t\tenv0 = EnvGen.kr(Env.perc(0.01,amprel,amposc,ampcrv), doneAction:2);\r\n\r\n\t\tenv1 = EnvGen.kr(Env.perc(0.01,pitchrel,pitchmod,pitchcrv),1,1,1);\r\n\r\n\t\t\tenvclick=EnvGen.kr(Env.perc(0.0001,clickrel,clickamp,clickcrv));\r\n\r\n\t\t\tclick = LPF.ar(WhiteNoise.ar(1),((env1/pitchmod)*10000)+40,envclick);\r\n\r\n\t\tsig = click + SinOsc.ar(env1*pitchkick, pi/2, env0);\r\n\r\n\tsig = LeakDC.ar(sig,0.996);\r\n\r\n\tsig = (sig*dist).tanh;\r\n\r\n\tsig = Pan2.ar(sig,pan,amp);\r\n\r\n\tOut.ar(out,sig);\r\n\r\n}).play;\r\n)\r\n\r\n///TriOsc Kick\r\n\r\n(\r\n\tSynthDef(\"kicktri\", {\r\n\targ\r\n\tpitchkick=49, pitchrel=0.17, pitchmod=4, pitchcrv=(-7),\r\n\r\n\t                             amprel=0.66, ampcrv=(-3),amposc=1,\r\n\r\n\t                                     clickrel=0.28, clickamp=0.41,clickcrv=(-8),\r\n\r\n\t                                                     dist=4, pan=(0),amp=0.41, out=0;\r\n\r\n\t\tvar env0, env1, envclick, click, sig;\r\n\r\n\t\t\tenv0 = EnvGen.kr(Env.perc(0.01,amprel,amposc,ampcrv), doneAction:2);\r\n\r\n\t\tenv1 = EnvGen.kr(Env.perc(0.01,pitchrel,pitchmod,pitchcrv),1,1,1);\r\n\r\n\t\t\tenvclick=EnvGen.kr(Env.perc(0.0001,clickrel,clickamp,clickcrv));\r\n\r\n\t\t\tclick = LPF.ar(WhiteNoise.ar(1),((env1/pitchmod)*10000)+40,envclick);\r\n\r\n\t\tsig = click + LFTri.ar(env1*pitchkick, 1, env0);\r\n\r\n\tsig = LeakDC.ar(sig,0.996);\r\n\r\n\tsig = (sig*dist).tanh;\r\n\r\n\tsig = Pan2.ar(sig,pan,amp);\r\n\r\n\tOut.ar(out,sig);\r\n\r\n}).play;\r\n)\r\n\r\n\r\n///Square Kick\r\n\r\n(\r\n\tSynthDef(\"kicksqr\", {\r\n\targ\r\n\tpitchkick=49, pitchrel=0.23, pitchmod=3, pitchcrv=(-7),\r\n\r\n\t                             amprel=1.26, ampcrv=(-3),amposc=1,\r\n\r\n\t                                     clickrel=0.38, clickamp=0.71,clickcrv=(-8),\r\n\r\n\t                                                     dist=2, pan=(0),amp=0.71, out=0;\r\n\r\n\t\tvar env0, env1, envclick, click, sig;\r\n\r\n\t\t\tenv0 = EnvGen.kr(Env.perc(0.01,amprel,amposc,ampcrv), doneAction:2);\r\n\r\n\t\tenv1 = EnvGen.kr(Env.perc(0.01,pitchrel,pitchmod,pitchcrv),1,1,1);\r\n\r\n\t\t\tenvclick=EnvGen.kr(Env.perc(0.0001,clickrel,clickamp,clickcrv));\r\n\r\n\t\t\tclick = LPF.ar(WhiteNoise.ar(1),((env1/pitchmod)*10000)+40,envclick);\r\n\r\n\t\tsig = click + LFPulse.ar(env1*pitchkick, 0.5,0.5,env0);\r\n\r\n\tsig = LPF.ar(sig,pitchkick*((env0**3*225)+1));\r\n\r\n\tsig = LeakDC.ar(sig,0.996);\r\n\r\n\tsig = (sig*dist).tanh;\r\n\r\n\tsig = Pan2.ar(sig,pan,amp);\r\n\r\n\tOut.ar(out,sig);\r\n\r\n}).play;\r\n)\r\n\r\n\r\n///Para Kick\r\n(\r\n\tSynthDef(\"kickpara\", {\r\n\targ\r\n\tpitchkick=49, pitchrel=0.23, pitchmod=4, pitchcrv=(-7),\r\n\r\n\t                             amprel=0.91, ampcrv=(-5),amposc=1,\r\n\r\n\t                                     clickrel=0.11, clickamp=0.14,clickcrv=(-9),\r\n\r\n\t                                           dist=7, wet=0.5, pan=(0),amp=1, out=0;\r\n\r\n\t\tvar env0, env1, envclick, click, sig;\r\n\r\n\t\t\tenv0 = EnvGen.kr(Env.perc(0.001,amprel,amposc,ampcrv), doneAction:2);\r\n\r\n\t\tenv1 = EnvGen.kr(Env.perc(0.001,pitchrel,pitchmod,pitchcrv),1,1,1);\r\n\r\n\t\t\tenvclick=EnvGen.kr(Env.perc(0.0001,clickrel,clickamp,clickcrv));\r\n\r\n\tclick = LPF.ar(WhiteNoise.ar(0.71)+Crackle.ar(1.9,1),(11000*(((env1/pitchmod))**3)),envclick);\r\n\r\n\t\tsig = click + LFPar.ar(env1*pitchkick,2,env0);\r\n\r\n\tsig = LeakDC.ar(sig,0.996);\r\n\r\n\tsig = Balance2.ar(sig,(sig*dist).tanh/2,(wet*2)-1);\r\n\r\n\tsig = Mix.ar(sig/2);\r\n\r\n\tsig = Pan2.ar(sig,pan,amp);\r\n\r\n\tOut.ar(out,sig);\r\n\r\n}).play;\r\n)",
   "id" : "1-5im",
   "is_private" : null,
   "author" : "Bernhard Zitz",
   "name" : "oscillator based kickdrums",
   "description" : "oscillator based kickdrums. Yes I like distortion on kickdrums :)",
   "ancestor_list" : []
}
