WCCC_Chaos&Spirals

DanceAsSpirallingChaos

For this week's Creative Code challenge by @sableraph : “Chaos (But Also Spirals)”, DanceAsSpirallingChaos is visually coded and layered with Locomotion Choreo code and Hydra’s glitchiness to showcase a chaotic spiral routine. The audio is coded in SonicPi that was made for Drone Day 2025.

Poem

Chaos and Spirals
Spirals that are vital
To the essence
Of the Chaotic
Flashyness,
Moments of aerobatic
That is
Chaos and Spirals

Video

Code

Locomotion


d n = dancer { url="dataGhost", ry = range -360 360 (osc 0.3), 
lz = range - 360 360 (osc 0.3),animation = [range 1 4 (osc 0.6), 1, 
range 8 16 (osc 0.6),2 , 1], size =  ((n +8)/12 * 2) , y = ((n +8)/12 * 2),
rx =  step [-3,5,1], z = range -15 15 (phase 1 (n/50) * 2 + (-2)),ry = n * 23.7,dur = 16 , rz = n * 23.7,dur = 16 };

for [0..15] d;

e n = dancer { url="ordroid", ry = range -360 360 (osc 0.3), 
lz = range - 360 360 (osc 0.3),animation = [range 1 4 (osc 0.6), 1, 
range 8 16 (osc 0.6),2 , 1], size =  ((n +8)/12 * 2) , y = ((n +8)/12 * 2),
rx =  step [-3,5,1], z = range -15 15 (phase 1 (n/50) * 2 + (-2)),ry = n * 23.7,dur = 16 , rz = n * 23.7,dur = 16 };

for [0..15] e;

Hydra


s0.initScreen()


src(s0).modulateRotate(src(s0).repeat(3).kaleid([3,2,1,2,3])).mult(src(s0).diff(osc(20.273, 0.001, 0.541)).rotate(1.036)).pixelate([200,400],[400,800,1600,1000]).blend(s0, 0.799).scrollX(0.1,0.1).modulateScale(src(s0).scale(3, () => 1.05 + 0.1 * Math.sin(0.088 * time))).out(o0);


frame = 30

speed = 0.5

SonicPi

def magic(timer, x,sust,sleeper)
  live_loop :changeGameTunes do
    use_random_seed Time.now.to_i * timer
    use_bpm  x.choose
    with_fx [:ping_pong,:wobble,:gverb].tick, mix: 0.65 do
      with_fx :ixi_techno , mix: [0.6,0.3,0.1].tick do
        with_fx :reverb, mix: 0.7, pre_mix: 0.4 do
          with_fx :vowel, voice: dice(4), mix: 0.25 do
            synth [:pretty_bell,:piano,:hollow,:piano,:chiplead].choose if spread(3,8).mirror.shuffle
            play scale([4,12,38,46,11,29,66,21].choose, [:minor,:major].tick), sustain: sust
            sleep sleeper
          end
        end
      end
    end
  end
end


magic(2,[120,120,120,90,90,30],dice(5),[1,2,4].choose)
magic(4,[12,12,10,9,24],[1,2,4].tick,[0.5,1,2,4,8].choose)
0
Subscribe to my newsletter

Read articles from Kofi / Illestpreacha directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Kofi / Illestpreacha
Kofi / Illestpreacha