Strudelify

Mogez!UnderSwap - Brand New Time + It's Now or Never

Andrea Maksimova

KeyA majorTempo150 bpm
0:00/0:00
// Mogez!UnderSwap - Brand New Time + It's Now or Never — Andrea Maksimova
// 150 bpm, 4/4, key A major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/5828542; 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(150/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 · electric guitar jazz · "Хаммонд-орган, MIDI Out #10"
const electric_guitar_jazz = note(`<
  ~@20 A B C D A B C D A B C D A B C D A B C D A B C E A B C D A B C D A B C D A B C F ~
>`.pickRestart({
  A: "[f#3,a3,c#4]", B: "[d3,a3,c#4]", C: "[b2,f#3,c#4]", D: "[c#3,g#3,c#4]@2 g#3 a3, ~ [f3,c#4]",
  E: "[c#3,g#3] ~, c#4@3 ~@5", F: "[c#3,g#3,c#4] ~@3",
})).s("gm_electric_guitar_jazz").gain(0.4)

// chords · slap bass 1 · "Скрипка, MIDI Out #12"
const slap_bass_1 = note("<~@43 A B C D E B C D E B C D E ~@5>".pickRestart({
  A: "~@2 g#5 a5, ~ [f5,c#6]", B: "[f#5,a5,c#6]", C: "[d5,a5,c#6]", D: "[b4,f#5,c#6]",
  E: "[c#5,g#5,c#6]@2 g#5 a5, ~ [f5,c#6]", // C#5 C#
})).s("gm_slap_bass_1").gain(0.4)

// bass · slap bass 2 · "Раг данг, MIDI Out"
const bass = note(`<
  A B C D A B C D A B C D A B C D A B C E A B C D A B C D A B C D A B C D A B C D A B C F A B C D A B C E A B C D A B C
  G ~
>`.pickRestart({
  A: "f#2@2 [f#3,a3] ~ f#2@2 [f#3,c#4] ~ f#2@2 [f#3,a3] ~ f#2@2 [f#3,g#3] ~", // F#m F#5 F#m F#sus2
  B: "d2@2 [d3,f#3] ~ d2@2 [d3,a3] ~ d2@2 [d3,f#3] ~ d2@2 [d3,f3] ~", // D D5 D Dm
  C: "b1@2 [b2,d3] ~ b1@2 [b2,f#3] ~ b1@2 [b2,d3] ~ b1@2 [b2,c#3] ~", // Bm B5 Bm Bsus2
  D: "c#2@2 [c#3,f3] ~ c#2@2 [c#3,g#3] ~ f2@2 [f3,a3] ~ f2@2 [f3,g#3] ~", // C# C#5 F Fm
  E: "b1@4 ~@4 [d3,f#3] ~ [c#3,f3] ~ [a2,d3] ~ [g#2,c#3] ~", F: "c#2@2 [c#3,f3] ~ c#2@2 ~@10", G: "b1 ~@3",
})).s("gm_slap_bass_2").gain(0.4)

// chords · clavinet · "Клавикорд, MIDI Out #2"
const clavinet = note(`<
  A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C D A B C E A B C D A B C D A B C D A B C
  E ~
>`.pickRestart({
  A: "~@2 [f#3,a3] ~@3 [f#3,c#4] ~@3 [f#3,a3] ~@3 [f#3,g#3] ~", // F#m F#5 F#m F#sus2
  B: "~@2 [d3,f#3] ~@3 [d3,a3] ~@3 [d3,f#3] ~@3 [d3,f3] ~", C: "~@2 [b2,d3] ~@3 [b2,f#3] ~@3 [b2,d3] ~@3 [b2,c#3] ~",
  D: "~@2 [c#3,f3] ~@3 [c#3,g#3] ~@3 [f3,a3] ~@3 [f3,g#3] ~", E: "~@2 [c#3,f3] ~@13",
})).s("gm_clavinet").gain(0.4)

// other · distortion guitar · "Синтезатор квадратной волны, MIDI Out #7"
const distortion_guitar = note("<~@4 A B C D E F G H ~@16 A B C D E F G H A B C D E F G H ~@16 I>".pickRestart({
  A: "~@2 f#4 ~ g#4 ~ a4 ~ c#5 ~@2 f#5 ~@2 f5 c#5", B: "[c#5,d5]@2 ~@2 d5 ~ c#5 ~ a4@2 ~@2 g#4@4",
  C: "~@2 c#5 ~ b4 ~ c#5 ~@3 a5 ~ g#5 ~ f#5 c#5", D: "[c#5,d5] ~ g#4 ~ b4 ~ f4@2", E: "~@2 c#5 ~@3 d5 ~@3 f#5 ~@3 d5 ~",
  F: "c#5@4 ~@2 c#5 ~ a4@2 ~@2 g#4@4", G: "~@2 f4 ~ g#4 ~ b4 ~ d5 c#5 ~ b4 ~ a4 g#4 ~", H: "~ g#4, a4 ~, ~ c#4@3",
  I: "f#5 ~@7",
})).s("gm_distortion_guitar").gain(0.4)

// other · overdriven guitar · "Синтезатор пилообразной волны, MIDI Out #8"
const overdriven_guitar = note(`<
  ~@12 A B C D E F G H ~@16 I J K J I J K J A B C D E F G H A B C D L M N O ~
>`.pickRestart({
  A: "c#5@4 d5 ~ c#5@4 d5 ~ b4@2 c#5 g#4", B: "g#4@4 a4 ~ g#4@6 ~@4, a4 ~@15", C: "f#4@4 a4 ~ g#4@4 a4@4 b4@2",
  D: "[c#5,f5] [a4,c#5]", E: "f#4 ~ f#4 ~ c#5 ~ b4@4 a4 ~ g#4 ~ a4 ~", F: "g#4 g#4@3 c#4 ~ [a4,c#5]@6 ~@4, ~ a4 ~@14",
  G: "b4 ~ a4 ~ c#5 ~ d5@2 c#5 ~ b4 a4 ~ b4 g#4 ~", H: "[f#4,a4] [c#4,f#4]", I: "f#5 ~ f#5 ~ f#6@2 ~@2 c#6@2 ~@4 c6 ~",
  J: "~@2 b5 ~@3 a5@4 f#5 ~ a5 ~ b5 ~", K: "b4 ~ b4 ~ f#6@2 ~@2 c#6@2 ~@4 c6 ~",
  L: "f#4 ~ f#4 ~ c#5 ~@2 a4 ~@2 g#4 ~ c#5@2 a4 ~", M: "c#4 ~ c#4 ~ c#5 ~@2 a4 ~@2 g#4 ~ c#5@2 a4 ~",
  N: "b4@2 ~ c#5 a4@2 b4@2", O: "g#4 c#4 b4 g#4",
})).s("gm_overdriven_guitar").gain(0.4)

// chords · electric guitar muted · "Синтезатор пилообразной волны, MIDI Out #9"
const electric_guitar_muted = note(`<
  ~@20 A B C D A B C D A B C D A B C D A B C D A B C E A B C D A B C F A B C D A B C G ~
>`.pickRestart({
  A: "f#2@2 [f#3,a3] ~ f#2@2 [f#3,c#4] ~ f#2@2 [f#3,a3] ~ f#2@2 [f#3,g#3] ~", // F#m F#5 F#m F#sus2
  B: "d2@2 [d3,f#3] ~ d2@2 [d3,a3] ~ d2@2 [d3,f#3] ~ d2@2 [d3,f3] ~", // D D5 D Dm
  C: "b1@2 [b2,d3] ~ b1@2 [b2,f#3] ~ b1@2 [b2,d3] ~ b1@2 [b2,c#3] ~", // Bm B5 Bm Bsus2
  D: "c#2@2 [c#3,f3] ~ c#2@2 [c#3,g#3] ~ f2@2 [f3,a3] ~ f2@2 [f3,g#3] ~", E: "c#2@2 [c#3,f3] ~ c#2@2 ~@10",
  F: "b1@4 ~@4 [d3,f#3] ~ [c#3,f3] ~ [a2,d3] ~ [g#2,c#3] ~", G: "c#2@2 [c#3,f3] ~ b1@4 ~@8",
})).s("gm_electric_guitar_muted").gain(0.4)

// chords · pizzicato strings · "Виолончель, MIDI Out #3"
const pizzicato_strings = note(`<
  A B C D A B C D A B C D A B C D A B C E A B C D A B C D A B C D A B C D A B C D A B C F A B C D A B C E A B C D A B C
  G ~
>`.pickRestart({
  A: "f#3@2 [f#4,a4] ~ f#3@2 [f#4,c#5] ~ f#3@2 [f#4,a4] ~ f#3@2 [f#4,g#4] ~", // F#m F#5 F#m F#sus2
  B: "d3@2 [d4,f#4] ~ d3@2 [d4,a4] ~ d3@2 [d4,f#4] ~ d3@2 [d4,f4] ~", // D D5 D Dm
  C: "b2@2 [b3,d4] ~ b2@2 [b3,f#4] ~ b2@2 [b3,d4] ~ b2@2 [b3,c#4] ~", // Bm B5 Bm Bsus2
  D: "c#3@2 [c#4,f4] ~ c#3@2 [c#4,g#4] ~ f3@2 [f4,a4] ~ f3@2 [f4,g#4] ~", // C# C#5 F Fm
  E: "b2@4 ~@4 [d4,f#4] ~ [c#4,f4] ~ [a3,d4] ~ [g#3,c#4] ~", F: "c#3@2 [c#4,f4] ~ c#3@2 ~@10", G: "b2 ~@3",
})).s("gm_pizzicato_strings").gain(0.4)

// chords · tremolo strings · "Электрогитара, MIDI Out #11"
const tremolo_strings = note(`<
  ~@20 A B C D A B C D A B C D A B C D A B C D A B C E A B C D A B C D A B C D ~@5
>`.pickRestart({
  A: "[f#4,c#5]", B: "[d4,a4]", C: "[b3,f#4]", D: "[c#4,g#4] [f4,c5]", E: "[c#4,g#4] ~",
})).s("gm_tremolo_strings").gain(0.4)

// other · overdriven guitar · "Электрогитара, MIDI Out #13"
const overdriven_guitar_2 = note("<~@44 A B C@2 A B D@2 A B C@2 ~@5>".pickRestart({
  A: "f#4@3 c#5", B: "b4 a4", C: "c#5/2", D: "g#4/2",
})).s("gm_overdriven_guitar").gain(0.4)

// other · violin · "Скрипка, MIDI Out #15"
const violin = note("<~@44 A B C D E F G H A B C D ~@5>".pickRestart({
  A: "c#5@4 d5 ~ c#5@4 d5 ~ b4@2 c#5 g#4", B: "g#4@4 a4 ~ g#4@6 ~@4, a4 ~@15", C: "f#4@4 a4 ~ g#4@4 a4@4 b4@2",
  D: "[c#5,f5] [a4,c#5]", E: "f#4 ~ f#4 ~ c#5 ~ b4@4 a4 ~ g#4 ~ a4 ~", F: "g#4 g#4@3 c#4 ~ [a4,c#5]@6 ~@4, ~ a4 ~@14",
  G: "b4 ~ a4 ~ c#5 ~ d5@2 c#5 ~ b4 a4 ~ b4 g#4 ~", H: "[f#4,a4]@8 ~@6 b4 c5, ~ [c#4,f#4]",
})).s("gm_violin").gain(0.4)

// other · timpani · "Литавры, MIDI Out #5" · E
const timpani = note("<~@43 [~@7 f#1@2 d#2 a#2 f3 [b2,g#3] e3 c3 c#2] ~@17>").s("gm_timpani").gain(0.4)

// drums · kick
const kick = s("bd").struct("<~@12 A@6 B C D@23 B D E D E D@5 E D E A@2 B C ~>".pickRestart({
  A: "x!2", B: "x", C: "x!4", D: "x ~@3 x ~@2 x", E: "x ~@3 x!2 ~ x",
})).gain(0.4)

// drums · snare
const snare = s("sd").struct("<~@20 [~ x ~ x]!23 [~ x ~@2] [~ x ~ x]!12 ~@5>").gain(0.4)

// drums · pedal hat
const pedal_hat = s("hh").struct("<~@20 [~@2 x ~@10 x!2 ~]!23 [~ x ~@6] [x!4]!4 [~@2 x ~@10 x!2 ~]!4 [x!4]!4 x ~@4>")
  .gain(0.4)

// drums · open hat
const open_hat = s("oh").struct(`<
  ~@20
  [~@3 x ~ x!2 ~]!23
  [~@3 x ~@4]
  [~ x ~ x ~ x ~ x]!4
  [~@3 x ~ x!2 ~]!4
  [~ x ~ x ~ x ~ x]!4
  ~@5
>`).gain(0.4)

// drums · crash
const crash = s("cr").struct("<~@20 A ~@23 A ~@7 A ~@3 A ~@4>".pickRestart({
  A: "x",
})).gain(0.5)

stack(
  electric_guitar_jazz, slap_bass_1, bass, clavinet, distortion_guitar, overdriven_guitar, electric_guitar_muted,
  pizzicato_strings, tremolo_strings, overdriven_guitar_2, violin, timpani, kick, snare, pedal_hat, open_hat, crash
)

More by Andrea Maksimova