Strudelify

Sean Olsen

Korn

KeyA majorTempo65 bpm
0:00/0:00
// Sean Olsen — Korn
// 65 bpm, 4/4, key A major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Full arrangement: all 20 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
// note: Guitar parts that double another keep only their own notes (fills, solos): Guitar.
setcpm(65/4)

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

// bass · distortion guitar · "Guitar"
const bass = note("<~@4 A B A B A B A B A B A B A B A B>".pickRestart({
  A: "a1 ~ a1 ~ e2 a1!2 e2 ~ a1!2 ~ e2 a1!2 e2", B: "a1 ~ a1 ~ e2 a1!2 e2 ~ a1!2 ~ e2 a1 a#1@2",
})).s("gm_distortion_guitar").gain(0.4)

// bass · slap bass 1 · "Bass"
const bass_2 = note("<~@4 A B A B A B A B A B A B A C D C>".pickRestart({
  A: "a0 ~ a0 ~ e1 a0!2 e1 ~ a0!2 ~ e1 a0!2 e1", B: "a0 ~ a0 ~ e1 a0!2 e1 ~ a0!2 ~ e1 a0 a#0@2",
  C: "a1 ~ a1 ~ e2 a1!2 e2 ~ a1!2 ~ e2 a1 a#1@2", D: "a1 ~ a1 ~ e2 a1!2 e2 ~ a1!2 ~ e2 a1!2 e2",
})).s("gm_slap_bass_1").gain(0.8)

// drums · kick
const kick = s("bd").struct(`<
  [x ~ x ~@2 x!2 ~@2 x!2 ~@2 x!2 ~]!3
  [x ~ x ~@2 x!2 ~@9]
  [x ~ x ~@2 x!2 ~@2 x!2 ~@2 x!2 ~]!16
>`).gain(0.63)

// drums · snare
const snare = s("sd").struct("<[~@4 x ~@2 x ~@4 x ~@2 x]!3 [~@4 x ~@2 x ~@8] [~@4 x ~@2 x ~@4 x ~@2 x]!16>").gain(0.63)

// drums · open hat
const open_hat = s("oh").struct("<[x!8]!3 [x!4 ~@4] [x!8]!16>").gain(0.63)

stack(bass, bass_2, kick, snare, open_hat)

More by Korn