Strudelify

Clones (We're All)

The Smashing Pumpkins

KeyG majorTempo130 bpm
0:00/0:00
// Clones (We're All) — The Smashing Pumpkins
// 130 bpm, 4/4, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: Full arrangement: all 84 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(130/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · [...]/2 spreads a riff over 2 bars.
// A part's distinct bars are riffs (A, B, C...) played in order: edit a riff to change every repeat.

// chords · overdriven guitar
const overdriven_guitar = note(`<
  ~@4 A B A B A B A C A B A@2 D E A B D F A B A B A C A B A@2 D E A B D F A B G@16 A B A C A B A@2 D E A B D F A B D E A
  B D F A B H@2 I@2
>`.pickRestart({
  A: "[g2,d3,g3]@2 [g2,d3,g3]@2 g2 ~ g2 ~ g2 ~ g2 ~ g2 ~ [f2,c3,f3]@2", // G5 F5
  B: "[g2,d3,g3]@2 [g2,d3,g3]@2 g2 ~ g2 ~ g2 ~ g2 ~ g2 ~ g2 ~", // G5
  C: "[c3,g3,c4]@2 [c3,g3,c4]@2 g2 ~ g2 ~ g2 ~ g2 ~ g2 ~ g2 ~", D: "[c3,g3,c4]!7 [d3,a3,d4]", E: "[d3,a3,d4]!8",
  F: "[b2,f#3,b3]!8", G: "[g2,d3] [b2,f#3] [c3,g3] [g2,d3] [d3,a3] [g2,d3] [b2,f#3] [g2,d3]",
  H: "[[c3,g3,c4]@2 [c3,g3,c4]@2 [c3,g3,c4]@2 [c3,g3,c4]@2 ~ [c3,g3,c4]@2 [c3,g3,c4]@2 [c3,g3,c4]@2 [d3,a3,d4]@2 ~ [d3,a3,d4]@2 [d3,a3,d4]@2 ~ [d3,a3,d4]@2 [d3,a3,d4]@2 ~ [d3,a3,d4]@2 [d3,a3,d4]@2]/2", // C5 D5
  I: "[~ [d3,a3,d4]@3 ~@2 [g2,d3,g3]@21 ~@5]/2", // D5 G5
})).s("gm_overdriven_guitar").gain(0.26)

// bass · electric bass finger
const bass = note(`<
  ~@4 A@7 B A@4 C D A@2 C E A@5 B A@4 C D A@2 C E A@21 B A@4 C D A@2 C E A@2 C D A@2 C E A@2 F@2 G@2
>`.pickRestart({
  A: "g1!2 ~@6", B: "c2!2 ~@6", C: "[c2,g2,c3]!7 [d2,a2,d3]", D: "[d2,a2,d3]!8", E: "[b1,f#2,b2]!8",
  F: "[[c2,g2,c3]@2 [c2,g2,c3]@2 [c2,g2,c3]@2 [c2,g2,c3]@2 ~ [c2,g2,c3]@2 [c2,g2,c3]@2 [c2,g2,c3]@2 [d2,a2,d3]@2 ~ [d2,a2,d3]@2 [d2,a2,d3]@2 ~ [d2,a2,d3]@2 [d2,a2,d3]@2 ~ [d2,a2,d3]@2 [d2,a2,d3]@2]/2", // C5 D5
  G: "[~ [d2,a2,d3]@3 ~@2 [g1,d2,g2]@21 ~@5]/2", // D5 G5
})).s("gm_electric_bass_finger").gain(0.26)

// chords · overdriven guitar
const overdriven_guitar_2 = note("<~@40 A B A B A B A B A B A B A B A B ~@28>".pickRestart({
  A: "[g2,d3,g3]!2 ~@5 [f2,c3,f3]", B: "[g2,d3,g3]!2 ~@6",
})).s("gm_overdriven_guitar").gain(0.26)

// drums · kick
const kick = s("bd").struct("<A B A@15 C A@3 C A@11 C A@3 C A@2 ~@16 A@9 C A@3 C A@3 C A@3 C A@2 D E F ~>".pickRestart({
  A: "x!2 ~ x!3 ~ x", B: "x!2 ~ x!3 ~@2", C: "x ~ x ~@3 x ~ x ~ x!2 ~@4", D: "x ~ x ~@3 x ~@2 x ~ x ~@3 x",
  E: "~@2 x ~ x ~@4 x ~@2 x ~ x ~", F: "x",
})).gain(0.26)

// drums · snare
const snare = s("sd").struct(`<
  [~ x ~ x]!40
  [x!2 ~@6]!4
  [x!3 ~@3 x ~]!12
  [~ x ~ x]!24
  [~@4 x ~@8 x ~@2]
  [~@7 x ~@8]
  [~ x ~@4 x ~@9]
  ~
>`).gain(0.26)

// drums · pedal hat
const pedal_hat = s("hh").struct(`<
  A@16 ~@2 A@2 ~@2 A@10 ~@2 A@2 ~@2 A@2 ~@16 A@8 ~@2 A@2 ~@2 A@2 ~@2 A@2 ~@2 A@2 ~@4
>`.pickRestart({
  A: "~@2 x!6",
})).gain(0.26)

// drums · open hat
const open_hat = s("oh").struct(`<
  A@16 B@2 A@2 B@2 A@10 B@2 A@2 B@2 A@2 ~@16 A@8 B@2 A@2 B@2 A@2 B@2 A@2 B@2 A@2 C D ~@2
>`.pickRestart({
  A: "x!2 ~@6", B: "x!8", C: "x ~ x ~ x ~ x ~@2 x ~ x ~ x ~ x", D: "~@2 x ~ x ~@2 x ~ x ~@2 x ~ x ~",
})).gain(0.26)

// drums · china
const china = s("cr").struct("<~@40 [x!2 ~@6]!16 ~@26 [~@3 x ~@4] ~>").gain(0.26)

stack(overdriven_guitar, bass, overdriven_guitar_2, kick, snare, pedal_hat, open_hat, china)

More by The Smashing Pumpkins