Strudelify

My Generation

Limp Bizkit

KeyC minorTempo209 bpm
0:00/0:00
// My Generation — Limp Bizkit
// 209 bpm, 4/4, key C minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 48 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(209/4)

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

// bass · electric bass finger · "drummix"
const bass = note("<~@18 A B A C A B A C A B A C A B A C ~@4 D E D E D E D E D E>".pickRestart({
  A: "c1@2 c1@2 ~@4 c1 ~ c1@2 ~@4", B: "eb1@3 ~ c1 ~ c1@2 eb1@4 c1@3 ~", C: "eb1@4 c1 ~ eb1@4 c1@2 eb1@3 ~",
  D: "c1 ~ c1@2 ~@8 c1 ~ c1@2", E: "~@6 c1 ~ c1@5 ~@3",
})).s("gm_electric_bass_finger").gain(0.8)

// chords · overdriven guitar
const overdriven_guitar = note("<~@18 A B A C A B A C A B A C A B A C D E D F D E D E D E D E D E>".pickRestart({
  A: "[c3,g3,c4]!2 ~@2 [c3,g3,c4]!2 ~@2", B: "[eb3,bb3,eb4]@2 [c3,g3,c4]!2 [eb3,bb3,eb4]@2 [c3,g3,c4]@2",
  C: "[eb3,bb3,eb4]@2 [c3,g3,c4] [eb3,bb3,eb4]@2 [c3,g3,c4] [eb3,bb3,eb4]@2", // Eb5 C5 Eb5 C5 Eb5
  D: "e3 ~ e3 ~ [b3,e4]@4 [b3,e4]@3 ~ e3 ~ e3 ~", E: "[b3,e4]@4 [b3,e4]@3 ~ e3 ~ e3 ~ [b3,e4]@4",
  F: "[b3,e4]@4 [b3,e4]@3 ~ e3 ~ e3 ~ [b3,e4] ~@3", // E5
})).s("gm_overdriven_guitar").gain(0.72).pan(0.7)

// drums · kick
const kick = s("bd").struct(`<
  ~@2 A B A B A B A B C D C D C D C E C D C D C D C D C D C D C D C F ~@3 G H I H I H I H I H I
>`.pickRestart({
  A: "x ~@6 x", B: "~ x ~@2", C: "x!2 ~ x ~ x ~ x", D: "x ~ x!2 ~ x ~ x", E: "x", F: "x ~ x!2 ~@3 x", G: "~@3 x",
  H: "x!2 ~@4 x!2", I: "~@3 x ~@4",
})).gain(0.72)

// drums · snare
const snare = s("sd").struct("<~@10 A@7 ~ A@15 B ~@3 C A D A D A D A E A D>".pickRestart({
  A: "~ x", B: "~@4 x!2 ~@2", C: "~@7 x", D: "~@4 x ~@2 x", E: "~ x ~@2 x ~@2 x",
})).gain(0.8)

// drums · hihat
const hihat = s("hh").struct("<[x!4] ~@33 [x!4]!14>").gain(0.56)

// drums · hihat · soft notes
const hihat_soft = s("hh").struct("<~@34 [~ x ~ x ~ x ~ x]!14>").gain(0.32)

// drums · open hat
const open_hat = s("oh").struct("<~@2 [x!4]!15 x [x!4]!16 ~@14>").gain(0.64)

// drums · crash
const crash = s("cr").struct("<~@2 A B A B A B A B ~@7 C@2 ~@7 C ~@19 D ~>".pickRestart({
  A: "x ~@6 x", B: "~ x ~@2", C: "x", D: "x!2 ~@2",
})).gain(0.72)

stack(bass, overdriven_guitar, kick, snare, hihat, hihat_soft, open_hat, crash)

More by Limp Bizkit