Strudelify
KeyG majorTempo84 bpm
0:00/0:00
// earthbound - home sweet home — Keiichi Suzuki Hirokazu Tanaka Hiroshi Kanazu Toshiyuki Ueno
// 84 bpm, 4/4, key G major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/4607866; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 36 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(84/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("<~@2 A B C@2 D@2 C@2 D@2 E F G H ~@4 C@2 D@2 C@2 D@2 E F G H ~@4>".pickRestart({
  A: "a4@2 d5 b4 ~@4", B: "a4 e4 a4 f#4 ~@2 d4 c4", C: "[[g4,b4]!2 [b4,d5] [d5,g5] [e5,a5]@2 [d5,f#5] [e5,g5]@2 ~@7]/2",
  D: "[[c5,e5]!2 [e5,g5]!2 [g5,b5]@2 [e5,g5] [b4,d5]@2 ~ [d5,f5] [c5,d5]@2 ~@3]/2", E: "b4 a4 g4 a4 b4@2 e5@2",
  F: "g5@2 b5@2 e6@3 b5", G: "g5 f#5 e5 f#5 g5 f#5 e5 f#5", H: "[g4,b4,g5]@15 ~",
})).s("gm_piano").gain(0.36)

// bass · contrabass · "Saw Synthesizer"
const bass = note("<A B A C D E F G D E F G H I J K L M L M D E F G D E F G H I J K L M L M>".pickRestart({
  A: "c2@2 g2 c3@4 d3, ~@6 b2 ~@7 c3 ~", B: "c2@2 g2 c3@3 ~@2, ~@6 b2 ~@9", C: "c2@2 g2 c3@3 b2 a2, ~@6 b2 ~@9",
  D: "g2@4 f#2@3 f#2", E: "e2@3 e2 d2@3 d2", F: "c2@3 c2 b1@3 b1", G: "a#1@2 a1 d2", H: "e2 d#2", I: "d2 c#2",
  J: "c2 d2", K: "g2", L: "g1@3 c2@3 b2 c3", M: "g1@3 c2@3 b2 d3",
})).s("gm_contrabass").gain(0.26)

// chords · pad sweep · "Poly Synthesizer"
const pad_sweep = note("<~@12 A@2 B C D@4 ~@8 A@2 B C D@4>".pickRestart({
  A: "~ [g4,b4] ~ [g4,b4]", B: "[e4,g4] ~ [g4,c5]@2", C: "g4 ~@3 g3 f#3@3, ~ f#4@5 ~@2, ~@2 d4@5 ~, ~@3 b3@5",
  D: "[b3,d4,g4]@2 [b3,d4,g4] [d4,f#4,g4]@3 [c4,e4,g4]@2", // G Gmaj7 C
})).s("gm_pad_sweep").gain(0.11)

stack(piano, bass, pad_sweep)