Strudelify

Luigi's Mansion

Panda

KeyA majorTempo90 bpm
0:00/0:00
// Luigi's Mansion — Panda
// 90 bpm, 4/4, key A major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/3620816; license: https://creativecommons.org/publicdomain/mark/1.0/
// note: Full arrangement: all 16 bars on a 16-step grid, each part at one level; ghost notes are separate "_soft" parts. Source detail keeps the original performance.
setcpm(90/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest.
// A part's distinct bars are riffs (A, B, C...) played in order: edit a riff to change every repeat.

// bass · tuba · "B♭ Tuba"
const bass = note("<~@4 A B C D A B C D A E F G>".pickRestart({
  A: "~@2 e3!2 e3@2 e3@2 e3@4 c3@2 e3@2", B: "d#3 b2 ~@2", C: "~@2 d3!2 d3@2 d3@2 d3@4 b2@2 d3@2",
  D: "c3@4 ~@2 a#2@2 b2@2 ~@2 e3 d3 c3 b2", E: "d#3@2 b2 ~ d#3@2 e3 ~", F: "b2@2 d3!2 d3@2 d3@2 d3@4 b2@2 d3@2",
  G: "e3 d3 c3 b2 a2@2 ~@2",
})).s("gm_tuba").gain(0.5)

// bass · tuba · "B♭ Tuba" · soft notes
const bass_soft = note("<[a1 ~@7] [a1@2 ~@4 e2 ~ d#2@4 e2 ~@3] [a1 ~@7] [a1@2 ~@4 e2 ~ d#2@4 e2 ~@3] ~@12>")
  .s("gm_tuba").gain(0.3)

// bass · tuba · "B♭ Tuba"
const bass_2 = note("<A B C B C B C D C B C D E F C G>".pickRestart({
  A: "a1 ~@7", B: "a1@2 ~@4 e2 ~ d#2@4 e2 ~@3", C: "a2 ~@7", D: "a2@2 ~@4 g2@2 g#2@4 g2 f2 e2 d2", E: "c2 ~@7",
  F: "a2@2 ~@4 g2 ~ f#2@4 g2 ~@3", G: "b2 a2 g2 f2 e2@2 ~@2",
})).s("gm_tuba").gain(0.3)

// bass · tuba · "B♭ Tuba"
const bass_3 = note("<A B A B A B A C A B A C A B A D>".pickRestart({
  A: "a1 ~@7", B: "a1@2 ~@4 e2 ~ d#2@4 e2 ~@3", C: "a1@2 ~@4 e2@2 d#2@4 e2 d2 c2 b1", D: "g2 f2 e2 d2 c2@2 ~@2",
})).s("gm_tuba").gain(0.3)

stack(bass, bass_soft, bass_2, bass_3)