Snap Hand Cleaner

# SnapHandCleaner


fibo = 1.618034

fibodiv = 1/fibo

fibobpm = 55/fibodiv

#fibobpm = 69

use_bpm fibobpm

live_loop :bietje do
  sleep 8
  
end



with_fx :distortion, mix: rrand(0.06,0.12) do
  with_fx :nrhpf, mix: rrand(0.05,0.08) do
    
    live_loop :bassorumpu1, sync: :bietje do
      sample [:bd_haus,:bd_gas,:bd_tek].choose, amp: rrand(0.5,2.9)
      sleep 1
    end
    
    sleep 16
    
    live_loop :bassorumpu2, sync: :bietje do
      sample :elec_hollow_kick, amp: rrand(1.5,4), release: rrand(2,4)
      sleep 2
    end
    
    sleep 24
    
    live_loop :luuppibiitti, sync: :bietje do
      s = 8
      sample :loop_compus, beat_stretch: s, amp: rrand(0.6,2.8)
      sleep s
    end
    
    sleep 8
    
    live_loop :bassoraita, sync: :bietje do
      use_synth [:piano,:prophet,:tech_saws, :fm].choose
      use_synth_defaults release: rrand(0.05, 0.25), amp: rrand(1.5, 2.9)
      with_fx :reverb, mix: rrand(0.2,0.5) do
        
        #nuotit = (ring 8,13, :r, 21,34, :r, 55)
        
        nuotit = (ring :C2, :C3, :r, :Eb3, :r, :G2, :Bb2, :r)
        
        play nuotit.tick, cutoff: rrand(70, 130)
      end
      sleep [0.25,0.5,0.75].choose
    end
    
    sleep 16
    
    live_loop :hihat, sync: :bietje do
      sample :drum_cymbal_pedal, amp: rrand(0.2,2.6), release: rrand(0.25,1.8)
      sleep [0.25,0.5,0.75,1].choose
    end
    
    sleep 24
    
    live_loop :virveli, sync: :bietje do
      sleep [0.5,0.75,1].choose
      with_fx :bpf, mix: rrand(0.2,0.7) do
        sample :perc_snap2, amp: rrand(1.5,2.5), attack: rrand(0.02,0.25), release: rrand(0.1,0.25)
      end
      sleep [0.5,0.75,1].choose
    end
    
    sleep 8
    
    live_loop :syna1, sync: :bietje do
      use_synth [:fm,:dark_ambience, :blade, :piano].choose
      use_synth_defaults amp: rrand(0.5,1.2), attack: rrand(0.5,8), release: rrand(1.5,5)
      with_fx :hpf, phase: rrand(2,6), mix: rrand(0.01,0.5) do
        play [:C4, :Eb4, :r, :G4, :Bb4].ring.tick, pan: rrand(-0.95, 0.95)
        sleep 13
      end
    end
    
    sleep 16
    
    live_loop :syna2, sync: :bietje do
      use_synth [:fm,:prophet].choose
      use_synth_defaults amp: rrand(0.5,1.2), attack: rrand(0.5,3), release: rrand(1.5,5)
      with_fx :ixi_techno, phase: rrand(2,6), mix: rrand(0.01,0.5) do
        play [:C4, :Eb4, :r, :G4, :Bb4].ring.tick, pan: rrand(-0.95, 0.95)
        sleep 8
      end
    end
    
    live_loop :syna3, sync: :bietje do
      use_synth [:tech_saws,:prophet].choose
      use_synth_defaults amp: rrand(0.5,1.2), attack: rrand(0.5,3), release: rrand(1.5,4)
      with_fx :gverb, phase: rrand(2,6), mix: rrand(0.01,0.5) do
        play [:C4, :Eb4, :r, :G4, :Bb4].ring.tick, pan: rrand(-0.95, 0.95)
        sleep 5
      end
    end
    
    sleep 16
    
    live_loop :syna4, sync: :bietje do
      use_synth [:tb303,:blade,:dark_ambience, :pluck, :tech_saws, :prophet].choose
      use_synth_defaults amp: rrand(0.5,1.1), attack: rrand(5,8), release: rrand(8,13)
      with_fx :bpf, phase: rrand(2,4), mix: rrand(0.01,0.5) do
        play [:C4, :Eb4, :r, :G4, :Bb4].ring.tick, pan: rrand(-0.89, 0.89)
        sleep 21
      end
    end
    
  end
end

sleep 34

with_fx :ixi_techno do
  live_loop :needleArp, sync: :bietje do
    t = Time.now.to_i
    use_random_seed t
    synth :bnoise, note: rrand_i(55, 89), attack: dice, release: dice, mod_phase: rrand(0.125, 0.35), amp: rrand(0.25,0.69), pulse_width: rrand(0.125,0.25), pan: rrand(-0.89, 0.89)
    t += rrand_i(1, 4)
    use_random_seed t
    sleep 34
  end
end

3 Likes
4 Likes

This is wonderful! Thank you for sharing.

1 Like

Same code…different bpm’s…and a gverb fx…