Strudelify
KeyB♭ majorTempo77 bpm
0:00/0:00
// God Of War — Gabriel Antonio de Lima
// 77 bpm, 4/4, key Bb major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/798961; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 10 bars on a 32-step grid, each part at one level. Source detail keeps the original performance.
setcpm(77/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.

// other · trumpet · "Trompete Bb"
const trumpet = note("<~ A B C D E F G H I>".pickRestart({
  A: "g4@4 c5@3 g4", B: "ab4@2 ab4@5 ~", C: "g4@4 c5@3 f4", D: "bb4", E: "g4@4 c5@3 c4", F: "db4 f4@2 g4",
  G: "ab4@3 bb4", H: "bb4 db5", I: "e5",
})).s("gm_trumpet").gain(0.5)

// other · french horn · "Trompa em F"
const french_horn = note("<~ A B C D E F G H I>".pickRestart({
  A: "c4@4 g4@3 c4", B: "db4@2 f4@5 ~", C: "c4@4 g4@3 f4", D: "db4", E: "g4@4 g4@3 c4", F: "db4 f4@2 g4",
  G: "ab4@3 bb4", H: "g4 db5", I: "c5",
})).s("gm_french_horn").gain(0.78)

// other · trombone
const trombone = note("<~ A B A C A D E F G>".pickRestart({
  A: "c3", B: "db3@7 ~", C: "bb2", D: "db3@2 f3@5 ~", E: "c4@3 db4", F: "bb3 db4", G: "c4",
})).s("gm_trombone").gain(0.5)

// bass · tuba · "Tuba em Bb"
const bass = note("<~ A B A C A C D E A>".pickRestart({
  A: "c2", B: "db2@7 ~", C: "db2", D: "c2@3 db2", E: "bb1@2 bb1!2",
})).s("gm_tuba").gain(0.5)

// other · timpani · "Tímpano"
const timpani = note("<A B C B D B E F G B>".pickRestart({
  A: "c3!32", B: "c3", C: "~@16 c3!8 c3@4 ~@4", D: "~@16 c3!16", E: "~@3 c3", F: "c3!4", G: "c3@8 c3@8 c3!16",
})).s("gm_timpani").gain(0.8).pan(1)

// drums · crash
const crash = s("cr").struct("<A B ~ B ~ B ~ B ~ B>".pickRestart({
  A: "x!31 ~", B: "x",
})).gain(0.4).pan(1)

stack(trumpet, french_horn, trombone, bass, timpani, crash)