Strudelify

karas theme - detroit become human

Misc Computer Games

KeyE♭ majorTempo90 bpm
0:00/0:00
// karas theme - detroit become human — Misc Computer Games
// 90 bpm, 4/4, key Eb major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Transcription provider: pdmx. https://musescore.com/score/5226798; license: https://creativecommons.org/publicdomain/mark/1.0/
// note: Full arrangement: all 68 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(90/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 C D E F G H A B C D E F G H I J K L M N O P Q R S T U@2 V W X Y Z AA AB AC AD AE AF AG AH AI AJ AK AL AM AN AO AH
  AP AQ AR AS AM AT AU AV AW AX AY AZ BA@5
>`.pickRestart({
  A: "f5@2 c5@2 [eb5,g5]@9 ~ f5@2, [c3,c4]@15 ~", B: "f5@2 c5@2 [eb5,g5]@9 ~ c5@2, [eb3,eb4]@15 ~",
  C: "ab3 c4 ~@2 eb5@4, c5 ~, ~@4 eb4@11 ~", D: "~@2 [d4,d5]@2 [f4,d5]@11 ~, d3@15 ~",
  E: "f5@2 c5@2 [eb5,g5]@9 ~ f5@2, [eb3,eb4]@15 ~", F: "f5@2 c5@2 [eb5,g5]@9 ~ c5@2, [f3,f4]@15 ~",
  G: "~ c4 eb4@2 g4@4, [g2,c5]@15 ~", H: "~ d4 f4@2 f4@4, f2@15 ~",
  I: "eb5 [eb2,c5] g2 c3 ~ eb2 g2 [c3,f4], c2@8 c2@7 ~, f4@4 eb5@11 ~, ~@4 g4@9 ~@3", // Cm F5
  J: "g5 [g2,c5] bb2 eb3 ~ g2 bb2 [eb3,c4], eb2@8 eb2@7 ~, f4@4 eb5@11 ~, ~@4 g4@9 ~@3", // C5 Cm
  K: "c4 [c3,c4] eb3 ab3 ~ c3 eb3 ab3, ab5@15 ~, ab2 [ab2,eb4], ~ eb4 ~@2", // C Ab5
  L: "~ [f2,d4] ab2 f3 ~ f2 ab2 f3, bb5@15 ~, d2@8 d2@7 ~, ~@4 [d4,f4]@11 ~", // Dm
  M: "g5 [g2,c5] bb2 eb3 ~ g2 bb2 [eb3,f4], eb2@8 eb2@7 ~, f4@4 eb5@11 ~, ~@4 g4@9 ~@3", // C5 Ebsus2
  N: "ab5 [ab2,c5] c3 f3 ~ ab2 f3 [ab3,c4], f2@8 f2@7 ~, f4@4 eb5@11 ~, ~@4 g4@9 ~@3", // Ab
  O: "c4 [g3,c4] eb3 c3 ~ c3 eb3 g2, c6@15 ~, g2@4 g2@3 ~, ~ eb4 g3@2", // C5
  P: "~ [ab2,d4] c3 eb3 ~ ab2 c3 eb3, f5@15 ~, f2@8 f2@7 ~, ~ f4 f3 c4", // Abdim
  Q: "eb5 c5 c2@2 c2@2 ~ bb3, c1@15 ~, [c2,d4]@4 eb5@11 ~, ~ c4@2 c2", // Csus2
  R: "g5 c5 eb2@2 eb2@2 ~ bb3, eb1@15 ~, [eb2,d4]@4 eb5@11 ~, ~ c4@2 eb2", // Ebmaj7
  S: "d4 c4 ab2@2 ab2@2 ~ bb3, ab1@15 ~, [ab2,ab5]@4 c5@11 ~, ~ eb4@2 ab2", // Ab
  T: "f4 [d4,g4] f4 ~@4 d4, [d1,bb5]@15 ~, d2!4, ~@3 f4@2 eb4@2 ~", // G5 Gm
  U: "[g5 c5 eb2@2 eb2@2 eb2@2 ab5 c5 f2@2 f2@2 [f2,ab3]@2, eb1@15 ~ f1@15 ~, eb2@4 eb5@11 ~ f2@4 bb3@8 ~@4, ~@4 eb4@8 c4@8 eb5@11 ~]/2", // Fm
  V: "g3 c4 eb4 f3 [g2,g3]@2 [g2,eb3]@2, [g1,c6]@15 ~, g2!2 ~@2", W: "d3 d4 [f2,f4]@2 [f2,f3]@4, [f1,f5]@15 ~, f2 ~@3",
  X: "[eb4,f5] [eb2,c5] g2 c3 ~ eb2 g2 [c3,f5], c2@8 c2@7 ~, ~@4 [eb5,g5]@9 ~@3", // Ebsus2 Cm F5 Eb
  Y: "[g4,f5] [g2,c5] bb2 eb3 ~ g2 bb2 [eb3,c5], eb2@8 eb2@7 ~, ~@4 [eb5,g5]@9 ~@3", // G7 C5 Cm Eb
  Z: "ab4 [c3,c4] eb3 ab3 ~ c3 eb3 ab3, [ab2,c5] [ab2,eb5], ~@4 eb4@11 ~", // C Ab Ab5
  AA: "~ [f2,d4] ab2 f3 ~ f2 ab2 f3, d2@8 d2@7 ~, bb4 [f4,d5] bb5 ab5", // Dm
  AB: "g5 [g2,c5] bb2 eb3 ~ g2 bb2 eb3, [eb4,g4]@15 ~, eb2@8 eb2@7 ~, ~@4 eb5@11 ~", // C5 Eb
  AC: "ab4 [ab2,c5,g5] [c3,g5] f3 ~ ab2 f3 [ab3,f5], f2@8 f2@7 ~, ~@4 eb5@11 ~, ~@3 g5@4 ~", // Abmaj7 C5 Db
  AD: "[c5,f5] [g3,c4,g5] eb3 c3 ~ c3 eb3 g2, g2@4 g2@3 ~, ~@4 [eb4,c5]@11 ~", // F5 C5 Cm
  AE: "[f4,g4] [ab2,d4] c3 eb3 ~ ab2 c3 eb3, f2 [f2,f4], ~ f4 ~@2", // Fsus2 Abdim F
  AF: "c3 g3 eb4 d4 eb4 ~ c5 bb4, eb5@2 c5 ~, ~@5 g4@3", AG: "[c5,g5] d5 eb5 f5 [eb5,g5]@2 c5@2, g4!2",
  AH: "ab5 d5 eb5@2 [d5,f5]@2 c5@2, f4!2", AI: "f4 g4 ~@3 g4@2 f4, [d4,bb5] [d4,d5], ~@2 ab4@3 ~@3",
  AJ: "c4@2 c4 ~ c5 eb5 d5 c5, ~@6 g4@9 ~", AK: "ab5@3 d5 [bb3,c5,eb5]@2 c5 g5, d4@2 ~ eb4",
  AL: "[ab3,c6]@2 f3 ab3, ~ [c5,f5]", AM: "f5 ab5@2 g5 [d4,b4,d5]@4, g3 ~",
  AN: "c4 g3 [eb4,bb4]@2 c5!2 [g4,eb5]@2, [c5,eb5] ~ ab4 ~", AO: "[eb5,g5] d5 [c5,eb5] bb4, g4!2",
  AP: "d4 g4 [ab4,c5]@2 bb4 ~@2 f4, bb5 ~ d5!2, ~@5 g4@2 ~", AQ: "g5@2 ~@4 d5 c5, c4@3 g4@2 eb4@3, ~ c5!2 ~",
  AR: "ab5@3 d5 [c5,f5]@2 c5 g5, d4@15 ~", AS: "c6 [c5,f5], ab3@15 ~",
  AT: "[eb5,f5] c5 c2@2 c2@2 ~ f5, c1@15 ~, c2 [eb5,g5]@2 c2", // Ebsus2 Eb
  AU: "[f5,g5] c5 eb2@2 eb2@2 ~ c5, eb1@15 ~, eb2 [eb5,g5]@2 eb2", // Fsus2 Eb
  AV: "~ c4 ab2@2 ab2@2 ab2@2, ab1@15 ~, [c5,ab5] eb5, ab2@4 eb4@11 ~", // Fm
  AW: "~ d4 [d2,d5]@2 bb5@2 ab5@2, d1@15 ~, [d2,bb5]@4 f4@11 ~, ~ d2", // D Gm
  AX: "g5 c5 ~@2 eb2@4, eb1@15 ~, eb2 ~, ~@4 eb5@11 ~",
  AY: "[f4,ab5] [c5,g5] g5 ~@4 f5, f1@15 ~, f2!2, ~@4 eb5@11 ~, ~@3 g5@4 ~", // Fm C5
  AZ: "[f5,c6] [c4,g5] ~@2 g2@4, g1@15 ~, g2 ~, ~@4 [eb4,c5]@11 ~", // F5 C5 Cm
  BA: "[g4@2 d4@2 f4@4 ~@8 [c1,c2]@61 ~@3, [f1,f2,f5]@3 ~@13, ~@4 f4@19 ~@17]/5", // C F
})).s("gm_piano").gain(0.4)

stack(piano)

More by Misc Computer Games