Strudelify

the legend of zelda - Groose's Theme

Koji Kondo

KeyF majorTempo120 bpm
0:00/0:00
// the legend of zelda - Groose's Theme — Koji Kondo
// 120 bpm, 4/4, key F major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/32505; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 35 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(120/4)

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

// other · flute
const flute = note("<A ~@9 B C ~@2 B C ~@10 B C ~@2 B C ~@3>".pickRestart({
  A: "c5@3 c5 g5@2 a5@2 [bb5,c6]!8", B: "bb3 b3 ~ c4 db4 d4 ~ eb4 e4 f4 gb4 g4 ab4 a4 bb4 b4", C: "c5 ~",
})).s("gm_flute").gain(0.3)

// other · clarinet · "Bb Clarinet"
const clarinet = note("<A B@2 ~@8 C D E F C D E G ~@8 C D E F C D E G>".pickRestart({
  A: "c4@3 c4 g4@2 a4@2 bb4@8", B: "~@12 gb3 g3 gb3 g3", C: "~@6 c4 [e4,g4] gb4@4 ~@2 c4 [e4,g4]",
  D: "gb4@3 e4 gb4@4 ~@4 e4@3 c4", E: "[g3,a3]!8 ~@4 [e4,f4] e4 [e4,f4] [c4,d4]", F: "[a3,bb3] ~@15, g3",
  G: "[a3,bb3] ~@2 a3 bb3@12, g3@3 ~@13", // Bbmaj7
})).s("gm_clarinet").gain(0.3)

// other · trumpet · "Bb Trumpet"
const trumpet = note("<A ~@5 B ~@3 C ~@2 D@2 ~@2 D@2 ~@3 B ~@3 C ~@2 D@2 ~@2 D@2>".pickRestart({
  A: "c4@3 c4 g4@2 a4@2 bb4@8", B: "~@6 g4@2 gb4!2 g4@2 gb4@2 ~@2", C: "~@6 g4@2 ~ gb4 g4@2 gb4@2 g4@2",
  D: "~@6 e4 eb4 ~ e4 eb4 ~@5",
})).s("gm_trumpet").gain(0.3)

// other · trombone
const trombone = note("<A ~@2 B@2 C D B@2 E F ~@8 B@2 C D B@2 E F ~@8>".pickRestart({
  A: "c3@3 c3 g3@2 a3@2 bb3@8", B: "g3@3 e3 c3@3 g2 bb2@8", C: "c3@3 e3 g3@3 a3 bb3@3 a3 g3@3 gb3", D: "g3",
  E: "c3@3 e3 g3@3 a3 bb3@3 a3 g3@3 d4", F: "c4",
})).s("gm_trombone").gain(0.3)

// other · tuba · "Euphonium"
const tuba = note("<[c3@3 c3 g3@2 a3@2 bb3@8] [~@2 g3@2 g3@2 g3!2 gb3@2 gb3@2 ~@4]!34>").s("gm_tuba").gain(0.3)

// bass · tuba · "Bb Tuba"
const bass = note("<A B C B C B C B C B C B C B C B C B C B C B C B C B C B C B C B C B C>".pickRestart({
  A: "c2@3 c2 g2@2 a2@2 bb2@8", B: "c2@2 c2@2 c2@2 c2!2 gb2@2 gb2@2 ~@4", C: "c2@2 c2@2 c2@2 c2!2 g1@2 g1@2 ~@4",
})).s("gm_tuba").gain(0.39)

stack(flute, clarinet, trumpet, trombone, tuba, bass)

More by Koji Kondo