Strudelify

Falling Away From Me

Korn

KeyA minorTempo104 bpm
0:00/0:00
// Falling Away From Me — Korn
// 104 bpm, 4/4, key A minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: ch 4 "Effects for Guitar" named as a guitar, played on electric guitar clean (its ocarina patch is not one)
// note: ch 5 "Bass Drum" (taiko drum patch on one pitch) is played as the kit's kick
// note: duplicate parts dropped: ch 4 "Effects for Guitar" electric guitar clean (copy of ch 1 "Guitar" electric guitar clean)
// note: Full arrangement: all 107 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(104/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · "a, b" plays two voices at once · [...]/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 · electric guitar clean · "Guitar"
const electric_guitar_clean = note("<A@8 ~@8 A@8 ~@4 A@8 ~@8 A@8 B@4 ~@20 A@8 ~@23>".pickRestart({
  A: "[~ f5@2 ~@14 f5@2 ~@8 b4@5 ~ f5@2 ~@14 f5@2 ~@8 b4@5, d5@5 c5@11 d5@5 c5@6 ~@5 d5@5 c5@11 d5@5 c5@6 ~@5, ~@3 e5@6 e5@8 ~@2 e5@6 e5@8 ~@2 e5@6 e5@8 ~@2 e5@6 e5@7, ~@7 a4@16 a4@16 a4@16 a4@9]/8",
  B: "[~ f5@2 ~@14 f5@2 ~@8 b4@5, d5@5 c5@11 d5@5 c5@6 ~@5, ~@3 e5@6 e5@8 ~@2 e5@6 e5@7, ~@7 a4@16 a4@9]/4",
})).s("gm_electric_guitar_clean").gain(0.31)

// chords · distortion guitar · "Guitar"
const distortion_guitar = note("<~@68 A B C D E F G H@8 ~@16 I@8>".pickRestart({
  A: "e4 [b3,e4]", B: "[g3,c4,e4]@3 ~", C: "[f#3,d4,e4]@3 [g3,c4,e4]@2 [g3,b3,e4]@3", D: "[f3,c4,e4]@3 ~",
  E: "e4 [b3,d4]", F: "[g3,d4]@3 ~", G: "[f3,d4]@3 [f3,d4]", H: "e3/8", I: "[e2@127 ~]/8",
})).s("gm_distortion_guitar").gain(0.31)

// chords · distortion guitar · "Guitar II"
const distortion_guitar_2 = note(`<
  ~@7 A B@7 C ~ D E D E D E F B@3 G D E D E D E D E H I H J H I H K ~@12 H I H J H I H J L@4 M N M N M N M N M N M N M N
  M O B@7 H I H P H I H P M N M N M N Q@2
>`.pickRestart({
  A: "[a1,a2]@12 [a1,a2]@3 [a1,a2]", // A
  B: "[d#2,d#3,d4]@2 [a1,a2]@2 [a1,a2] [d#2,d#3,d4]@3 [d#2,d#3,d4]@2 [a1,a2]@2 [a1,a2]@3 [a1,a2]", // D#maj7 A D#maj7 A
  C: "[d#2,d#3,d4]@2 [a1,a2]@2 [a1,a2] [d#2,d#3,d4]@3 [d#2,d#3,d4]@2 [a1,a2]@2 [a1,a2]@4", D: "~@2 g#4!14",
  E: "g#4!2 g#4@2 g#4@4 ~@8", F: "~@15 [a1,a2]",
  G: "[d#2,d#3,d4]@2 [a1,a2]@2 [a1,a2] [d#2,d#3,d4]@2 ~ [d#2,d#3,d4]@2 [a1,a2]@2 [a1,a2]@3 [a1,a2]", // D#maj7 A D#maj7 A
  H: "[a1,e2,a2] [e2,b2,e3]", I: "[c2,g2,c3]@12 [a#1,f2,a#2] [a#1,f2,a#2]@3",
  J: "[c2,g2,c3]@10 ~@2 [d#2,a#2,d#3] [d#2,a#2,d#3]@3", K: "[c2,g2,c3]@10 ~@2 [d#2,a#2,d#3]!4", L: "[a1,e2,a2]",
  M: "[g#3,a3]!4 g#3!4 [g#3,a3]!8", N: "[g#3,a3]!4 g#3!8 [g#3,a3]!4", O: "[g#3,a3]!4 g#3!8 [g#3,a3]!3 [a1,a2]",
  P: "[c2,g2,c3]@12 [d#2,a#2,d#3] [d#2,a#2,d#3]@3", Q: "[[g#3,a3]!4 g#3!4 [g#3,a3]!7 [g#3,a3]@16 ~]/2",
})).s("gm_distortion_guitar").gain(0.27)

// bass · electric bass finger · "Bass (fingered)"
const bass = note(`<
  ~@7 A B@8 C D C D C E C F B@3 G C D C D C E C F H I H J H I H J C D C D C E C D C D C D H I H J H I H J K@4 L M N O N
  P Q R H S H T H S K U B@6 V H I H J H I H J K@5 W ~@2
>`.pickRestart({
  A: "~@15 a0", B: "d#1@2 a0@2 a0 d#1@2 ~ d#1@2 a0@2 a0@3 a0", C: "a0@2 a0@2 ~@3 a0 a0@2 a0@2 ~@3 a0",
  D: "a0@2 a0@2 ~@3 a0 a#0@2 a0@2 c1@4", E: "a0@2 a0@2 ~@3 a0 a#0@2 a0@2 a#2@4",
  F: "a0@2 a0@2 ~@3 a0 a#0@2 a0@2 ~@3 a0", G: "d#1@2 a0@2 a0 d#1@2 ~ d#1@2 a0@2 a0@4", H: "a0 e1", I: "c1@12 a#0 a#0@3",
  J: "c1@12 d#1 d#1@3", K: "a0", L: "~@2 a2 e2 e2@2 a2@2", M: "~ a2@5 a2@2", N: "a2@2 a2 e2 e2@2 a2@2",
  O: "~@3 a2 a2@4", P: "a1 a2@3 a2@4", Q: "a2@2 ~ e2 e2@2 a2@2", R: "a1 a1@2 a2 a2@4", S: "c1@3 a#0", T: "c1@3 e1",
  U: "a0@3 ~", V: "d#1@2 a0@2 a0 d#1@2 ~ d#1@2 a0@2 a0@2 a0@2", W: "a0 ~",
})).s("gm_electric_bass_finger").gain(0.47)

// chords · overdriven guitar · "Drew Robbins"
const overdriven_guitar = note("<~@36 A B A B A B A B ~@47 A B A B A B A B A B A B A B A B>".pickRestart({
  A: "a3!4 [g#3,a3]!4", B: "a3!6 [g#3,a3]!2",
})).s("gm_overdriven_guitar").gain(0.64)

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

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

// drums · hihat
const hihat = s("hh").struct("<~@16 A@7 B ~@4 A@7 B ~@8 A@12 ~@8 C D@3 E@2 ~@37>".pickRestart({
  A: "x!8", B: "x!7 ~", C: "~ x", D: "x!2", E: "~ x ~@3 x ~@2",
})).gain(0.29)

// drums · open hat
const open_hat = s("oh").struct("<~@8 A@8 ~@8 A@4 ~@8 A@8 ~@12 A@8 ~@3 B A@8 C ~@7 A@15 ~@8>".pickRestart({
  A: "x!8", B: "~@7 x", C: "x",
})).gain(0.29)

// drums · crash
const crash = s("cr").struct("<~@8 A@8 ~@7 B A@4 ~@7 B C@8 ~@12 C@8 A ~@11 A ~@7 A@7 C@8 A ~@7>".pickRestart({
  A: "x", B: "~@3 x", C: "x!4",
})).gain(0.25)

stack(
  electric_guitar_clean, distortion_guitar, distortion_guitar_2, bass, overdriven_guitar, kick, snare, hihat, open_hat,
  crash
)

More by Korn