Strudelify

Pursuit Wanting To Find The Truth

Misc Soundtrack

KeyF minorTempo168 bpm
0:00/0:00
// Pursuit Wanting To Find The Truth — Misc Soundtrack
// 168 bpm, 4/4, key F minor. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: ch 7 "Electric Guitar" named as a guitar, played on electric guitar clean (its string ensemble 1 patch is not one); ch 1 "Electric Bass" named as a bass, played on electric bass finger (its pizzicato strings patch is not one); ch 9 "Baritone Guitar" named as a guitar, played on electric guitar clean (its orchestra hit patch is not one); ch 11 "Brass Synthesizer" named as a brass, played on synth brass 1 (its orchestra hit patch is not one)
// note: Transcription provider: pdmx. https://musescore.com/score/5904873; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 100 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(168/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.

// other · electric guitar clean · "Electric Guitar"
const electric_guitar_clean = note(`<
  ~@8 A B C@2 D@2 E F A B G@2 H@2 I J K@2 L@2 M@2 N@2 O@2 P Q R@2 S T U V W X W X W X Y Z ~@8 A B C@2 D@2 E F A B G@2
  H@2 I J K@2 L@2 M@2 N@2 O@2 P Q R@2 S T U V W X W X W X Y Z
>`.pickRestart({
  A: "ab5@3 g5@2 eb5@3", B: "c5@6 bb4 eb5", C: "[c5@9 ~@2 f4@3 c5@2]/2", D: "[bb4@3 eb5@3 g4@4 ab4@2 bb4@2 c5@2]/2",
  E: "c5", F: "c5@3 eb5@3 c5@2", G: "[c5@9 ~ c4@2 f4@2 c5@2]/2",
  H: "[eb5@6 g4@3 ~ g4@2 ab4@2 bb4@4 c5@2 bb4@2 ab4@4 g4@2 ab4@4]/2", I: "db4@2 ab4@2 g4@2 bb4 c5",
  J: "~@2 f3@2 g3@2 ab3@2 db4 eb4 f4 g4 ab4 bb4 c5 db5, ~@5 f3@3", K: "[eb5@5 eb5 f5 bb4, ab3]/2",
  L: "[c5@5 c5 eb5 g5, bb3]/2", M: "[g5@3 ab5 f5@6 eb5@2 c5@2 bb4@2, ab3]/2",
  N: "[bb4@3 ~ c4@4 g4@8, eb3 ~@3, ~@3 c5@13]/2", O: "[f4@3 f4 ~@2 f4@3 f4 ~@2 f4 ~ f4@2]/2", P: "eb4", Q: "c4",
  R: "d4 ~ d4 ~ d4 ~ d4 ~", S: "f4 ~ f4 ~ f4 ~ f4 ~", T: "e4 ~ e4 ~ e4 ~ e4 ~",
  U: "~@2 eb4!2 db4!2 c4!2 bb3!2 ab3!2 g3!2 c4!2", V: "~@2 c4@2 bb3 ~ c4@2 ab3@2 c4@2 g3@2 c4 ~",
  W: "f3!2 g3!2 ab3!2 bb3!2 g3!2 ab3!2 bb3!2 c4!2", X: "ab3!2 bb3!2 c4@2 d4@6 eb4@4",
  Y: "ab3!2 bb3!2 c4!2 d4!2 bb3!2 c4!2 d4!2 eb4!2", Z: "c4!2 d4!2 eb4@2 f4@6 eb5@3 eb5",
})).s("gm_electric_guitar_clean").gain(0.45)

// bass · electric bass finger · "Electric Bass"
const bass = note(`<
  A@5 B@2 C D@2 E@2 F G E H I G E@2 J K L M N O P Q R S T@2 U@2 V@2 W@2 F@2 X Y Z AA Z AB Z AC Z AD A@5 B@2 C D@2 E@2 F
  G E H I G E@2 J K L M N O P Q R S T@2 U@2 V@2 W@2 F@2 X Y Z AA Z AB Z AC Z AD
>`.pickRestart({
  A: "f2!8", B: "[f2!7 f2@2 f2!6 c3]/2", C: "~@3 c3 ~ c3 ~@2", D: "[f2!3 f2@2 f2!2 f2@2 f2!2 eb3@2 eb3!3]/2",
  E: "db3!3 db3@2 db3!3", F: "c3!3 c3@2 c3!3", G: "f3!3 eb3@2 eb3!3", H: "c3@4 ~@2 c3@3 ~ bb3 c4 f3 g3 c3@2",
  I: "f2@2 f2@2 f2@2 f2@4 f2@2 f2@2 bb2 c3", J: "c3!3 c3@2 c3 c3@2", K: "f3 c3 f3 eb3@2 eb3 eb3@2", L: "db3!4 eb3!3 f3",
  M: "~ f2 g2 ab2 ~ f2@2 f2", N: "db3@3 db3 db3@2 ab2 db3", O: "db3 ab3 g3 f3@2 db3 ab2 db3", P: "c3@3 c3 c3@2 g2 c3",
  Q: "c3 g2 bb2 c3@2 eb3 g3 ab3", R: "bb3@3 bb2@2 bb2 f2 bb2", S: "f2 bb2 c3 db3@2 c3 bb2@2",
  T: "[ab2@3 eb3@3 ab2 c4@2 bb3 ab3 eb3@2 ab2@2 ab2]/2", U: "[gb2@6 gb2 ~@3 gb2 ~ gb2@6 gb2 ~@3 gb2 ~ gb2@4 gb2@4]/2",
  V: "[f2@2 f2 f2@2 g2 a2 c3@2 c4 bb3 ab3 f3 eb3 c3 ab2]/2", W: "d3!3 d3@2 d3!3", X: "~ eb3 db3 c3 bb2 ab2 g2 c3",
  Y: "~ c3 bb2 c3 ab2 c3 g2 c3", Z: "f2 g2 ab2 bb2 g2 ab2 bb2 c3", AA: "ab2 bb2 c3 bb2@2 bb2 bb2@2",
  AB: "ab2@2 bb2@2 c3@2 bb2@3 ~ bb2@2 bb2@4", AC: "ab2 bb2 c3 bb2@2 bb2 c3!2", AD: "ab2 bb2 c3 bb2@2 c3 eb3@2",
})).s("gm_electric_bass_finger").gain(0.45)

// chords · lead 2 sawtooth · "Saw Synthesizer"
const lead_2_sawtooth = note(`<
  A@2 B@2 C@3 D ~@7 E F ~@2 G H@2 I J ~@8 K@2 L ~ M@2 N O ~@3 P Q P Q P Q P A@2 B@2 C@3 D ~@7 E F ~@2 G H@2 I J ~@8 K@2
  L ~ M@2 N O ~@3 P Q P Q P Q P
>`.pickRestart({
  A: "[[ab4,c5,f5]@3 [ab4,c5,f5] ~@2 [g4,bb4,eb5] ~@3 [eb4,g4,c5] ~@3 [f4,ab4,db5]@6 ~@2 [g4,bb4,eb5]@2 ~@8]/2", // Fm Eb Cm Db Eb
  B: "[[ab4,c5,f5]@3 [ab4,c5,f5] ~@2 [g4,bb4,eb5] ~@3 [c5,eb5,ab5] ~@3 [bb4,eb5,g5]@6 ~@2 [g4,bb4,eb5]@2 ~@8]/2", // Fm Eb Ab Eb
  C: "[[ab4,c5,f5]@3 [ab4,c5,f5] ~@2 [g4,bb4,eb5] ~@3 [eb4,ab4,c5] ~@3 [f4,ab4,db5]@6 ~@2 [g4,bb4,eb5]@2 ~@20 bb4@2 ~@2, ~@5 f3@3, ~@3 c4, ~@5 eb4]/3", // Fm Eb Ab Db Eb
  D: "~@6 [eb4,bb4,g5] ~@3 [eb4,bb4,g5]@6", E: "[bb4,eb5,g5]@2 ~@4 [bb4,eb5,g5] ~@3 [bb4,eb5,g5]@6",
  F: "[c5,f5,ab5] ~@3", G: "~ c4 f4 c5", H: "[bb4@3 g4 ~ g4 ab4 bb4@2 c5 bb4 ab4@2 g4 ab4@2]/2",
  I: "f4@2 [ab4,c5]@2 [g4,bb4]@2 [eb4,eb5] [f4,f5]", J: "~ [f4,f5]@3",
  K: "[[f4,c5]@6 [f4,bb4] ~@5 [f4,c5]@6 [f4,bb4] ~@5 [f4,c5]@2 ~@2 [f4,bb4]@2 ~@2]/2", L: "[f4,c5] ~@7",
  M: "[[c4,f4,c5]@6 [bb3,f4,bb4]@5 ~ [c4,f4,f5]@20]/2", N: "[bb3,f4,f5]", O: "[c4,g4,g5]",
  P: "~@6 [bb4,d5]@5 ~ [bb4,eb5]@4", Q: "[c5,f5] ~@7",
})).s("gm_lead_2_sawtooth").gain(0.45)

// other · electric guitar clean · "Baritone Guitar"
const electric_guitar_clean_2 = note(`<
  A ~ B C B@2 D@2 C E F G H I G J K E F G H I L@2 ~@8 M@2 C E N O P Q R S T U T U T U T V A ~ B C B@2 D@2 C E F G H I G
  J K E F G H I L@2 ~@8 M@2 C E N O P Q R S T U T U T U T V
>`.pickRestart({
  A: "f4@3 ~", B: "f2@2 f2@2 f2 ~ f2@2 f2@2 f2 ~ f2@2 f2 ~", C: "f2@2 f2@2 f2 ~ f2@2 f2@2 f2 ~ f2@2 f2@2",
  D: "[f2@2 f2@2 f2 ~ f2@2 f2@2 f2 ~ f2@2 c3 ~@5 c3@2 c3 ~ c3@2 c2@6, ~@14 c5@8 c5@4 c5@3 ~@3]/2",
  E: "f2@2 f2@2 f2 ~ eb3 ~ eb3@2 eb3 ~ eb3@2 eb3@2", F: "db3@2 db3@2 db3 ~ db3@2 db3@2 db3 ~ db3@2 db3 ~",
  G: "db3@2 db3@2 db3 ~ db3@2 db3@2 db3 ~ db3@2 db3@2", H: "c3@2 c3@2 c3 ~ c3@2 c3@2 c3 ~ c3@2 c3@2",
  I: "c3 ~ f3@2 c3 ~ eb3 ~ eb3@2 eb3 ~ eb3@2 eb3@2", J: "c3 ~ c3@2 c3@2 c3 ~ c3@2 [c2,c5]@6, c5@3 c5@2 ~@3",
  K: "f2@2 f2@2 f2 ~ f2@2 f2@2 f2 ~ f2@2 f2@2, f4@3 ~",
  L: "[db3@2 db3@2 db3 ~ db3@2 eb3 ~ eb3@2 eb3 ~ eb3 ~ c3@2 f1@2 g1@2 ab1@2 ab2@2 [f1,f4]@6, ~@7 f4@5 ~@4]/2", // F
  M: "[gb1@6 gb2 ~@3 gb2@2 gb1@6 gb2 ~@3 gb2@2 gb2@2 ~@2 gb1@4]/2", N: "d3@2 d3@2 d3 ~ d3@2 d3@2 d3 ~ d3@2 d3@2",
  O: "d3@2 d3@2 d3 ~ d3 ~ d3@2 d3 ~ d3@2 d3 ~", P: "c3@2 c3@2 c3 ~ c3@2 c3@2 c3 ~ c3@2 c3@2, c5!4",
  Q: "c3@2 c3@2 c3 ~ c3 ~ c3@2 c3 ~ c3@2 c3 ~, c5!4", R: "~ eb2 db2 c2 bb1 ab1 g1 c2",
  S: "~ c2 bb1 c2 ab1 c2 g1 [c2,c5]", T: "f2@2 f2@2 f2 ~ f2@2 f2@2 f2 ~ f2@2 f2 ~, f4@3 ~",
  U: "f2@2 f2@2 f2 ~ bb1@4 bb2@2 c3 ~ [c3,c5]@2", V: "f2@2 f2@2 f2 ~ bb1@4 bb2@2 c3 ~ c3@2",
})).s("gm_electric_guitar_clean").gain(0.4)

// other · string ensemble 1 · "Violins"
const string_ensemble_1 = note(`<
  A ~ A ~ A ~ B C ~@9 D E F G@2 H I J@2 K@2 L M N O P@2 Q R S T U V W X ~ Y Z AA AB AC AD AE A ~ A ~ A ~ B C ~@9 D E F
  G@2 H I J@2 K@2 L M N O P@2 Q R S T U V W X ~ Y Z AA AB AC AD AE
>`.pickRestart({
  A: "[ab4,f5] ~@7", B: "~@7 [bb4,g5]", C: "~@3 [bb4,g5] ~ [bb4,g5]@3", D: "eb6@3 db6@2 bb5@3", E: "c6@3 bb5@2 g5@3",
  F: "ab5", G: "[bb5@6 g5@3 ~ g5@2 ab5@2 bb5@4 c6@2 bb5@2 ab5@4 g5@2 ab5@4]/2", H: "f5@2 c6@2 bb5@2 eb6 f6",
  I: "~ f4 g4 ab4 ~ f4@3", J: "f4/2", K: "g4/2", L: "f4", M: "c5", N: "g4 c5", O: "eb5@8 ~ c5 d5 eb5 f5 g5 ab5 bb5",
  P: "[c6@6 bb5 ~@5 c6@6 bb5 ~@3 bb5@2 c6@4 bb5@4]/2", Q: "bb5@3 ab5@2 g5 ab5@2", R: "f5@3 g5@2 ab5 bb5@2",
  S: "c6!2 ab5!2 f5!2 c5!2 c6!2 bb5!2 f5!2 c5!2", T: "c6!2 ab5!2 f5!2 c5!2 c6!2 ab5!2 f5!2 c5!2",
  U: "c6!2 g5!2 f5!2 c5!2 c6!2 g5!2 f5!2 c5!2", V: "c6!2 g5!2 e5!2 c5!2 c6!2 g5!2 e5!2 c5!2",
  W: "~@2 eb6!2 db6!2 c6!2 bb5!2 ab5!2 g5!2 c6!2", X: "c6!3 ~@13", Y: "~@3 ab4@3 bb4@2",
  Z: "ab3!2 bb3!2 c4!2 d4!2 bb3!2 c4!2 d4!2 eb4!2", AA: "c4!2 d4!2 eb4@2 f4@6 g4@4",
  AB: "f4!2 g4!2 ab4!2 bb4!2 g4!2 ab4!2 bb4!2 c5!2", AC: "ab4!2 bb4!2 c5@2 d5@6 eb5@4",
  AD: "ab4!2 bb4!2 c5!2 d5!2 bb4!2 c5!2 d5!2 eb5!2", AE: "c5!2 d5!2 eb5@2 f5@6 eb6@3 eb6",
})).s("gm_string_ensemble_1").gain(0.45)

// other · string ensemble 1 · "Violas"
const string_ensemble_1_2 = note(`<
  ~@17 A B C D@2 E F G@2 H@2 I@2 J K L@2 M N O@2 P Q R S ~ T U V W X Y Z ~@17 A B C D@2 E F G@2 H@2 I@2 J K L@2 M N O@2
  P Q R S ~ T U V W X Y Z
>`.pickRestart({
  A: "c6@3 bb5@2 g5@3", B: "ab5@3 g5@2 eb5@3", C: "f5",
  D: "[g5@6 eb5@3 ~ eb5@2 f5@2 g5@4 ab5@2 g5@2 f5@4 eb5@2 f5@4]/2", E: "ab4@2 f5@2 eb5@2 g5 ab5",
  F: "~ ab3 bb3 c4 ~ ab3@3", G: "c4/2", H: "eb4/2", I: "db4/2", J: "c4 eb4", K: "c5@8 ~ c4 d4 eb4 f4 g4 ab4 bb4",
  L: "[c5@6 bb4 ~@5 c5@6 bb4 ~@3 bb4@2 c5@4 bb4@4]/2", M: "bb4@3 ab4@2 g4 ab4@2", N: "f4@3 g4@2 ab4 bb4@2",
  O: "ab5!2 f5!2 c5!2 ab4!2 ab5!2 f5!2 c5!2 ab4!2", P: "g5!2 f5!2 c5!2 g4!2 g5!2 f5!2 c5!2 g4!2",
  Q: "g5!2 e5!2 c5!2 g4!2 g5!2 e5!2 c5!2 g4!2", R: "~@2 eb5!2 db5!2 c5!2 bb4!2 ab4!2 g4!2 c5!2", S: "c5!3 ~@13",
  T: "~@3 f4@3 g4@2", U: "f3!2 g3!2 ab3!2 bb3!2 g3!2 ab3!2 bb3!2 c4!2", V: "ab3!2 bb3!2 c4@2 d4@6 eb4@4",
  W: "ab3!2 bb3!2 c4!2 d4!2 bb3!2 c4!2 d4!2 eb4!2", X: "c4!2 d4!2 eb4@2 f4@6 g4@4",
  Y: "f4!2 g4!2 ab4!2 bb4!2 g4!2 ab4!2 bb4!2 c5!2", Z: "ab4!2 bb4!2 c5@2 d5@6 eb5@3 eb5",
})).s("gm_string_ensemble_1").gain(0.45)

// other · string ensemble 1 · "Violoncellos"
const string_ensemble_1_3 = note(`<
  A ~ A ~ A ~ B C D E F@2 G@2 H I D E J@2 K@2 L M N@2 O@2 P@2 Q@2 R@2 S T U@2 V@2 W X Y Z Y Z Y Z AA AB A ~ A ~ A ~ B C
  D E F@2 G@2 H I D E J@2 K@2 L M N@2 O@2 P@2 Q@2 R@2 S T U@2 V@2 W X Y Z Y Z Y Z AA AB
>`.pickRestart({
  A: "f3 ~@7", B: "~@7 bb3", C: "~@3 bb3 ~ bb3 ~@2", D: "ab4@3 g4@2 eb4@3", E: "c4@6 bb3 eb4",
  F: "[c4@9 ~@2 f3@3 c4@2]/2", G: "[bb3@3 eb4@3 g3@4 ab3@2 bb3@2 c4@2]/2", H: "c4", I: "c4@3 eb4@3 c4@2",
  J: "[c4@9 ~ c3@2 f3@2 c4@2]/2", K: "[bb3@6 g3@3 ~ g3@2 ab3@2 bb3@4 c4@2 bb3@2 ab3@4 g3@2 ab3@4]/2",
  L: "f3@2 c4@2 bb3@2 eb3 f3", M: "~ f2 g2 ab2 ~ f2@3", N: "db3/2", O: "c3/2", P: "bb2/2", Q: "ab2/2",
  R: "[db3@6 db3@2 ~@4 db3@6 db3 ~@5 db3@2 ~@2 db3@4]/2", S: "f2", T: "f3 eb3", U: "ab3 ~ ab3 ~ ab3 ~ ab3 ~",
  V: "g3 ~ g3 ~ g3 ~ g3 ~", W: "~@2 eb3!2 db3!2 c3!2 bb2!2 ab2!2 g2!2 c3!2", X: "~ c3 bb2 c3 ab2 c3 g2 c3",
  Y: "f2!2 g2!2 ab2!2 bb2!2 g2!2 ab2!2 bb2!2 c3!2", Z: "ab2!2 bb2!2 c3@2 bb2@6 c3@4",
  AA: "f3!2 g3!2 ab3!2 bb3!2 g3!2 ab3!2 bb3!2 c4!2", AB: "ab3!2 bb3!2 c4@2 d4@6 eb4@4",
})).s("gm_string_ensemble_1").gain(0.45)

// other · synth brass 1 · "Brass Synthesizer"
const synth_brass_1 = note(`<
  A ~ A ~ A ~ B@2 A ~@6 C A ~@5 D@2 ~@16 E ~ A ~ A ~ A ~ A ~ A ~ A ~ A ~ B@2 A ~@6 C A ~@5 D@2 ~@16 E ~ A ~ A ~ A ~ A ~
>`.pickRestart({
  A: "f3 ~", B: "[~@7 c4@2 ~@2 c4 ~ c4@3]/2", C: "c4@3 c4 ~ c4@3", D: "[~@7 f3@5 ~ f3@3]/2", E: "c4 ~",
})).s("gm_synth_brass_1").gain(0.45)

// other · tremolo strings · "Violoncello"
const tremolo_strings = note("<A ~@5 B@3 ~@37 C@3 D A ~@5 B@3 ~@37 C@3 D>".pickRestart({
  A: "~ f5@7 ~@8, f4 ~", B: "[~@7 [bb4,eb5]@2 ~@2 [bb4,eb5] ~ [bb4,eb5]@4 ~@7]/3",
  C: "f3 ~ f4 ~ f5 ~ f4 ~ f3 ~ f4 ~ f5 ~ f4 ~", D: "f3 ~ f4 ~ f5 ~ f4 ~ f3@2 ~@2 eb5@2 ~@2",
})).s("gm_tremolo_strings").gain(0.4)

// drums · kick
const kick = s("bd").struct(`<
  A ~ B@3 C D E F G F@5 H F H F G F@2 I J K L M L K L M F@2 N F G F@2 H O B F H P Q P H P R S A ~ B@3 C D E F G F@5 H F
  H F G F@2 I J K L M L K L M F@2 N F G F@2 H O B F H P Q P H P R S
>`.pickRestart({
  A: "x", B: "x!4", C: "x ~ x ~ x ~ x!2", D: "~ x!2 ~ x ~ x!2", E: "~@3 x ~ x ~@2", F: "x ~@2 x ~ x ~@2", G: "x!2",
  H: "x ~@2 x ~ x ~ x", I: "x ~@3 x ~@2 x", J: "~ x ~@2 x!2 ~@2", K: "x ~@5 x!2 ~@2 x ~@3 x ~", L: "~ x!2 ~@2 x ~ x",
  M: "x!2 ~ x ~ x ~ x", N: "x ~@2 x ~@4", O: "~ x ~ x ~ x ~ x", P: "~ x ~ x ~ x ~@2", Q: "x ~@2 x!2 ~@2 x",
  R: "~@2 x!2 ~@2 x!2 ~@2 x!2 ~@2 x!2", S: "~@2 x!2 ~@2 x!2 ~@2 x ~@5",
})).gain(0.45)

// drums · snare
const snare = s("sd").struct(`<
  ~@4 A@2 B C A@7 D A@7 B E@7 F A G A H A@3 I J A K@6 L M ~@4 A@2 B C A@7 D A@7 B E@7 F A G A H A@3 I J A K@6 L M
>`.pickRestart({
  A: "~ x ~ x", B: "~@2 x ~@3 x!2", C: "x!3 ~@9 x ~@2 x", D: "x ~@10 x!2 ~@3", E: "~ x", F: "~@6 x!3 ~@7",
  G: "~ x ~@2 x ~ x ~", H: "~ x ~ x ~@2 x ~", I: "~@4 x ~@7 x ~ x!2", J: "x", K: "~@4 x ~@2 x ~ x ~@2 x ~@3",
  L: "x ~@3 x ~@2 x!3 ~@2 x ~@3", M: "x ~@3 x ~@2 x!6 ~@3",
})).gain(0.45)

// drums · low tom
const low_tom = s("lt").struct("<~@7 A ~@23 B C ~@8 D ~@15 A ~@23 B C ~@8 D ~@8>".pickRestart({
  A: "~@3 x ~@3 x", B: "~@14 x!2", C: "~@3 x ~@4", D: "~@4 x ~@2 x",
})).gain(0.45)

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

// drums · mid tom
const mid_tom = s("mt").struct("<~@7 A ~@15 B ~@7 C ~@9 B ~@15 A ~@15 B ~@7 C ~@9 B ~@8>".pickRestart({
  A: "~@4 x ~@2 x ~@5 x ~@2", B: "~@3 x ~@4", C: "~@12 x!2 ~@2",
})).gain(0.45)

// drums · open hat
const open_hat = s("oh").struct(`<
  ~@6 A@2 B@7 A B@5 C D ~@9 B@3 D B@4 ~@2 B@7 E ~@6 A@2 B@7 A B@5 C D ~@9 B@3 D B@4 ~@2 B@7 E
>`.pickRestart({
  A: "~@7 x", B: "~ x ~ x ~ x ~ x", C: "~ x ~@3 x ~ x", D: "~ x ~ x ~ x ~@2", E: "~ x ~ x ~ x!2 ~",
})).gain(0.3)

// drums · high tom
const high_tom = s("ht").struct("<~@7 A ~@23 B C ~@8 D ~@15 A ~@23 B C ~@8 D ~@8>".pickRestart({
  A: "~@9 x!3 ~@4", B: "~@10 x!2 ~@4", C: "~ x ~@6", D: "~ x ~@3 x ~@2",
})).gain(0.45)

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

// drums · ride bell
const ride_bell = s("rd").struct("<~@24 A B@2 C B D B@2 ~@42 A B@2 C B D B@2 ~@18>".pickRestart({
  A: "~ x!3", B: "x!4", C: "x ~ x!2 ~ x!3", D: "x ~ x ~ x ~ x!2",
// … 12 more lines

More by Misc Soundtrack