// Techno setcpm(132/4) const n = note // Samples samples({ kick: 'Drums/Kicks/Kick - Crrisis.wav', closedHat: 'Drums/closedHiHats/Ghosthack CH 4.wav', backsnare: 'Drums/Snares/Techno Snare 04.wav', snare: 'Drums/Snares/BK-72 - 909 ish.wav', bassF: 'Bass/Lili Bass/Lili Bass F.wav' }, 'https://cdn.lupinexmedia.de/samples/') // Group Muting const drumMute = 33 * 0 const bassMute = 33 * 0 const instMute = 33 * 0 const vocMute = 33 * 0 // Velocity (Volume Changer, Mixer) const masterVolume = slider(1, 0, 1) // Master Volume (Postgain) const drumGroupGain = slider(1, 0, 1) // Group Volume (Drums, Gain) const bassGroupVolume = slider(1, 0, 1) // Group Volume (Bass, Gain) const instGroupVolume = slider(1, 0, 1) // Group Volume (Instrument, Gain) const vocalGroupVolume = slider(1, 0, 1) // Group Volume (Vocals, Gain) const kickVelo = slider(0.8, 0, .8) // Volume (Kick) const chVelo = slider(0, 0, .8) // Volume (closed HiHat) const backSnareVelo = slider(0, 0, 1) // Volume (Backsnare) const snareVelo = slider(0, 0, .8) // Volume (Snare) const mainBassVelo = slider(0.8, 0, .8) // Volume (mainBass) // Intrument Roll stack( // Drums stack( s("kick") .velocity(kickVelo) // Volume .fast(4) // Time Modifiers .cutoff(rand.range(450,550)), // Effects s("closedHat") .velocity(chVelo) // Volume .late(1.5) .every(16,x=>x.fast(16)) .fast(4) .cutoff(1600), // Time Modifiers s("backsnare") .velocity(backSnareVelo) // Volume .late(0.25) .fast(2) .speed(-1) // Time Modifiers .cutoff(500), // Effects s("snare") .velocity(snareVelo) // Volume .late(1.5) .fast(2) // Time Modifiers .cutoff(1500) // Effects ).gain(drumGroupGain).cpm(drumMute).degradeBy(.1)._punchcard(), // Bass stack( s("bassF") .velocity(mainBassVelo) // Volume .late(1.5) .every(4,x=>x.fast(2)) .every(16, x => x.fast(6)) .fast(4) // Time Modifiers .cutoff(rand.range(900,1050)) .room(.1) // Efects ).gain(bassGroupVolume).cpm(bassMute)._scope(), // Instruments stack( ).gain(instGroupVolume).cpm(instMute)._pianoroll(), // Vocals stack( ).gain(vocalGroupVolume).cpm(vocMute)._scope() ).postgain(masterVolume)