diff --git a/.gitignore b/.gitignore index d9803e8..5dca448 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ *.midi *.wav *.mp3 +*.ogg *autosave* diff --git a/2022-projects/02-rach1.ly b/2022-projects/02-rach1.ly index 3ac117b..d8cb6d3 100644 --- a/2022-projects/02-rach1.ly +++ b/2022-projects/02-rach1.ly @@ -1,4 +1,4 @@ -\version "2.20.0" +\version "2.22.1" \language "english" \header { @@ -14,7 +14,7 @@ global = { \time 4/4 \set Staff.printKeyCancellation = ##f \numericTimeSignature - \compressFullBarRests + \compressEmptyMeasures \omit Voice.StringNumber \override TupletBracket #'bracket-visibility = #'if-no-beam \override MultiMeasureRest.expand-limit = #3 @@ -174,7 +174,6 @@ chordExceptions = #(append chordValues = \chordmode { \global - \powerChords \set chordNameExceptions = #chordExceptions \set majorSevenSymbol = \markup "maj7" fs2:m ds:1.3-.5-.7 | gs2:1.3.5+.7.9- gs:7 | diff --git a/2022-projects/02-rach1.pdf b/2022-projects/02-rach1.pdf index 09d2e22..c95e920 100644 Binary files a/2022-projects/02-rach1.pdf and b/2022-projects/02-rach1.pdf differ diff --git a/2022-projects/03-chopin-mazurkas-01.ly b/2022-projects/03-chopin-mazurkas-01.ly new file mode 100644 index 0000000..242118e --- /dev/null +++ b/2022-projects/03-chopin-mazurkas-01.ly @@ -0,0 +1,738 @@ +\version "2.22.1" +\language "english" + +#(set-global-staff-size 18) + +\header { + % title = "Rach 1 Snippets" +} + +\paper { + system-system-spacing = #'((basic-distance . 0.1) (padding . 4)) +} + +global = { + \set Staff.printKeyCancellation = ##f + \numericTimeSignature + \compressEmptyMeasures + \override TupletBracket #'bracket-visibility = #'if-no-beam + \override MultiMeasureRest.expand-limit = #3 + \override Score.ChordName.font-name = #"Noto Serif" + \override Score.ChordName.font-size = #0 + \override Score.LyricText.font-name = #"Noto Serif" + \override Score.LyricText.font-size = #0 +} + +oneR = \relative c' { + \time 3/4 + \global + \key fs \minor + + \partial 4 fs4 ~ | \tuplet 3/2 { fs8 gs fs } es8. fs16 gs8. d16 | + \partial 2 cs8[ r16 fs16] a4 | +} + +oneL = \relative c, { + \global + \key fs \minor + \clef bass + + \partial 4 r4 | cs4 | \partial 2 fs, | + + +} + +\score { + << + \new PianoStaff << + \set PianoStaff.connectArpeggios = ##t + \new Staff = "oneR" \with { + midiInstrument = "acoustic grand" + } \relative c'' \oneR + \new Staff ="oneL" \with { + midiInstrument = "acoustic grand" + } { \relative c' \oneL } + >> + >> + \layout { + indent = 0 + \context { + \Score \omit BarNumber + } + \context { + \Staff \RemoveEmptyStaves + \override Glissando.minimum-length = #4 + \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods + \override Glissando.thickness = #2 + \override VerticalAxisGroup.remove-first = ##t + } + } +} + + +twoR = \relative c' { + \time 3/4 + \global + \key cs \minor + << + { \repeat unfold 4 { gs'4 gs2 } } \\ + { bs,4 as bs8 cs | ds bs cs4. as8 | \tuplet 3/2 { bs cs bs } as4 bs8 cs | \tuplet 3/2 { ds fs e } ds2 | } + >> | + \break +} + +twoL = \relative c { + \global + \key cs \minor + \clef bass + + \repeat unfold 4 { 4 2 | } +} + +\score { + << + \new PianoStaff << + \set PianoStaff.connectArpeggios = ##t + \new Staff = "twoR" \with { + midiInstrument = "acoustic grand" + } \relative c'' \twoR + \new Staff ="twoL" \with { + midiInstrument = "acoustic grand" + } { \relative c' \twoL } + >> + >> + \layout { + indent = 0 + \context { + \Score \omit BarNumber + } + \context { + \Staff \RemoveEmptyStaves + \override Glissando.minimum-length = #4 + \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods + \override Glissando.thickness = #2 + \override VerticalAxisGroup.remove-first = ##t + } + } +} + +threeR = \relative c { + \time 3/4 + \global + \key e \major + \repeat unfold 4 { R1*3/4 } | + \clef bass cs8 b a4 gs | \grace { gs16 fs} e2. | + cs'8[ r16 b16] a4 gs | \grace { gs16 fs } e2 s4 | +} + +threeL = \relative c { + \global + \key e \major + \clef bass + \time 3/4 + + 4 q q-> | q q q-> | + q q-> q | q-> q q-> | + q q q-> | q q q-> | + q q q-> | q q s | +} + +\score { + << + \new PianoStaff << + \set PianoStaff.connectArpeggios = ##t + \new Staff = "threeR" \with { + midiInstrument = "acoustic grand" + } \relative c'' \threeR + \new Staff ="threeL" \with { + midiInstrument = "acoustic grand" + } { \relative c' \threeL } + >> + >> + \layout { + indent = 0 + \context { + \Score \omit BarNumber + } + \context { + \Staff \RemoveEmptyStaves + \override Glissando.minimum-length = #4 + \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods + \override Glissando.thickness = #2 + \override VerticalAxisGroup.remove-first = ##t + } + } +} + +fourR = \relative c'' { + \global + \key g \minor + \time 3/8 + + \repeat unfold 3 { \grace s16 R1*3/8 | } | r8 8 | + q q | q q4-^ | + << + { d'16 ef d ef d ef | d ef d ef d ef | } \\ + { 8 | | } + >> | + 4. | +} + +fourL = \relative c { + \global + \key g \minor + \time 3/8 + \clef bass + + \repeat unfold 9 { \grace { e'16 } 8-^ q q | } +} + +\score { + << + \new PianoStaff << + \set PianoStaff.connectArpeggios = ##t + \new Staff = "fourR" \with { + midiInstrument = "acoustic grand" + } \relative c'' \fourR + \new Staff ="fourL" \with { + midiInstrument = "acoustic grand" + } { \relative c' \fourL } + >> + >> + \layout { + indent = 0 + \context { + \Score \omit BarNumber + } + \context { + \Staff \RemoveEmptyStaves + \override Glissando.minimum-length = #4 + \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods + \override Glissando.thickness = #2 + \override VerticalAxisGroup.remove-first = ##t + } + } +} + + +fiveR = \relative c' { + \global + \key e \major + \time 3/4 + + \partial 4 4-. | -. -. -. | 2. | + 2. | 4 | + -. -. -. | 2. | 2. | 4-. s2 | +} + +fiveL = \relative c' { + \global + \key e \major + \time 3/4 + \clef bass + + \partial 4 gs4-. | b-. \clef treble e-. gs-. | b2. | + a2. | gs4-. b-. a-. | -. -. | + \clef bass 2. | | 4-. s2 | +} + +\score { + << + \new PianoStaff << + \set PianoStaff.connectArpeggios = ##t + \new Staff = "fiveR" \with { + midiInstrument = "acoustic grand" + } \relative c'' \fiveR + \new Staff ="fiveL" \with { + midiInstrument = "acoustic grand" + } { \relative c' \fiveL } + >> + >> + \layout { + indent = 0 + \context { + \Score \omit BarNumber + } + \context { + \Staff \RemoveEmptyStaves + \override Glissando.minimum-length = #4 + \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods + \override Glissando.thickness = #2 + \override VerticalAxisGroup.remove-first = ##t + } + } +} + + +sixR = \relative c' { + \global + \key e \major + \time 3/4 + + \partial 4 4 | 8[ r16 16] 4 -> | + 8[ r16 ] 4 -> | + << + { \tuplet 3/2 { fs'8 gs fs } } \\ + { ds4 } + >> + + 8 | + 8[ r16 ] 2-> | +} + +sixL = \relative c, { + \global + \key e \major + \time 3/4 + \clef bass + + \partial 4 r4 | e q-> | q q -> | + \override NoteHead.color = "dodgerblue" q q \revert NoteHead.color | q q | +} + +\score { + << + \new PianoStaff << + \set PianoStaff.connectArpeggios = ##t + \new Staff = "sixR" \with { + midiInstrument = "acoustic grand" + } \relative c'' \sixR + \new Staff ="sixL" \with { + midiInstrument = "acoustic grand" + } { \relative c' \sixL } + >> + >> + \layout { + indent = 0 + \context { + \Score \omit BarNumber + } + \context { + \Staff \RemoveEmptyStaves + \override Glissando.minimum-length = #4 + \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods + \override Glissando.thickness = #2 + \override VerticalAxisGroup.remove-first = ##t + } + } +} + +sevenR = \relative c'' { + \global + \key g \major + \time 2/4 + + b4 d8-. d-. | g-. g-. b4-> | \repeat unfold 2 { d16 c d c a8-. r | } | +} + +sevenL = \relative c' { + \global + \key g \major + \time 2/4 + \clef bass + + \repeat unfold 2 { q q q } | + \repeat unfold 2 { \override NoteHead.color = "dodgerblue" q q q \revert NoteHead.color } | +} + +\score { + << + \new PianoStaff << + \set PianoStaff.connectArpeggios = ##t + \new Staff = "sevenR" \with { + midiInstrument = "acoustic grand" + } \relative c'' \sevenR + \new Staff ="sevenL" \with { + midiInstrument = "acoustic grand" + } { \relative c' \sevenL } + >> + >> + \layout { + indent = 0 + \context { + \Score \omit BarNumber + } + \context { + \Staff \RemoveEmptyStaves + \override Glissando.minimum-length = #4 + \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods + \override Glissando.thickness = #2 + \override VerticalAxisGroup.remove-first = ##t + } + } +} + + +eightR = \relative c'' { + \global + \key ef \minor + \time 3/4 + + << + { \partial 4 bf4 ~ | bf8 ef df4-> cf8 bf | af cf f,4 bf4-> ~ | bf s2 | } \\ + { \partial 4 s4 | gf4 g2 | s2. | gf4 } + >> +} + +eightL = \relative c' { + \global + \key ef \minor + \time 3/4 + \clef bass + + \partial 4 r4 + << + { ef,,4 bf''-> cf8 df | cf af d4 bf | ef s2 | } \\ + { s4 ef,2 ~ | ef2. ~ | ef2. | } + >> +} + +\score { + << + \new PianoStaff << + \set PianoStaff.connectArpeggios = ##t + \new Staff = "eightR" \with { + midiInstrument = "acoustic grand" + } \relative c'' \eightR + \new Staff ="eightL" \with { + midiInstrument = "acoustic grand" + } { \relative c' \eightL } + >> + >> + \layout { + indent = 0 + \context { + \Score \omit BarNumber + } + \context { + \Staff \RemoveEmptyStaves + \override Glissando.minimum-length = #4 + \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods + \override Glissando.thickness = #2 + \override VerticalAxisGroup.remove-first = ##t + } + } +} + + +nineR = \relative c'' { + \global + \key bf \major + \time 3/4 + + \partial 4 r4 | + f8-.[ r16 f]( e4 df8 c | bf8)[ r16 df]( c4\prall bf8)[ r16 e,]( | + f'8-.)[ r16 f]( e4 df8 c) | \tuplet 3/2 { bf8 c bf } e,2( | f'8-!) s8 s2 | +} + +nineL = \relative c' { + \global + \key bf \major + \time 3/4 + \clef bass + + \partial 4 bf4 | + + \repeat unfold 4 { 4-.( q-. q-.) | } | + q4-. s2 | +} + +\score { + << + \new PianoStaff << + \set PianoStaff.connectArpeggios = ##t + \new Staff = "nineR" \with { + midiInstrument = "acoustic grand" + } \relative c'' \nineR + \new Staff ="nineL" \with { + midiInstrument = "acoustic grand" + } { \relative c' \nineL } + >> + >> + \layout { + indent = 0 + \context { + \Score \omit BarNumber + } + \context { + \Staff \RemoveEmptyStaves + \override Glissando.minimum-length = #4 + \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods + \override Glissando.thickness = #2 + \override VerticalAxisGroup.remove-first = ##t + } + } +} + +tenR = \relative c'' { + \global + \key a \minor + \time 3/4 + + \tuplet 3/2 { a8 b a } gs4( a | b-.) e2-> | + b8( g! e b' ds,4 | e2) s4 | + +} + +tenL = \relative c' { + \global + \key a \minor + \time 3/4 + \clef bass + + r4 4( a,) | r4 ( b) | + r4 | e, s4 | +} + +\score { + << + \new PianoStaff << + \set PianoStaff.connectArpeggios = ##t + \new Staff = "tenR" \with { + midiInstrument = "acoustic grand" + } \relative c'' \tenR + \new Staff ="tenL" \with { + midiInstrument = "acoustic grand" + } { \relative c' \tenL } + >> + >> + \layout { + indent = 0 + \context { + \Score \omit BarNumber + } + \context { + \Staff \RemoveEmptyStaves + \override Glissando.minimum-length = #4 + \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods + \override Glissando.thickness = #2 + \override VerticalAxisGroup.remove-first = ##t + } + } +} + +elevenR = \relative c'' { + \global + \key a \major + \time 3/4 + + \partial 4 r8 8 | + \tuplet 3/2 { -.( -. -.) } 4 -> | + \tuplet 3/2 { 8-.( -. -.) } 4^"back to the beginning" \key a \minor e'4( | + + f8. e16 d4 f4 | f2-> e4) | \tuplet 3/2 { d16( e d } cs8 d ds e b | d!2 c!4) | +} + +elevenL = \relative c { + \global + \key a \major + \time 3/4 + \clef bass + + \partial 4 e4( | + a d,) d,( | e ) \key a \minor r4 | + r4 -.( q-.) | r4 -.( -.) | + r4 -.( q-.) | r4 a,( ) | +} + +\score { + << + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((extra-offset . (0 . 2))) + \new PianoStaff << + \set PianoStaff.connectArpeggios = ##t + \new Staff = "elevenR" \with { + midiInstrument = "acoustic grand" + } \relative c'' \elevenR + \new Staff ="elevenL" \with { + midiInstrument = "acoustic grand" + } { \relative c' \elevenL } + >> + >> + \layout { + indent = 0 + \context { + \Score \omit BarNumber + } + \context { + \Staff \RemoveEmptyStaves + \override Glissando.minimum-length = #4 + \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods + \override Glissando.thickness = #2 + \override VerticalAxisGroup.remove-first = ##t + } + } +} + +twelveR = \relative c'' { + \global + \key f \minor + \time 3/4 + + \partial 4 af4( | + f8-!)[ r16 g]( af8 bf c af) | \tuplet 3/2 { g8( af g } f4-!) c'-> | + \acciaccatura { c8 } c,8[ r16 d]( ef8 f g b,) | c4. c8 df!8->\prall[ r16 c(] | \partial 4 f8-!) s8 | +} + +twelveL = \relative c, { + \global + \key f \minor + \time 3/4 + \clef bass + + \partial 4 4\arpeggio | + \repeat unfold 2 { r4 \arpeggio q | } + r4 | r4 \arpeggio \arpeggio | + \partial 4 r4 | +} + +\score { + << + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((extra-offset . (0 . 4))) + \new PianoStaff << + \set PianoStaff.connectArpeggios = ##t + \new Staff = "twelveR" \with { + midiInstrument = "acoustic grand" + } \relative c'' \twelveR + \new Staff ="twelveL" \with { + midiInstrument = "acoustic grand" + } { \relative c' \twelveL } + >> + >> + \layout { + indent = 0 + \context { + \Score \omit BarNumber + } + \context { + \Staff \RemoveEmptyStaves + \override Glissando.minimum-length = #4 + \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods + \override Glissando.thickness = #2 + \override VerticalAxisGroup.remove-first = ##t + } + } +} + + +thirteenR = \relative c'' { + \global + \key af \major + \time 3/4 + + << + { + gf'8( f ef f df4 | bf8 ef bf c af4) | gf'8( f ef f df4 | bf8 ef af, c df4)( | + gf8-. f-. ef-. f-. df-. af-. | bf-. ef-. bf-. c-. af-. af'-. | gf-. f-. ef-. f-. df-. af-. | bf ef af, c df4) | + } \\ + { + gf,4 gf f-> | g! gf gf-> | gf gf f-> | g! gf f-> | + gf gf f | g! gf gf | gf gf f | g! gf f | + } + >> +} + +thirteenL = \relative c { + \global + \key af \major + \time 3/4 + \clef bass + + \repeat unfold 2 { + 4 q | | + 4 q | + } + \alternative { + { } + { } + } +} + +\score { + << + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((extra-offset . (0 . 5))) + \new PianoStaff << + \set PianoStaff.connectArpeggios = ##t + \new Staff = "thirteenR" \with { + midiInstrument = "acoustic grand" + } \relative c'' \thirteenR + \new Staff ="thirteenL" \with { + midiInstrument = "acoustic grand" + } { \relative c' \thirteenL } + >> + >> + \layout { + indent = 0 + \context { + \Score \omit BarNumber + } + \context { + \Staff \RemoveEmptyStaves + \override Glissando.minimum-length = #4 + \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods + \override Glissando.thickness = #2 + \override VerticalAxisGroup.remove-first = ##t + } + } +} + +fourteenR = \relative c'' { + \global + \key af \major + \time 3/4 + + << + { + 8( 4) ( | 2 4) | 8( 4) | + } \\ + { + e2 fs4 | e2. | e2 fs4 | + } + >> + + << + { \override Stem.direction = #up e'2.\fermata } \\ + { \override Stem.direction = #up \once \override NoteColumn.force-hshift = #0.5 2 bf!4-> } \\ + { \stemDown e,2._\fermata | } + >> + + \tuplet 3/2 { af!8 bf af } g( af bf c!) | + \tuplet 3/2 { df ef df } c( df) ef4->( | \partial 8 af8) | +} + +fourteenL = \relative c { + \global + \key af \major + \time 3/4 + \clef bass + + 2 4 | 2. | a'2 4 | 2\fermata 4-> | \bar "||" + 4( -> q | | \partial 8 8) | +} + +\score { + << + \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((extra-offset . (0 . 5))) + \new PianoStaff << + \set PianoStaff.connectArpeggios = ##t + \new Staff = "fourteenR" \with { + midiInstrument = "acoustic grand" + } \relative c'' \fourteenR + \new Staff ="fourteenL" \with { + midiInstrument = "acoustic grand" + } { \relative c' \fourteenL } + >> + >> + \layout { + indent = 0 + \context { + \Score \omit BarNumber + } + \context { + \Staff \RemoveEmptyStaves + \override Glissando.minimum-length = #4 + \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods + \override Glissando.thickness = #2 + \override VerticalAxisGroup.remove-first = ##t + } + } +} diff --git a/2022-projects/03-chopin-mazurkas-01.pdf b/2022-projects/03-chopin-mazurkas-01.pdf new file mode 100644 index 0000000..08b3675 Binary files /dev/null and b/2022-projects/03-chopin-mazurkas-01.pdf differ diff --git a/2022-projects/04-rf3-iron-forge.ly b/2022-projects/04-rf3-iron-forge.ly new file mode 100644 index 0000000..c29f2d8 --- /dev/null +++ b/2022-projects/04-rf3-iron-forge.ly @@ -0,0 +1,240 @@ +\include "articulate.ly" + +\version "2.22.1" +\language "english" + +#(set-global-staff-size 18) + +\header { + title = "Rogue Fable III - The Iron Forge" + composer = "music by Nooskewl Games (https://nooskewl.com)" + tagline = "" + arranger = "transcribed by Tommy Montgomery (https://tmont.com)" +} + +\paper { + % system-system-spacing = #'((basic-distance . 0.1) (padding . 4)) +} + +global = { + \set Staff.printKeyCancellation = ##f + \numericTimeSignature + \compressEmptyMeasures + \override TupletBracket #'bracket-visibility = #'if-no-beam + \override MultiMeasureRest.expand-limit = #3 + \override Score.ChordName.font-name = #"Noto Serif" + \override Score.ChordName.font-size = #0 + \override Score.LyricText.font-name = #"Noto Serif" + \override Score.LyricText.font-size = #0 + \key d \minor + \tempo 4 = 124 +} + +sawHighMainRiff = \relative c { + d8 a'-. f-. a-. c, a'-. f-. a-. | + bf, bf'-. f-. bf-. c, g'-. e-. g-. | + d a'-. f-. a-. c, a'-. f-. a-. | + bf, bf'-. a-. g-. c, g'-. f-. e-. | +} + +sawtoothHigh = \relative c { + \global + \clef bass + + \sawHighMainRiff + \break + + % bass enters + \repeat unfold 2 { \sawHighMainRiff } + + % lead enters + \repeat volta 2 { \sawHighMainRiff } + + \sawHighMainRiff + + \repeat volta 2 { + \repeat unfold 2 { + r8 a'-. f-. a-. r f-. d-. f-. | + r d c d r d-. r4 | + } + } + + % all notes staccato + \repeat unfold 2 { + d8-. a'-. f-. a-. c,-. a'-. f-. a-. | + bf,-. bf'-. f-. bf-. c,-. g'-. e-. g-. | + d-. a'-. f-. a-. c,-. a'-. f-. a-. | + bf,-. bf'-. a-. g-. c,-. g'-. f-. e-. | + } + + \bar "|." +} + +sawLowMainRiff = \relative c, { + d4 r8 c ~ c r8 r4 | bf4 r8 bf c c bf c | + d4 r8 c ~ c r8 r4 | bf4 r8 c ~ c8 g' f e | +} + +sawtoothLow = \relative c, { + \global + \clef bass + + R1*4 | + + \repeat unfold 2 { \sawLowMainRiff } + + \repeat volta 2 \sawLowMainRiff + + \sawLowMainRiff + + \repeat volta 2 { + d4 r8 bf8 ~ bf bf c bf | + g4 r8 g8 ~ g r g' f | + d4 r8 bf8 ~ bf bf c bf | + g4 r8 g8 ~ g r bf4 | + } + + \repeat unfold 2 { + d4 r4 r2 | bf'8 r r g r g f e | + d4 r4 r2 | bf'8r r c r2 | + } +} + +mainDrumBeatKickSnare = \drummode { + bd4 sn8 bd r bd sn4 | bd4 sn8 bd r bd sn bd | + bd4 sn8 bd r bd sn4 | bd4 sn8 bd r bd sn sn | +} + +percussion = \drummode { + \global + R1*8 | + + \stemDown + + \mainDrumBeatKickSnare + + + \repeat volta 2 { + << + { \repeat unfold 32 { hh8 } } \\ + { \mainDrumBeatKickSnare } + >> + } + + << + { \repeat unfold 32 { hh8 } } \\ + { \mainDrumBeatKickSnare } + >> + + \repeat volta 2 { + << + { \repeat unfold 32 { hh8 } } \\ + { \mainDrumBeatKickSnare } + >> + } + + << + { \repeat unfold 32 { hh8 } } \\ + { \mainDrumBeatKickSnare } + >> + + << + { \repeat unfold 16 { hh8 } | r4 hh8 hh hh hh r4 } \\ + { + bd4 sn8 bd r bd sn4 | bd4 sn8 bd r bd sn bd | + bd4 sn8 bd r bd sn4 | + } + >> + + bd4 r8 bd r2 | +} + +lead = \relative c'' { + \global + + R1*12 | + + + \repeat volta 2 { + a8( g f e f d4. ~ | d4. a'8)-. g( f e c) | + a'( g f e f d4.) | bf'4( a8 g ~ g2) | + } + d1 ~ | d2 r2 | R1*2 | + + \repeat volta 2 { + d'8( a g a g4\glissando a8 f | + d2 ~ d8 d)-. f( g) | + d'( a g a f'4. e8 | + d1) | + } + + R1*8 | +} + +leadStaff = \new Staff \with { + instrumentName = "Lead" + midiInstrument = #"lead 8 (bass+lead)" + midiMinimumVolume = #0.6 + midiMaximumVolume = #0.6 +} { + \lead +} + +highSawStaff = \new Staff \with { + instrumentName = "Saw" + midiInstrument = #"lead 2 (sawtooth)" + midiMinimumVolume = #0.8 + midiMaximumVolume = #0.8 +} { + \sawtoothHigh +} + +lowSawStaff = \new Staff \with { + instrumentName = "Bass" + midiInstrument = #"lead 8 (bass+lead)" + midiMinimumVolume = #0.6 + midiMaximumVolume = #0.6 +} { + \sawtoothLow +} + +drumStaff = \new DrumStaff \with { + instrumentName = "Drums" + midiMinimumVolume = #0.9 + midiMaximumVolume = #0.9 +} { + \percussion +} + +\score { + << + \leadStaff + \highSawStaff + \lowSawStaff + \drumStaff + >> + \layout { + \context { + \Score \omit BarNumber + } + \context { + % \Staff \RemoveEmptyStaves + \override Glissando.minimum-length = #4 + \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods + \override Glissando.thickness = #2 + \override VerticalAxisGroup.remove-first = ##t + } + } +} + +\score { + \articulate \unfoldRepeats { + << + \leadStaff + \highSawStaff + \lowSawStaff + \drumStaff + >> + } + \midi {} +} diff --git a/2022-projects/04-rf3-iron-forge.pdf b/2022-projects/04-rf3-iron-forge.pdf new file mode 100644 index 0000000..df9135e Binary files /dev/null and b/2022-projects/04-rf3-iron-forge.pdf differ diff --git a/2022-projects/04-rf3-main-dungeon.ly b/2022-projects/04-rf3-main-dungeon.ly new file mode 100644 index 0000000..5da0262 --- /dev/null +++ b/2022-projects/04-rf3-main-dungeon.ly @@ -0,0 +1,178 @@ +\include "articulate.ly" + +\version "2.22.1" +\language "english" + +#(set-global-staff-size 18) + +\header { + title = "Rogue Fable III - Main Dungeon" + composer = "music by Nooskewl Games (https://nooskewl.com)" + tagline = "" + arranger = "transcribed by Tommy Montgomery (https://tmont.com)" +} + +\paper { + % system-system-spacing = #'((basic-distance . 0.1) (padding . 4)) +} + +global = { + \set Staff.printKeyCancellation = ##f + \numericTimeSignature + \compressEmptyMeasures + \override TupletBracket #'bracket-visibility = #'if-no-beam + \override MultiMeasureRest.expand-limit = #3 + \override Score.ChordName.font-name = #"Noto Serif" + \override Score.ChordName.font-size = #0 + \override Score.LyricText.font-name = #"Noto Serif" + \override Score.LyricText.font-size = #0 + \key e \minor + \tempo 4 = 94 +} + +elecPiano = \relative c'' { + \global + + \repeat unfold 2 { + e16( fs e d e8) b e b c b | + a'16( b a g a8) e r2 | + } + + \repeat unfold 2 { + e16( fs e d e8) b r b c b | + a'16( b a g a8) e r2 | + } + + e16( fs e d e8) b r b c b | R1 | + e,16( fs g b e8)-. b-. g-. fs-. g( b)-. | + c16( d c b a8)-. g-. a-. b-. c-. b-. | + e,16( fs g b e8)-. fs-. g-. fs-. e-. b'-. | + c16( b a g fs8)-. a-. g-. a16( g fs8)-. d-. | + e8 r8 r4 r2 | R1 | + + \bar "|." +} + +bass = \relative c, { + \global + \clef bass + + \repeat unfold 8 { + e2. g4 | a2 c4 b | + } +} + +drumkit = \drummode { + \global + + \stemDown + + \repeat unfold 2 { + bd4 sn bd sn | + bd sn bd sn8 sn | + } + + \repeat unfold 5 { + << + { + \override NoteHead.font-size = #-3 tommh16 16 16 16 8 8 \revert NoteHead.font-size hh8 hh r4 | + \override NoteHead.font-size = #-3 tomh16 16 16 16 8 8 \revert NoteHead.font-size hh8 hh r4 | + } \\ + { bd4 sn bd sn | bd sn bd sn8 sn | } + >> + } + + << + { + \override NoteHead.font-size = #-3 tommh16 16 16 16 8 8 \revert NoteHead.font-size hh8 hh r4 | + \override NoteHead.font-size = #-3 tomh16 16 16 16 8 8 \revert NoteHead.font-size r2| + } \\ + { + bd4 sn bd sn | + bd4 sn bd16 bd bd8 r4 | + } + >> +} + +lead = \relative c'' { + \global + + e2 r4 g | a2 r2 | e2 r4 b'4 | a4 r8 e ~ e4 r | + \repeat unfold 2 { + b'16 a g fs e4 r8 fs g4 | + c16 b c8 a4 r2 | + } + + e2 r2 | R1 | R1*6 | + +} + +leadStaff = \new Staff \with { + instrumentName = "Lead" + midiInstrument = #"pad 1 (new age)" + midiMinimumVolume = #.5 + midiMaximumVolume = #.5 +} { + \lead +} + +elecPianoStaff = \new Staff \with { + instrumentName = "E. Piano" + midiInstrument = #"electric piano 1" + midiMinimumVolume = #0.5 + midiMaximumVolume = #0.5 +} { + \elecPiano +} + +bassStaff = \new Staff \with { + instrumentName = "Bass" + midiInstrument = #"electric bass (finger)" + midiMinimumVolume = #0.9 + midiMaximumVolume = #0.9 +} { + \bass +} + +drumStaff = \new DrumStaff \with { + instrumentName = "Drums" + %midiInstrument = #"tr-808 kit" + midiMinimumVolume = #0.8 + midiMaximumVolume = #0.8 +} { + \drumkit +} + +\score { + << + \leadStaff + \elecPianoStaff + \bassStaff + %\percussionStaff + \drumStaff + >> + \layout { + \context { + \Score \omit BarNumber + } + \context { + % \Staff \RemoveEmptyStaves + \override Glissando.minimum-length = #4 + \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods + \override Glissando.thickness = #2 + \override VerticalAxisGroup.remove-first = ##t + } + } +} + +\score { + \articulate \unfoldRepeats { + << + \leadStaff + \elecPianoStaff + \transpose c c, \bassStaff + \drumStaff + >> + } + \midi {} +} diff --git a/2022-projects/04-rf3-main-dungeon.pdf b/2022-projects/04-rf3-main-dungeon.pdf new file mode 100644 index 0000000..3e6b3af Binary files /dev/null and b/2022-projects/04-rf3-main-dungeon.pdf differ diff --git a/2022-projects/04-rf3-main-menu.ly b/2022-projects/04-rf3-main-menu.ly new file mode 100644 index 0000000..6dad595 --- /dev/null +++ b/2022-projects/04-rf3-main-menu.ly @@ -0,0 +1,262 @@ +\include "articulate.ly" + +\version "2.22.1" +\language "english" + +#(set-global-staff-size 18) + +\header { + title = "Rogue Fable III - Main Menu" + composer = "music by Nooskewl Games (https://nooskewl.com)" + tagline = "" + arranger = "transcribed by Tommy Montgomery (https://tmont.com)" +} + +\paper { + % system-system-spacing = #'((basic-distance . 0.1) (padding . 4)) +} + +global = { + \set Staff.printKeyCancellation = ##f + \numericTimeSignature + \compressEmptyMeasures + \override TupletBracket #'bracket-visibility = #'if-no-beam + \override MultiMeasureRest.expand-limit = #3 + \override Score.ChordName.font-name = #"Noto Serif" + \override Score.ChordName.font-size = #0 + \override Score.LyricText.font-name = #"Noto Serif" + \override Score.LyricText.font-size = #0 + \key c \minor + \tempo 4 = 140 +} + +elecPiano = \relative c' { + \global + + \repeat unfold 2 { + c8 c c' c, c c c' c, | + af af af' af, af af' af af, | + c' c, c c' c c, ef' ef, | + f f f' f, f f f f | + g, g g' g, g g' g g, | + f' f, f f' g g, g g' | + g, g' g g, g g g' g, | + g g' g g, g' g, g g | + + ef' ef ef ef ef ef ef ef | + d d' bf, bf' g, g bf bf' | + c, c c c c'4 c,8 c | + bf' bf, bf bf' bf, bf bf'4 | + + af,8 af af af af' af, af' af, | + bf bf bf bf g g bf bf | + c c c'4 ~ c8 c, c c' | + c, c c' c, c c' c c, | + } + +} + +bass = \relative c { + \global + \clef bass + + \repeat unfold 2{ + c2. ef4 | af,1 | c2. ef4 | f2. r4 | + g2 r2 | f2 bf, | g1 ~ | g4 r r2 | + ef'2. r4 | d4 bf g bf | c1 | bf1 | + af1 | bf2 g4 bf | c2. ~ c8 bf | c1 | + } + + \bar "|." +} + +drumkit = \drummode { + \global + + \stemDown + + \repeat unfold 15 { + << + { r8 hh hho4 r8 hh hh hh | } \\ + { bd4 bd bd bd | } + >> + } + + << + { r8 hh hho4 r8 hho8 hho4 | } \\ + { bd8 sn sn bd bd sn8 sn sn16 sn | } + >> + + \repeat unfold 3 { + << + { r8 hh hho8 hh16 hh r8 hh hh hh | } \\ + { bd4 sn bd sn | } + >> + } + + << + { r8 hh hho8 hh16 hh r8 hh hh hh | } \\ + { bd4 sn bd sn8 sn16 sn | } + >> + + << + { r8 hh hho8 hh16 hh r8 hh hh hh | } \\ + { bd4 sn bd sn4 | } + >> + + << + { r8 hh hho4 r8 hh hh hh | } \\ + { bd4 sn8 sn16 sn bd4 sn4 | } + >> + + << + { r8 hh hho8 hh16 hh r8 hh hh hh | } \\ + { bd4 sn bd sn4 | } + >> + + << + { r8 hh hho8 hh16 hh r8 hh hh r8 | } \\ + { sn4 sn sn16 sn sn8 sn8 sn16 sn | } + >> + + \repeat unfold 3 { + << + { r8 hh hho8 hh16 hh r8 hh hh hh | } \\ + { bd4 sn bd sn | } + >> + } + + << + { r8 hh hho8 hh16 hh r8 hh hh hh | } \\ + { bd4 sn bd sn8 sn16 sn | } + >> + + << + { r8 hh hho8 hh16 hh r8 hh hh hh | } \\ + { bd4 sn bd sn | } + >> + + << + { r8 hh hho8 hh16 hh r8 hh hh hh | } \\ + { bd4 sn bd sn8 sn | } + >> + + << + { r8 hh hho8 hh16 hh r8 hh hh hh | } \\ + { sn8 sn bd4 bd bd | } + >> + + << + { r8 hh hho8 hh16 hh r8 hho hho hh | } \\ + { bd4 bd bd bd | } + >> +} + +lead = \relative c'' { + \global + + g'1 | ef1 | bf'2 c4 bf | af2 g4 af | + g1 | f4 bf c bf | + << + \new CueVoice { \stemUp r4 d8-. ef-. f-. ef-. d-. ef-. | d16( ef d8) r4 } \\ + { g,1 ~ | g2 } + >> r2 | + + ef4 g bf g | d1 | c1 ~ | c2 r2 | + ef4 c' ef c | d ef f d | c1 | R1 | \break \bar "||" + + g1 | ef1 | bf'2 c4 bf | af2 g4 af | + g1 | f4 bf c bf | + g1 ~ | g2 r2 | + + ef4 g bf g | d1 | c1 ~ | c2 r2 | + ef4 c' ef c | d ef f d | c1 | R1 | +} + +pluckedLead = \relative c'' { + \global + + R1*16 | + + c8 g c d ef2 | ef8 f ef d c4 g' | + bf2 c4 af16 bf af g | af4 ef d bf | + + g4. g'16 a bf8 a g4 | f,2 r2 | R1*2 | + ef4. g'16 a bf8 a g4 | d,2 r2 | R1*2 | +} + +leadStaff = \new Staff \with { + instrumentName = "Lead" + midiInstrument = #"lead 8 (bass+lead)" + midiMinimumVolume = #.5 + midiMaximumVolume = #.5 +} \lead + +pluckedLeadStaff = \new Staff \with { + instrumentName = "Lead 2" + midiInstrument = #"sitar" + midiMinimumVolume = #.7 + midiMaximumVolume = #.7 +} \pluckedLead + +elecPianoStaff = \new Staff \with { + instrumentName = "E. Piano" + midiInstrument = #"electric piano 1" + midiMinimumVolume = #0.5 + midiMaximumVolume = #0.5 +} { + \elecPiano +} + +bassStaff = \new Staff \with { + instrumentName = "Bass" + midiInstrument = #"electric bass (finger)" + midiMinimumVolume = #0.9 + midiMaximumVolume = #0.9 +} { + \bass +} + +drumStaff = \new DrumStaff \with { + instrumentName = "Drums" + midiMinimumVolume = #0.8 + midiMaximumVolume = #0.8 +} { + \drumkit +} + +\score { + << + \leadStaff + \pluckedLeadStaff + \elecPianoStaff + \bassStaff + \drumStaff + >> + \layout { + \context { + \Score \omit BarNumber + } + \context { + % \Staff \RemoveEmptyStaves + \override Glissando.minimum-length = #4 + \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods + \override Glissando.thickness = #2 + \override VerticalAxisGroup.remove-first = ##t + } + } +} + +\score { + \unfoldRepeats { + << + \leadStaff + \pluckedLeadStaff + \elecPianoStaff + \transpose c c, \bassStaff + \drumStaff + >> + } + + \midi {} +} diff --git a/2022-projects/04-rf3-main-menu.pdf b/2022-projects/04-rf3-main-menu.pdf new file mode 100644 index 0000000..c28bf8e Binary files /dev/null and b/2022-projects/04-rf3-main-menu.pdf differ