Strudelify

Final Fantasy VII - Don Of The Slums (4 hand piano reduction)

Nobuo Uematsuarr. notfge

KeyG majorTempo112 bpm
0:00/0:00
// Final Fantasy VII - Don Of The Slums (4 hand piano reduction) — Nobuo Uematsuarr. notfge
// 112 bpm, 4/4, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: metre changes (4/4 at bar 1, 2/4 at bar 3, 3/4 at bar 4, 4/4 at bar 5, ...) are rendered on a constant 4/4 grid of one bar per cycle
// note: Transcription provider: pdmx. https://musescore.com/score/5689554; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 61 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(112/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 · piano
const piano = note(`<
  A B@3 ~@2 C D E F@2 G H I J K L M N G H I J K L M O P Q@2 ~@2 R S T U@2 V W V X Y Z Y AA V W V X Y Z Y AA A B@3 ~@2 C
  AB
>`.pickRestart({
  A: "e5@2 g5@2 b5@2 e6@2 d#6@2 d#5@2 b5@2 d#5 ~, ~@12 g#5 ~@3",
  B: "[~@2 d5@2 a5@2 b5@2 ~@2 d5@2 f5 ~ d5 ~@3 d5@2 f5 ~ d5 ~@3 d5@2 f5 ~ d5 ~@3 d5@2 f5 ~ d5 ~@9, d6@4 f#5 ~ d5 ~ c6@30 ~@10]/3",
  C: "~@4 [e4,e5] [f#4,f#5] [g4,g5] [a4,a5] [b4,b5]@2 ~@2 d#5@2 ~@2", D: "e5@2 ~@6 g5@6 a5 g5, ~ a#4",
  E: "b4@8 f5@6 g5 f5, f#5 ~ a4@2", F: "[[g#4,d#5]@23 ~ a#5@2 g5 ~ [f4,a4,d5] d6 [f4,a4,d5,a#5] g5, ~@27 f6@2 ~@3]/2",
  G: "a#5@2 f#5 ~@2 c6 a#5 f#5 a#5@2 g5 f6@2 d6 [f4,a4,d5,a#5] g5, ~@3 f6@2 ~@11, ~@2 [f#4,c5,f5] ~@2 [f4,a4,d5]@2 ~", // A#maj7 F Dm
  H: "a#5@2 f#5 ~ [f#4,c5,f5] c6 [f#4,c5,f5,a#5] f#5 a#5@2 g5 ~ [f4,a4,d5] d6 [f4,a4,d5,a#5] g5, ~@3 f6@2 ~@6 f6@2 ~@3", // F F#maj7 Dm A#maj7
  I: "a#5@2 f#5 ~@2 c6 a#5 f#5 [f4,a4,d5,a#5]@2 g5 f6@2 d6 a#5 g5, ~@3 f6@2 ~@11, ~@2 [f#4,c5,f5] ~@5", // A#maj7 F
  J: "a#5@2 g5 f6@2 d6 a#5 g5 g5@2 e5 ~ [d4,f#4,b4] b5 [d4,f#4,b4,g5] e5, ~@11 d6@2 ~@3", // Bm Gmaj7
  K: "g5@2 d#5 ~@2 a5 g5 d#5 g5@2 e5 d6@2 b5 [d4,f#4,b4,g5] e5, ~@3 d6@2 ~@11, ~@2 [d#4,a4,d5] ~@2 [d4,f#4,b4]@2 ~", // Gmaj7 D Bm
  L: "g5@2 d#5 ~ [d#4,a4,d5] a5 [d#4,a4,d5,g5] d#5 g5@2 e5 ~ [d4,f#4,b4] b5 [d4,f#4,b4,g5] e5, ~@3 d6@2 ~@6 d6@2 ~@3", // D D#maj7 Bm Gmaj7
  M: "g5@2 d#5 ~@2 a5 g5 d#5 [d4,f#4,b4]@2 ~@6, ~@3 d6@2 ~@11, ~@2 [d#4,a4,d5] ~@5", // Bm D
  N: "~@8 a#5@2 g5 ~ [f4,a4,d5] d6 [f4,a4,d5,a#5] g5, ~@11 f6@2 ~@3", O: "~@4 e5 g5 b5 e6",
  P: "d#6@2 d#5@2 b5@2 d#5 ~@3 d5@2 a5@2 b5@2, ~@4 g#5 ~@3 d6@4 f#5 ~ d5 ~",
  Q: "[~@2 d5@2 f5 ~ d5 ~@3 d5@2 f5 ~ d5 ~@3 d5@2 f5 ~ d5 ~@3 d5@2 f5 ~ d5 ~, c6@15 ~]/2",
  R: "~@12 [e4,e5] [f#4,f#5] [g4,g5] [a4,a5]", S: "[b4,b5] ~ d#5 ~ e5 ~@3", T: "g5@6 a5 g5 b4@8, a#4@2 f#5 ~",
  U: "[f5@6 g5 f5 [g#4,d#5]@23 ~, a4 ~@3]/2", // G#5
  V: "a#5@2 g5 ~ [f4,a4,d5] d6 [f4,a4,d5,a#5] g5 a#5@2 f#5 ~@2 c6 a#5 f#5, ~@3 f6@2 ~@6 f6@2 ~@3, ~@6 [f#4,c5,f5] ~", // Dm A#maj7 F
  W: "a#5@2 g5 f6@2 d6 [f4,a4,d5,a#5] g5 a#5@2 f#5 ~ [f#4,c5,f5] c6 [f#4,c5,f5,a#5] f#5, ~@2 [f4,a4,d5]@4 ~@5 f6@2 ~@3", // A#maj7 F F#maj7 Dm
  X: "[f4,a4,d5,a#5]@2 g5 f6@2 d6 a#5 g5 a#5@2 g5 f6@2 d6 a#5 g5", // A#maj7
  Y: "g5@2 e5 ~ [d4,f#4,b4] b5 [d4,f#4,b4,g5] e5 g5@2 d#5 ~@2 a5 g5 d#5, ~@3 d6@2 ~@6 d6@2 ~@3, ~@6 [d#4,a4,d5] ~", // Bm Gmaj7 D
  Z: "g5@2 e5 d6@2 b5 [d4,f#4,b4,g5] e5 g5@2 d#5 ~ [d#4,a4,d5] a5 [d#4,a4,d5,g5] d#5, ~@2 [d4,f#4,b4]@4 ~@5 d6@2 ~@3", // Gmaj7 D D#maj7 Bm
  AA: "[d4,f#4,b4] ~@7", AB: "e5 ~@7",
})).s("gm_piano").gain(0.25)

stack(piano)

More by Nobuo Uematsuarr. notfge