Support for MML music notation format.

Discussion in 'Other' started by Havoc1337, Dec 6, 2013.

  1. Havoc1337

    Havoc1337 Scruffy Nerf-Herder

    Dear Starbound Devs!

    I love the fact that there is a music system like this in this game, and seeing how many instruments you implemented, it also seems to be an important point to you.

    However, I personally find the abc notation quite bad, and while many won't agree with me, I am sure some share this opinion.
    I understand that this won't be a priority in development, especially not during the busy beta, but I'd like you to consider adding support for MML notation, which is technically superior to abc in many ways.
    MML notation is easier and faster to write and the conversion to and from midi is much smoother and suffers from less losses(usually none) than the conversion to abc.
    It's been pointed out to me, that the fault lies mostly with the programs available for ABC and also how the midi synth currently works in Starbound. While this may be true, it doesn't change the fact that MML is still easier to use and better suited for a game than ABC. ABC is larger and more complex than MML but it in turn has more things than midi actually needs.

    Allow me to explain, to the layman, what ABC and MML are and what they do.

    Unlike us humans(Apex, Hylotl etc...), both Computers and Glitch, are unable to easily read and understand sheet music.
    We write music with dots on 5 lines and decorate them with fancy accessories because some guy a long time ago decided that's how it's going to work. Personally, I think it's a bit crap, and it's the reason why some people just don't get into playing an instrument, but nothing we can do about that, really.
    Now to allow computers to read music, groups of people came up with a bunch of different ideas how we can translate our sheet music into something a computer would understand. Thus they created "languages" using letters and symbols in ASCII. (Don't quote me on this, I may just be making this up)
    Anyway, there is that MIDI thing, Musical Instrument Digital Interface, a thing from the 1970's, which gave our earliest games actual music. Great! MIDI are basically digital instruments synthesized by the computer, with a file telling them which notes to play and when and how. Basically .mid or .midi files.
    But MIDI can also play based on instructions from notations like ABC and MML.


    So what does this have to do with Starbound?

    The Devs of Starbound went through the trouble of building some kind of MIDI synthesizer into their game engine and put ~25 or so instruments into the game. Then for some reason they decided to let .abc files with the ABC notation control the whole thing.
    It was a likely choice, ABC is a common western notation standard, also used in the popular(?, citation needed) MMO "Lord of the Rings Online", whereas MML originated in Japan and is more widely used there, for example in the MMO "Mabinogi".


    Why change? Or why add MML if we already have ABC?

    Sure, ABC has some advantages, it has a standard, it has a format that can be put into a file and read out easily by the engine.
    It's more known and widespread in the western world, but aside from LotRO, it's pretty dead.
    And while ABC may seem neat at first, its original purpose is not what Starbound is using it for.
    ABC Notation is generally just that, it's a form of Sheet Music you can quickly write on your computer(or even calculator), it was not designed to instruct MIDI.

    Music Macro Language on the other hand was made just for that. Instructing machines to play music.
    It's formless and can be displayed as a single string, it can change tempo, note duration and volume at any moment.
    It's easy to learn and write, and MIDI files can convert directly into MML and vice versa.


    Here is a great example of the advantages of MML over ABC:
    I took a midi file from VGMusic.com, Bolero of Fire from Legend of Zelda:OoT
    You can grab it for comparison here: http://www.vgmusic.com/music/console/nintendo/n64/OoTBoF.mid

    The MIDI has 8 Tracks.
    [​IMG]

    In the following I will demonstrate converting that midi to both MML and ABC with the currently best tools provided, and upload the resulting midi files from both "experiments".
    In order to convert the MIDI to MML, I use the 3ML Editor 2, it's a free and extremely powerful tool for midi<->MML conversion.
    [​IMG]
    It allows you to export the generated MML notation in 3 differently formatted plain texts straight to your clipboard.

    I added a few line breaks and here is what I got:
    Code:
    t122r1r1r1r1r1r1t122r8t120t120r8t118r8t117t116r8t116r8t115t113r8t113r8t112t110r8t109r8t108t107r8t106r8t105t104r8t104r8t103t102r8t101r8t100t98r8t97r8t96t96r8t94r8t93t93r8t91r8t90t89r8t89r8t88t87
    46v1150091219322v11f8d8f8d8a8f8a8f2&f8r1r2g8e8g8e8a+8g8a+8g2&g8a8f8a8f8>d8<a8>d8<a8>f8d8f8d8a8e8a8e8g8c+8g8c+8f8<a8f8e8d8f+8>d8>d8a8
    79v1270091219322r1r2v11>f8d8f8d8a8f8a8f8r2g8e8g8e8a+8g8a+8g8
    0v970091239321v11f8d8f8d8a8f8a8f2&f8r1r2g8e8g8e8a+8g8a+8g2&g8a8f8a8f8>d8<a8>d8<a8>f8d8f8d8a8e8a8e8g8c+8g8c+8f8<a8f8e8d8f+8>d8>d8a8
    48v100101050091649362r1r1r1v11<g8e8g8e8a+8g8a+8g8r2a8f8a8f8>d8<a8>d8<a8>f8d8f8d8a8e8a8e8g8c+8g8c+8f8<a8f8e8a1&a2v9v8v7v6v5v4v3v2v1v0
    48v11010210091669363r1r1r1r1r1r2v54v11>f8v58v59v60d8v65v66v67f8v72v73v74d8v78v79v80v81c+8v85v86v87v88e8v92v93v94v95c+8v99v100v101e8v106v107v108<a+8c+8a+8c+8a8a8f8e8<d1&d2v9v8v7v6v5v4v3v2v1v0
    45v69101050091619361v11o2d4r4>d4r4<a4r4d4r4>d4r4<a4r4g4r4>e4r4<a+4r4d4r4>d4r4<a4r4g4r4>e4r4<a+4
    32v97101050091199320v11o1d4r4>>a4r4<a4r4<d4r4>>a4r4<a4r4<g4r4>>e4r4<a+4r4<d4r4>>a4r4<a4r4<g4r4>>e4r4<a+4
    Each line corresponds to one of the 8 tracks from the midi.

    The output midi file can be heard here: https://www.dropbox.com/s/y9831ar9lq45ovr/OoTBoFMML.mid


    Let's move on to ABC.
    Now, using Maestro, the Midi2ABC tool made for LotRO, you can also load midi files and export an ABC file.
    When loading the freshly created ABC file we see that the notation has merged the 8 tracks into one.
    [​IMG]
    Which in itself is not a big problem, MIDI synthesizers can handle that.

    Unfortunately maestro does not export MIDI files from abc notations, therefore there will be no sample of how it sounds, but you can all try it out for yourselves. If you want to take my word for it, let's say some notes are off-key and the score now has some odd pauses caused by notes not being of the proper length.
    The ABC notation we get looks like this:
    Code:
    X: 1
    T: OoTBoF (0:17) - Lute
    %%part-name Lute
    M: 4/4
    Q: 122
    K: C maj
    
    +ff+ [D,-F,-f] [D,F,-d] [D,/-F,/f/-] [D,/4f/4-] +mp+ [D,/4-f/4] +ff+ [D,/4d/4-] +mp+ [D,3/4d3/4] +ff+ [D,-D-A-a] [D,D-A-f] [D,/-D/A/a/-] [D,/4a/4-] +mp+
        [D,/4-a/4] +ff+ [D,/4f/4-] +mp+ [D,3/4f3/4-] |
    [D,2A,2-F2-f2-] [D,/-A,/F/f/-] [D,3/2f3/2] +fff+ [D,-F,-f] [D,F,-d] [D,/-F,/f/-] [D,/4f/4] +mp+ D,/4- +fff+ [D,/4d/4-] +mp+ [D,3/4d3/4] |
    +fff+ [D,-D-A-a] [D,3/4-D3/4-A3/4-f3/4] [D,/4D/4-A/4-] [D,/-D/A/a/-] [D,/4a/4-] +mp+ [D,/4-a/4] +fff+ [D,/4f/4-] +mp+ [D,3/4f3/4-] [D,/-A,/-F/-f/]
        [D,/4A,/4-F/4-] [D,/A,/-F/-] [D,3/4A,3/4-F3/4-] [D,/-A,/F/] D,/4 D,/ D,3/4 |
    +ff+ [D,-E,-G,-Gg] [D,E,-G,-Ee] [D,/-E,/G,/G/-g/-] [D,/4G/4-g/4-] +mp+ [D,/4-G/4g/4] +ff+ [D,/4E/4-e/4-] +mp+ [D,3/4E3/4e3/4] +ff+ [D,-E-^A-^a] [D,E-GAg]
        [D,/-E/A/-a/-] [D,/4A/4-a/4-] +mp+ [D,/4-A/4a/4] +fff+ [D,/4G/4-g/4-] +mp+ [D,3/4G3/4g3/4-] |
    [D,2^A,2-G2-g2-] [D,/-A,/G/g/-] [D,3/2g3/2] +ff+ [D,-F,-Aa] [D,F,-Ff] [D,/-F,/A/-a/-] [D,/4A/4-a/4-] +mp+ [D,/4-A/4a/4] +ff+ [D,/4F/4-f/4-] +mp+ [D,3/4F3/4f3/4] |
    +ff+ [D,-D-Ad] [D,D-A-a] [D,/-D/A/d/-] [D,/4d/4-] +mp+ [D,/4-d/4] +ff+ [D,/4A/4-a/4-] +mp+ [D,3/4A3/4a3/4] +ff+ [D,3/4A,3/4-F3/4-f3/4-a3/4-] +mp+
        [D,/4-A,/4-F/4-f/4a/4] +ff+ [D,/4A,/4-F/4-d/4-f/4-] +mp+ [D,3/4A,3/4-F3/4-d3/4f3/4] +ff+ [D,/-A,/F/f/-a/-] [D,/4f/4-a/4-] +mp+ [D,/4-f/4a/4] +ff+
        [D,/4d/4-f/4-] +mp+ [D,3/4d3/4f3/4] |
    +ff+ [D,-E,-G,-^ca] [D,E,-G,-ea] [D,/-E,/G,/c/-a/-] [D,/4c/4-a/4-] +mp+ [D,/4-c/4a/4] +ff+ [D,/4e/4-a/4-] [e/4-a/4-] +mp+ [D,/e/a/] +ff+ [D,-E-^A-g^a]
        [D,/4-E/4-A/4-] [D,E-A-ce] [D,/-E/A/g/-a/-] [D,/4g/4-a/4-] +mp+ [D,/4-g/4a/4] +ff+ [D,/c/-e/-] +mp+ [D,/4-c/4-e/4-] |
    [D,/4^c/4e/4] z/4 +ff+ [D,-^A,-G-fa] [D,A,GAda] [D,5/4-F5/4A5/4f5/4] [D,-E-G-e] [D,/4D/4E/4^F/4-G/4A/4-] [D,/-D/-F/-A/d/-] [D,/-D/-F/-A/-d/]
        [D,3/4-D3/4-F3/4-A3/4-d3/4-] [D,/D/-F/-A/-d/-^f/] [D/-F/-A/-d/-a/] [D/4-F/4-A/4-d/4] |
    [D/-^F/-A/-d/-] [D/-F/-A/-d/a/] [D3/4-F3/4-A3/4-d3/4-] [D/-F/-A/-d/-^f/] [D3/4-F3/4-A3/4-d3/4a3/4] [D/-F/-A/-d/-] [z9/2D9/2-F9/2-A9/2-d9/2-] |
    [z8D17/4^F4A4d17/4] |]
    When you try to play the abc file ingame however, the synthesizer just craps itself and completely discards tempo and note lengths altogether. Not sure why, maybe because ABC is information-sensitive, maybe the way LotRO reads ABC files is different from the way Starbound does it, point is, it doesn't work.

    Another tool we can use is EasyABC...
    [​IMG]
    Or as I like to call it... the Butcher: https://www.dropbox.com/s/3d5pmpx9lxs2q1x/OoTBoFABC.mid

    The way it interprets the ABC notation is also vastly different from Maestro.
    Code:
    X:1
    T:Ootbof
    M:3/4
    L:1/8
    K:Dm
    [FFF,,D,,F,,,D,,,D,,][DD] [F/F/D,,/]D,,/[DD]D,,/ [AAA,D,D,A,D,,][FF] | [A/A/D,,/]D,,/[F/F/]D,,/ [F,2A,,2F,2A,,2D,,2] D,,2 | [fF,,D,,F,,,D,,,D,,]d [f/D,,/]D,,/dD,,/ [aA,D,D,A,D,,]f | [a/D,,/]D,,/f/D,,/ [F,/A,,/F,/A,,/D,,/](3D,,D,,D,,D,,/D,,/ | [GgGG,E,,G,,E,,,G,,,D,,][EeEE,] [G/g/G/G,/D,,/]D,,/[EeEE,]D,,/ [BbBB,B,E,B,E,D,,][GgGG,] |
    [B/b/B/B,/D,,/]D,,/[G/g/G/G,/]D,,/ [G,2B,,2G,2B,,2D,,2] D,,2 | [AAA,F,,D,,F,,,D,,,D,,][FFF,] [A/A/A,/D,,/]D,,/[FFF,]D,,/ [ddDA,D,D,A,D,,][AAA,] | [d/d/D/D,,/]D,,/[AAA,]D,,/ [f/f/F/A/f/F,/A,,/F,/A,,/D,,/]D,,/[ddDFd]D,,/ [f/f/F/A/f/D,,/]D,,/[ddDFd]D,,/ | [aaAa^cE,,G,,E,,,G,,,D,,][eeEAe] [a/a/A/a/c/D,,/]D,,/[eeEAe]D,,/ [ggGgBB,E,B,E,D,,][ccCcEC] |
    [g/g/G/g/B/D,,/]D,,/[^ccCcEC]D,,/ [ffFfAG,B,,G,B,,D,,][AAA,DA] [FFF,A,FD,,][EEE,G,E] [^F,0A,0A,0F,0D,0] | [DDDD,DD,,][A,/A,/][D/D/][^F/F/] [A/A/A/][d/d/][a/a/][d'/d'/] [f'/f'/][a'/a'/][d''/d''/] |
    
    As you see it cannot handle the amount of tracks at all and just outputs a mess.


    What do we learn from that?

    Starbound seems to use some kind of MIDI for the instruments you can play in it, ABC is not designed to instruct MIDI devices, MML is. MML is basically always the same, and it needs no formatting, ABC on the other hand seems to be extremely sensitive to it. MML is much easier to use in this case, and I think more people could get into making music in Starbound with that language.

    To sum it up:

    • MML is more efficient and easier to learn than ABC.
    • ABC was invented by a guy who couldn't write regular notation so he decided to write music with letters instead.
    • MML was invented to specifically instruct MIDI. (Which is the instruments you hear in-game)
    • MML does not require German-language keyboard users to break their fingers. ABC does.
    • ABC Standard v2.1 requires a 14 chapter manual. (or this list of syntax alternatively)
    • MML can be learned with just a single table.
    • You can convert all your MIDI files with ease and no losses or compromises into MML.



    Still not convinced?
    What's wrong with you?
    But fine! Here have a WONDERFUL presentation of how MML-MIDI implementation works in a game released 2004.

    Find more here:
    and

    Big thanks to @Rydian for uploading these.


    If you like this idea, then actually "LIKE" this post and spread the word, tweet at the devs and make it known that you would like to have MML notation support in Starbound.
    We're still in the beta, and we, the beta testers, can still help shape the game to exceed its potential.


    Since MML notation can be written in a single line, it would be an option to simply paste the notation into a prompt in-game, without the need of adding files into the game folder.

    Here's a simple mock up of what a part of it could look like:
    [​IMG]


    (Btw, I'm not saying remove the abc notation from the game, I'm just saying: why not have both and use the one you like?)


    EDIT: I'd also like to point out, especially to my German friends reading this, and anyone using a German language keyboard layout, that actually typing ABC notation is the biggest pain on those keyboards.
    The most used symbols in abc notation are brackets ], [, and slash /, and while regular qwerty keyboards have
    the brackets nice and easy next to the enter key, and the slash directly next to the right shift key, German layouts need the most awkward combination of holding the AltGr modifier and pressing 8 and 9 for the brackets and Shift+7 for the slash. If you don't have a Germany layout, good for you, but now just try pressing these combinations 100 times and see how that feels.
    Sure, you can switch to a different layout for songwriting, but what kind of BS is that?
     
    Last edited: Dec 9, 2013
    Meyling, Evor, BloodyRain2k and 53 others like this.
  2. Raybrandt

    Raybrandt Jackpot!

    As great as MML is, reposting from the other thread:
    "Trust me, dude, I've been railing Bartwe for over a year for it. I've actually been told to go make an MML to ABC converter in response."
    (was probably a joke but yeah)
    And before we can even get MML, we'd have to fix the issues with ABC, because it clearly has them right now.
     
  3. Havoc1337

    Havoc1337 Scruffy Nerf-Herder

    I think the main problem is that most people don't really know how awful ABC is, and don't know the difference of Music Macro Language.
    After all, both do essentially the same, they control the in-engine MIDI synthesizer. Except that ABC is impossibly convoluted and broken and MML is clean, easy to write and understand, incredibly easy to convert from and into MIDI.. maybe I should add those points to the original post...
     
    Disethas and Hoxalicious like this.
  4. Treadlight

    Treadlight Existential Complex

    I wholly agree with you.
    I also love the way you worded it: Easily understandable by an average forum goer, while it still has all of the technical information that may be necessary for people like me.

    EDIT: Oh great, the Xenforo update kind of broke spoiler tags. Oh well, it at least mostly works.
     
  5. Rydian

    Rydian Big Damn Hero

    As a Mabi player who carries around two score scroll bags just for all the music I like... I support this movement!

    There's a gigantic library of already-existing MML notation for all sorts of songs!
     
  6. Zack5777

    Zack5777 Space Spelunker

    A die-hard Mabi bard here who would also like MML to be a supported notation. After mucking around with abc for a couple of hours this morning I am rather frustrated at trying to get things to sound as they should and miss the elegance and ease of MML.
     
  7. Havoc1337

    Havoc1337 Scruffy Nerf-Herder

    Thanks guys! I figured this might catch the eye of mabinogi and ex-mabinogi players. I just hope there will be more.

    Make sure to click "Like" on the main post to help get it going so we can catch more attention from people who enjoy writing music in games.

    I've added a neat bullet-point sum-up to the post and a green block of text for people using keyboards with German layout, I don't know how many Germans play Starbound and are interested in the music system, but I found out that ABC could be a real annoyance for them.
     
  8. Tremendo Dude

    Tremendo Dude Pangalactic Porcupine

    I wholeheartedly second this. I've worked with MML before and it's been rather user friendly, especially considering I was using an old version of the 3MLE editor. ABC's output looks rather convoluted and unintuitive in comparison.
     
  9. Raybrandt

    Raybrandt Jackpot!

    Yeah, hi. Main reason I took up MML.

    None of my shit works in this game, either, when I import it into ABC format. It's so horrendously broken. And MML is so, so superior. Even has PROPER MULTIPLE TRACKS PLAYING AT ONCE OH MY GOD SO GOOD
     
  10. Fracture

    Fracture Scruffy Nerf-Herder

    'Nother old Mabi veteran pitching in, very much hoping we get MML support. I have literally hundreds of my favourite songs in MML format for playing in Mabinogi and it'd be awesome to be able to use those here (and know how to write music here!).

    Any of you folks from Ruairi, by the by?
     
    RatixFarrence, kfaj and Britefire like this.
  11. Britefire

    Britefire Supernova

    I personally think this would be an astounding idea, as the abc file format has been a pain to work with in my opinion, MML would be nice to have access to.
     
  12. Xenowar

    Xenowar Poptop Tamer

    This would be wonderful. I was only able to convert one song flawlessly to the abc format (and I did about 40).
    Love the feature! Improve on it!
     
    Britefire likes this.
  13. LtGeneral Andrew

    LtGeneral Andrew Tentacle Wrangler

    I would prefer MML Notation over ABC notation any day.
    I feel as if ABC notation is a bit over complicated and a tad too touchy with formatting.
     
  14. BPLevia

    BPLevia Void-Bound Voyager

    This is more a fault on the programs than ABC notation isn't it? I've played mabinogi for at least 5 years on Mari server and messed quite a bit with the music playing. I found MML just as bad as ABC in converting MIDI. So regardless, some editing is required just to get it properly played. I took a look at the Bolero of Fire track and was able to convert it cleanly using MIdi2abc.

    X:1
    T:OoTBoF
    I:abc-version 2.1
    I:abc-creator MidiZyx2abc 3.02
    I:linebreak $
    M:C
    L:1/8
    Q:1/4=122
    I:score Harp Oc Piano [ Str Str2 Pizz ] Bass Prc
    K:C
    V:Harp name="Harp"
    %%MIDI program 46 % Harp
    FDFDAFAF-| F4z4| z8| GEGE_BGBG-| G4AFAF| dAdAfdfd| aeaeg^cgc| fAFED/-[DA,]/D/_G/[AA]/d/a/d'/| % 8
    ^f'/a'/d''z6|] % 9
    V:Oc name="Oc."
    %%MIDI program 79 % Ocarina
    z8| z4fdfd| afaf3/z7/| gege_bgbg-| gz7| z8| z8| z8| z8|] % 9
    V:piano name="Piano"
    %%MIDI program 0 % Grand Piano
    FDFDAFAF-| F4z4| z8| GEGE_BGBG-| G4AFAF| dAdAfdfd| aeaeg^cgc| fAFED/-[DA,]/D/_G/A/d/a/d'/| % 8
    ^f'/a'/d''z6|] % 9
    V:Str name="Str."
    %%MIDI program 48 % Strings
    z8| z8| z8| G,E,G,E,_B,G,B,G,-| G,z3A,F,A,F,| DA,DA,FDFD| AEAEG^CGC| % 7
    FA,F,(3:2:2E,5/4-[E,A,-_G,-]/4[G,-A,-D-D,-]4| [D,DA,G,]8|] % 9
    V:Str2 name="Str."
    %%MIDI program 48 % Strings
    z8| z8| z8| z8| z8| z4[fA][dF][fA][dF]| [^ca][eA][ca][eA][_Bg][^CEc][Bg][CEc]| % 7
    [Af][AD][FA,](3:2:2[E-G,-]5/4[G,ED,-^F,-A,-]/4[A,-F,-D,-D-]4| [DD,F,A,]8|] % 9
    V:pizz name="Pizz."
    %%MIDI program 45 % Pizzicato Str.
    [D,,F,,]5/z3/[D,A,]5/z3/| [A,,F,]5/z3/[D,,F,,]5/z3/| [D,A,]5/z3/[A,,F,]5/z3/| % 3
    [G,,E,,]5/z3/[E,_B,]5/z3/| [_B,,G,]5/z3/[D,,F,,]5/z3/| [D,A,]5/z3/[A,,F,]5/z3/| % 6
    [G,,E,,]5/z3/[E,_B,]5/z3/| [_B,,G,]2z6| z8|] % 9
    V:Bass name="Bass"
    %%MIDI program 32 % Acoustic Bass
    [D,,,F,,,]5/z3/[A,D,]5/z3/| [A,,F,]5/z3/[D,,,F,,,]5/z3/| [A,D,]5/z3/[A,,F,]5/z3/| % 3
    [G,,,E,,,]5/z3/[E,_B,]5/z3/| [_B,,G,]5/z3/[D,,,F,,,]5/z3/| [A,D,]5/z3/[A,,F,]5/z3/| % 6
    [G,,,E,,,]5/z3/[E,_B,]5/z3/| [_B,,G,]2z6| z8|] % 9
    V:prc name="Prc."
    %%MIDI program 0
    %%MIDI channel 10 % percussion/drums
    D,,2(3D,,D,,D,,D,,2(3D,,D,,D,,| D,,2D,,2D,,2(3D,,D,,D,,| D,,2(3D,,D,,D,,(3D,,D,,D,,(3D,,D,,D,,| % 3
    D,,2(3D,,D,,D,,D,,2(3D,,D,,D,,| D,,2D,,2D,,2(3D,,D,,D,,| D,,2(3D,,D,,D,,(3D,,D,,D,,(3D,,D,,D,,| % 6
    D,,2(3D,,D,,D,,D,,2(3D,,D,,D,,| D,,2D,,2D,,2z2| z8|] % 9


    I stuck that into EasyABC and was able to play the song with no problems. I did the same in 3MLE imported the MIDI on there and it played just like the EasyABC version. So I don't see as much of an advantage in MML aside from the fact that songs are readily available albeit ofc in Mabi format 1 Melody 2 Harmony. Correct me if I'm wrong, but I don't believe MML reads chords or simultaneous notes where as ABC does? So you have to set it up something like CEG on 3 seperate tracks rather than a single one? Tried this with both Revolutionary Etude and Guren no Yumiya. Put first into 3MLE and then put into Midi2ABC and copying the ABC notation and pasting it into EasyABC. ABC clearly has the advantage.

    So I give you that EasyABC isn't exactly the best way to convert MIDI files, but I would use a different program for that such as Midi2ABC then using the notation there to put into EasyABC. I wouldn't mind switching to MML as I have a lot of music already available, but ABC seems to be more friendly at least IMO like look at this version of Twinkle Twinkle Little Star MIDI conversion into ABC


    X:1
    T:Twinkle Twinkle Little Star
    I:abc-version 2.1
    I:abc-creator MidiZyx2abc 3.02
    I:linebreak $
    M:C
    L:1/8
    Q:1/4=110
    I:score {Piano | Piano2 | Piano3}
    K:C
    V:piano name="Piano"
    %%MIDI program 0 % Grand Piano
    C,G,E,G,C,G,E,G,| F,,F,D,F,F,,F,D,F,| C,-[C,G,]E,(3:2:2D7/4C,5/4EC,E| % 3
    D,A,F,A,G,,-[G,,B,-][B,F,]B,| C,G,E,G,C,G,E,G,| F,,A,F,A,C,-[C,C-][CE,]C| % 6
    F,,A,F,A,C,-[C,C-][CE,]C| G,,-[G,,D-][DG,]DC,G,E,G,| B,/G/E/G/B,/G/E/G/D/A/F/A/D/A/F/A/| % 9
    C/G/E/G/C/G/E/G/D/B/G/B/D/B/G/B/| B,/G/E/G/B,/G/E/G/D/A/F/A/D/A/F/A/| % 11
    C/G/E/G/C/G/E/G/D/B/G/B/D/B/G/B/| C,G,E,G,C,-[C,_B,-][B,E,]B,| % 13
    F,,-[F,,C-][CF,]CC,-[C,C-][CE,]C| F,,-[F,,C-][CF,]CC,-[C,C-][CE,]C| % 15
    G,,-[G,,B,-][B,F,]B,C,G,E,G,| [C-C,-E,-G,-]8| [G,E,C,C]63/8|] % 18
    V:piano2
    %%MIDI program 0 % Grand Piano
    z8| z8| z8| z8| C2C2G2G2| A2A2G4| F2F2E2E2| D2D3/z9/| G2G2F2F2| [EE]2E2D4| G2G2F2F2| E2E2D4| % 12
    C2C2G2G2| A2A2G4| F2F2E2E2| D2D2C4| z8| z63/8|] % 18
    V:piano3
    %%MIDI program 0 % Grand Piano
    z8| z8| z8| z8| E,2E,2E2E2| F2F2E4| A,2A,2C2C2| B,2B,2E,4| E2E2D2D2| [CC]2C2B,4| E2E2D2D2| % 11
    C2C2B,4| E,2E,2E2E2| F2F2E4| A,2A,2C2C2| B,2B,2E,4| z8| z63/8|] % 18


    Here is the 3 tracks with notes on them in 3MLE


    TRACK ONE
    // Piano (B:cool:

    /*M 0 */ V97y10,64y91,84y93,33@0v9<c8v8g8v9e8g8c8g8e8g16.r32
    /*M 1 */ <f8v8>f8v9d8f8<f8>f8d8f16.r32
    /*M 2 */ c8&c32r16.v10e8v8>d8<c8v9>e8v8<c8v9>e8
    /*M 3 */ <d8a8f8a16.r32<g8&g32r16.v10>f16.r32v8b8
    /*M 4 */ v9c8v8g8v9e8g8c8g8e8g16.r32
    /*M 5 */ <f8>a8f8a16.r32c8&c32r16.v10e16.r32v8>c8
    /*M 6 */ v9<<f8>a8f8a16.r32c8&c32r16.v10e16.r32v8>c8
    /*M 7 */ v9<<g8&g32r16.v10>g16.r32v8>d8v9<c8g8e8g16.r32
    /*M 8 */ v10b16v9>g16v10e16g16<b16>g16v11e16g16v10d16v9a16v10f16a16d16a16v11f16
    /*M 8 */ a16
    /*M 9 */ v10c16v9g16v10e16g16c16g16v11e16g16v10d16v9b16v10g16b16d16b16v11g16b16
    /*M 10 */ v10<b16v9>g16v10e16g16<b16>g16v11e16g16v10d16v9a16v10f16a16d16a16v11f16
    /*M 10 */ a16
    /*M 11 */ v10c16v9g16v10e16g16c16g16v11e16g16v10d16v9b16v10g16b16d16b16v11g16b16
    /*M 12 */ v9<c8g8e8g16.r32c8&c32r16.v10e16.r32v8a+8
    /*M 13 */ v9<f8&f32r16.v10>f16.r32v8>c8v9<c8&c32r16.v10e16.r32v8>c8
    /*M 14 */ v9<<f8&f32r16.v10>f16.r32v8>c8v9<c8&c32r16.v10e16.r32v8>c8
    /*M 15 */ v9<<g8&g32r16.v10>f16.r32v8b8v9c8g8e8g16.r32
    /*M 16 */ >c1&
    /*M 17 */ c2.&c8.&c32

    TRACK TWO
    // Voice 1 (Melody)

    /*M 0 */ V127y10,64y91,95y93,26@0r1
    /*M 1 */ r1
    /*M 2 */ r1
    /*M 3 */ r1
    /*M 4 */ v5c8.&c32r32v8c8.&c32r32v9g8.&g32r32v10g8.&g32r32
    /*M 5 */ v11a8.&a32r32a8.&a32r32v7g4.&g32r16.
    /*M 6 */ v8f8.&f32r32f8.&f32r32v7e8.&e32r32e8.&e32r32
    /*M 7 */ d8.r16d8.r2r16
    /*M 8 */ v12g8.&g32r32v10g8.&g32r32v8f8.&f32r32f8.r16
    /*M 9 */ v7e8.&e32r32e8.&e32r32d4.&d32r16.
    /*M 10 */ v11g8.&g32r32v9g8.&g32r32v8f8.&f32r32v7f8.&f32r32
    /*M 11 */ v6e8.r16e8.r16d4.&d32r16.
    /*M 12 */ v7c8.&c32r32v9c8.&c32r32v10g8.&g32r32v11g8.&g32r32
    /*M 13 */ a8.&a32r32v12a8.&a32r32v10g4.&g32r16.
    /*M 14 */ v9f8.&f32r32v8f8.&f32r32v7e8.&e32r32e8.&e32r32
    /*M 15 */ d8.&d32r32d8.&d32r32c4.&c16.

    TRACK THREE
    // Voice 2 (Harmony)

    /*M 0 */ V127y10,64y91,95y93,26@0r1
    /*M 1 */ r1
    /*M 2 */ r1
    /*M 3 */ r1
    /*M 4 */ v8<e8.&e32r32v6e8.&e32r32>e8.&e32r32v7e8.&e32r32
    /*M 5 */ v8f8.&f32r32v9f8.&f32r32v8e4.&e32r16.
    /*M 6 */ v6<a8.&a32r32a8.&a32r32>c8.&c32r32c8.&c32r32
    /*M 7 */ <b8.r16b8.r16e4.&e32r16.
    /*M 8 */ v9>e8.&e32r32v8e8.&e32r32v7d8.&d32r32d8.r16
    /*M 9 */ c8.&c32r32v6c8.&c32r32<b4.&b32r16.
    /*M 10 */ v9>e8.&e32r32v8e8.&e32r32v7d8.&d32r32d8.&d32r32
    /*M 11 */ v6c8.r16c8.r16<b4.&b32r16.
    /*M 12 */ v5e8.&e32r32v6e8.&e32r32v7>e8.&e32r32e8.&e32r32
    /*M 13 */ v8f8.&f32r32v10f8.&f32r32v9e4.&e32r16.
    /*M 14 */ v8<a8.&a32r32v7a8.&a32r32v6>c8.&c32r32c8.&c32r32
    /*M 15 */ <b8.&b32r32b8.&b32r32e4.&e16.


    C2C2G2G2 seems to be much simpler than v5c8.&c32r32v8c8.&c32r32v9g8.&g32r32v10g8.&g32r32

    edit: lol those smilies also forgot to mention that although still not as small as Mabi's here's a simplified version of the syntax for ABC as well as a simple how to for most everything http://abcwiki.selfthinker.org/abc:syntax
     
    Last edited: Dec 8, 2013
  15. LtGeneral Andrew

    LtGeneral Andrew Tentacle Wrangler

    Well you have 4 calls for volume there and that code isn't optimized. (Think you enabled "Velocity" when importing your midi.)
    v5c8.l32&crv8c8.&crv9g8.&grv10g8.&gr = v5c8.&c32r32v8c8.&c32r32v9g8.&g32r32v10g8.&g32r32

    In addition, as you pointed out earlier "C2C2G2G2" has no controls for volume whatsoever.
    So your bass will be just as loud as your melody.
    Not to mention, you can't change your tempo in the middle of your song unless you do it in a really roundabout way.

    Also, I agree that a large portion of the problem comes from Starbound itself.
    If you try playing this in EasyABC or Maestro, it will sound fine. (imported using Maestro and edited to work with EasyABC)
    However, this does not sound the same in Starbound.


    Code:
    X: 1
    T:God Knows... (4:35) - Lute
    M:4/4
    Q:150
    L:1/8
    K:C#m
    e3/2 z/ e3/2 z/ e3/2 z/ e3/2 z/ | [E,/-A,/-^g/] [E,/-A,/a/] [E,/-A,/-^c/] [E,/-A,/^f/] [E,/-A,/-a/] [E,/-A,/c/] [E,/-A,/-e/] [E,/-A,/a/] [E,/-A,/-c/] [E,/-A,/f/] [E,/A,/-a/] [A,/c/] [E,/-A,/-e/] [E,/-A,/a/] [E,/A,/-f/] [A,/a/] | [^F,/-B,/-^g/] [F,/-B,/b/] [F,/-B,/-^c/] [F,/-B,/^f/] [F,/-B,/-b/] [F,/-B,/c/] [F,/-B,/-e/] [F,/-B,/b/] [F,/-B,/-c/] [F,/-B,/f/] [F,/B,/-b/] [B,/c/] [F,/-B,/-e/] [F,/-B,/b/] [F,/B,/-f/] [B,/b/] | [^D,/-^G,/-^g/] [D,/-G,/b/] [D,/-G,/-^c/] [D,/-G,/^f/] [D,/-G,/-b/] [D,/-G,/c/] [D,/-G,/-e/] [D,/-G,/b/] [D,/-G,/-c/] [D,/-G,/f/] [D,/G,/-b/] [G,/c/][D,/-G,/-e/] [D,/G,/b/] [G,/-^d/] [G,/b/] | [^C,^G,-^C-^d] [C,G,-C-e] [C,/-G,/-C/-d/] [C,/G,/-C/-d/e/] [C,G,-C-b-] [C,G,-C-b] [C,/-G,/C/^c/] [C,/b/] [C,/-G,/-C/-d/] [C,/G,/-C/-b/] [C,/-G,/C/e/] [C,/b/] |
    [E,/-A,/-^g/] [E,/-A,/a/] [E,/-A,/-^c/] [E,/-A,/^f/] [E,/-A,/-a/] [E,/-A,/c/] [E,/-A,/-e/] [E,/-A,/a/] [E,/-A,/-c/] [E,/-A,/f/] [E,/-A,/-a/] [E,/-A,/c/]
    [E,/-A,/-e/] [E,/-A,/a/] [E,/A,/-f/] [A,/a/] | [^F,/-B,/-^g/] [F,/-B,/b/] [F,/-B,/-^c/] [F,/-B,/^f/] [F,/-B,/-b/] [F,/-B,/c/] [F,/-B,/-e/] [F,/-B,/b/] [F,/-B,/-c/] [F,/-B,/f/] [F,/-B,/-b/] [F,/-B,/c/]
    [F,/-B,/-e/] [F,/-B,/b/] [F,/B,/-f/] [B,/b/] | [^C,/-^G,/-^C/-^g/] [C,/G,/-C/-e/^f/] [C,/-G,/-C/-g/] [C,/G,/-C/-e/f/] [C,/-G,/-C/-g/] [C,/G,/-C/-e/f/] [C,/-G,/-C/-g/] [C,/G,/-C/-e/f/] [C,/-G,/-C/-g/]
    [C,/G,/-C/-e/f/] [C,/-G,/-C/-g/] [C,/G,/-C/-e/f/] [C,/-G,/-C/-g/] [C,/G,/-C/-e/f/] [C,/-G,/C/g/] [C,/e/f/] |
    [^C,/-^G,/-^g/] [C,/-G,/^f/] [C,/-G,/-^C/-e/] [C,/-G,/C/^d/] [C,/-G,/-C/-g/] [C,/-G,/C/f/] [C,/-G,/-C/-e/] [C,/-G,/C/d/] [C,/-G,/-C/-g/] [C,/-G,/C/f/]
    [C,/-G,/-C/-e/] [C,/-G,/C/d/] [C,/-G,/-C/-e/] [C,/-G,/C/d/] [C,/G,/-C/-b/] [G,/C/g/] |
    [E,/-A,/-^g/] [E,/-A,/a/] [E,/-A,/-^c/] [E,/-A,/^f/] [E,/-A,/-a/] [E,/-A,/c/] [E,/-A,/-e/] [E,/-A,/a/] [E,/-A,/-c/] [E,/-A,/f/] [E,/A,/-a/] [A,/c/] [E,/-A,/-e/]
    [E,/-A,/a/] [E,/A,/-f/] [A,/a/] | [^F,/-B,/-^g/] [F,/-B,/b/] [F,/-B,/-^c/] [F,/-B,/^f/] [F,/-B,/-b/] [F,/-B,/c/] [F,/-B,/-e/] [F,/-B,/b/] [F,/-B,/-c/] [F,/-B,/f/] [F,/B,/-b/] [B,/c/]
    [F,/-B,/-e/] [F,/-B,/b/] [F,/B,/-f/] [B,/b/] | [^D,/-^G,/-b/] [D,/-G,/^d/] [D,/-G,/-^g/] [D,/-G,/b/] [D,/-G,/-d/] [D,/-G,/g/] [D,/-G,/-b/] [D,/-G,/b/] [D,/-G,/-d/] [D,/-G,/b/] [D,/-G,/-g/] [D,/-G,/b/]
    [D,/-G,/-^f/] [D,/-G,/b/] [D,/G,/-g/] [G,/b/] | [^C,/-^G,/-^C/-^f/] [C,/G,/-C/-b/] [C,/-G,/-C/-^c/] [C,/G,/-C/-e/] [C,/-G,/-C/-b/] [C,/G,/-C/-c/] [C,/-G,/-C/-f/] [C,/G,/-C/-b/] [C,/-G,/-C/-^d/] [C,/G,/-C/-b/]
    [C,/-G,/-C/-c/] [C,/G,/-C/-e/] [C,/-G,/-C/-b/] [C,/G,/-C/-c/] [C,/-G,/C/f/] [C,/b/] |
    [E,/-A,/-^g/] [E,/-A,/a/] [E,/-A,/-^c/] [E,/-A,/^f/] [E,/-A,/-a/] [E,/-A,/c/] [E,/-A,/-e/] [E,/-A,/a/] [E,/-A,/-c/] [E,/-A,/f/] [E,/A,/-a/] [A,/c/] [E,/-A,/-e/]
    [E,/-A,/a/] [E,/A,/-f/] [A,/a/] | [^F,/-B,/-^g/] [F,/-B,/b/] [F,/-B,/-^c/] [F,/-B,/^f/] [F,/-B,/-b/] [F,/-B,/c/] [F,/-B,/-e/] [F,/-B,/b/] [F,/-B,/-c/] [F,/-B,/f/] [F,/B,/-b/] [B,/c/]
    [F,/-B,/-e/] [F,/-B,/b/] [F,/B,/-f/] [B,/b/] | [^C,/-^G,/-^C/-^g/] [C,/G,/-C/-e/^f/] [C,/-G,/-C/-g/] [C,/G,/-C/-e/f/] [C,/-G,/-C/-g/] [C,/G,/-C/-e/f/] [C,/-G,/-C/-g/] [C,/G,/-C/-e/f/] [C,/-G,/-C/-g/]
    [C,/G,/-C/-e/f/] [C,/-G,/-C/-g/] [C,/G,/-C/-e/f/] [C,/-G,/C/g/] [C,/e/f/] [C,/-G,/-g/] [C,/G,/e/f/] |
    [^C^cf] [C^f] [C=f] [Cc-] [C/-c/] C/ [Cc-] [Cc-] [^G,/-c/] G,/ | [^C,^G,-^C-e-^g-] [C,/-G,/-C/-e/g/-] [C,/G,/-C/-g/-] [C,G,-C-eg-] [C,/-G,/-C/-^d/g/-] [C,/G,/-C/-e/-g/-] [C,G,-C-e-g-] [C,G,-C-e-g-] [C,G,-C-e-g-]
    [C,/-G,/C/e/-g/] [C,/e/-] | [^C,e-] [C,e-] [C,/-e/] C,/ [C,e] [C,^f] [C,e] [C,^d] [C,e] |
    [^F,-B,^d-^f-] [F,/-B,/-d/f/-] [F,/-B,/f/-] [F,-B,df-] [F,/-B,/-e/f/-] [F,/-B,/d/-f/-] [F,-B,d-f-] [F,-B,d-f-] [F,/-B,/-d/f/-] [F,/-B,/f/-] [F,/B,/-d/-f/]
    [B,/d/-] | [B,^d] [B,B-] [B,/-B/] B,/ [B,^F-] [B,/-F/] B,/ [B,F-B-d-] [B,F-B-d-] [B,/-F/B/d/] B,/ |
    [E,-A,^c-e-a-] [E,/-A,/-c/e/a/] [E,/-A,/] [E,-A,e] [E,/-A,/-^d/] [E,/-A,/e/-] [E,-A,e-] [E,-A,e-] [E,-A,e-] [E,/A,/-e/] A,/ |
    [^F,-B,^F-B-^d-] [F,-B,F-B-d-] [F,/-B,/-F/B/d/] [F,/-B,/] [F,-B,b] [F,-B,^f] [F,/B,/-e/-] [B,/e/] [B,f] [B,e] |
    [E,B,E^f-b-] [E,/-B,/-f/b/] [E,/B,/^g/-b/-] [E,B,gb] [E,B,g-b-] [E3/2g3/2-b3/2-] [g/-b/-] [^D,/-^A,/-^D/-g/b/] [D,/A,/D/] [D,a] |
    [^D,^A,^D^d-^g-] [D,A,d-g-] [Dd-g-] [D,/-A,/-d/g/] [D,/A,/] [^G,D^Gc-g-] [G,Dc-g-] [Gc-g-] [G,/-D/-c/g/] [G,/D/] |
    [^C,^G,-^C-^c-e-] [C,/-G,/-C/-c/e/] [C,/G,/-C/-] [C,G,-C-ce] [C,/-G,/-C/-^d/b/] [C,/G,/-C/-c/-e/-] [C,G,-C-c-e-] [C,/-G,/C/c/-e/-] [C,/c/-e/-] [C,G,-C-c-e-]
    [C,G,-C-c-e-] | [^C,^G,-^C-^c-e-] [C,G,-C-c-e-] [C,/-G,/-C/-c/e/] [C,/G,/-C/-] [C,G,-C-ce] [C,G,-C-^d^f] [C,/-G,/C/c/-e/-] [C,/c/e/] [C,G,-C-db] [C,/-G,/C/c/-e/-] [C,/c/e/] |
    [^F,-B,^d-b-] [F,/-B,/-d/b/] [F,/-B,/] [F,-B,db] [F,/-B,/-^c/e/] [F,/-B,/d/-b/-] [F,-B,d-b-] [F,/B,/-d/-b/-] [B,/d/-b/-] [F,/-B,/-d/b/] [F,/-B,/] [F,/-B,/-d/]
    [F,/-B,/e/] | [^F,/-B,/-^d/] [F,/-B,/e/] [F,/-B,/-d/] [F,/-B,/e/] [F,/-B,/-d/] [F,/-B,/e/] [F,/-B,/-d/] [F,/-B,/e/] [F,/-B,/-d/] [F,/-B,/e/] [F,/B,/-d/] [B,/e/] [F,/-B,/-d/]
    [F,/-B,/e/] [F,/B,/-d/] [B,/e/] | [E,-A,^c-e-] [E,/-A,/-c/e/] [E,/-A,/] [E,-A,ce] [E,/-A,/-^d/b/] [E,/-A,/c/-e/-] [E,-A,c-e-] [E,/A,/-c/-e/-] [A,/c/-e/-] [E,-A,c-e-] [E,/A,/-c/-e/-] [A,/c/-e/-] |
    [^F,-B,^c-e-] [F,-B,c-e-] [F,/-B,/-c/e/] [F,/-B,/] [F,-B,b] [F,-B,^f] [F,/B,/-e/-] [B,/e/] [F,-B,f] [F,/B,/-e/-] [B,/e/] |
    [E,B,E-^f-b-] [E,/-B,/-E/-f/b/] [E,/B,/E/-^g/-b/-] [E,/-B,/-E/g/-b/-] [E,/B,/g/b/] [E,B,E-g-b-] [E,B,E-g-b-] [E,/-B,/-E/g/b/] [E,/B,/] [E,/-B,/-E/-a/]
    [E,/B,/E/-g/] [E,/-B,/-E/a/] [E,/B,/g/] | [E,/-B,/-E/-a/] [E,/B,/E/^g/] [E,/-a/] [E,/g/] [B,/-E/-a/] [B,/E/g/] [E,/-a/] [E,/g/] [B,/-E/-a/] [B,/E/g/] [E,/-a/] [E,/g/] [B,EB-] [E,/-B/] E,/ |
    [E,-A,^c-^g-a-] [E,-A,c-g-a-] [E,-A,c-g-a-] [E,/-A,/-c/g/a/] [E,/-A,/] [E,3/2A,3/2c3/2-^f3/2-a3/2-] [c/-f/-a/-] [E,/-A,/-c/f/a/] [E,/-A,/] [E,/A,/-c/-a/-]
    [A,/c/-a/-] | [E,-A,^c-a-] [E,-A,c-a-] [E,/A,/-c/a/] A,/ [E,-A,c] [E,-A,-b] [E,/A,/a/-] a/ [E,-A,^g] [E,/A,/-a/-] [A,/a/] |
    [^D,-^G,^g-b-] [D,-G,g-b-] [D,/G,/-g/-b/-] [G,/g/-b/-] [D,/-G,/-g/b/] [D,/G,/] [D,3/2G,3/2^d3/2^f3/2] z/ [D,-G,g] [D,/G,/-f/-b/-] [G,/f/-b/-] |
    [^D,-^G,^fb] [D,/G,/-^g/-b/-] [G,/g/-b/-] [D,/-G,/-g/b/] [D,/-G,/] [D,/G,/-^d/-] [G,/d/-] [D,/-G,/-d/] [D,/-G,/] [D,/G,/-B/-] [G,/B/] [D,-G,^G] [D,/G,/-^c/-e/-]
    [G,/c/e/] | [^C,-^F,^ce] [C,-F,^db] [C,-F,ca] [C,/-F,/-d/b/] [C,/-F,/c/-e/-] [C,-F,c-e-] [C,/F,/-c/-e/-] [F,/c/-e/-] [C,/-F,/-c/e/] [C,/-F,/] [C,/F,/-c/-e/-] [F,/c/e/] |
    [E,-A,^ce] [E,-A,^db] [E,-A,ce] [E,/-A,/-d/^f/] [E,/-A,/c/-e/-] [E,-A,ce] [E,/A,/-e/-] [A,/e/] [E,-A,f-] [E,/A,/-f/] A,/ |
    [^D,-^G,^c^g-] [D,/-G,/-c/-g/] [D,/-G,/c/] [D,/G,/-c/-a/-] [G,/c/a/] [D,-G,cg-] [D,/G,/-c/-g/] [G,/c/] [D,-G,c-g-] [D,/-G,/-c/g/] [D,/-G,/-] [D,/G,/c/-g/-]
    [c/g/] | [^D,3/2-^G,3/2-^g3/2c'3/2] [D,/-G,/-] [D,3/2G,3/2e3/2] z/ [G,-^f] [G,/g/-] g/- [D,/-G,/-g/] [D,/-G,/-] [D,/G,/g/-] g/ |
    [E,-A,^c^ga] [E,-A,c^fa] [E,-A,cfa] [E,/-A,/-e/] [E,/-A,/c/-f/-a/-] [E,-A,cfa] [E,/A,/-c/-g/-a/-] [A,/c/-g/-a/-] [E,/-A,/-c/g/a/] [E,/-A,/] [E,/A,/-g/-] [A,/g/] |
    [^F,-B,^d^gb] [F,-B,^f] [F,-B,dfb] [F,/-B,/-e/] [F,/-B,/f/-] [F,-B,f] [F,/B,/-d/-g/-b/-] [B,/d/-g/-b/-] [F,/-B,/-d/g/b/] [F,/-B,/] [F,/B,/-d/-f/-b/-]
    [B,/d/-f/-b/-] | [^D,-^G,^d^fb] [D,-G,d^gb] [D,/G,/-d/-f/-b/-] [G,/d/f/b/] [D,-G,d-f-b-] [D,/-G,/-d/f/b/] [D,/-G,/] [D,/G,/-d/-g/-] [G,/d/-g/] [D,-G,db] [D,/G,/-^c/-e/-g/-]
    [G,/c/-e/-g/-] | [^C,^G,-^C-^ce^g] [C,G,-C-e-g-] [C,/-G,/-C/-e/g/] [C,/G,/-C/-] [C,G,-C-^d-^f-] [C,/-G,/-C/-d/f/] [C,/G,/-C/-] [C,/-G,/C/e/-g/-] [C,/e/g/] [C,G,-C-df]
    [C,/-G,/C/e/-] [C,/e/] | [^C,-^F,^c-a-] [C,-F,c-a-] [C,/-F,/-c/a/] [C,/-F,/] [C,-F,^g-a-] [C,-F,g-a-] [C,/F,/-g/-a/-] [F,/g/-a/-] [C,/-F,/-g/a/] [C,/-F,/] [C,/F,/-g/-] [F,/g/] |
    [^D,-^G,^f-b-] [D,/-G,/-f/b/] [D,/-G,/] [D,-G,^g-b-] [D,/G,/-g/b/] G,/ [D,-G,^d-b-] [D,/G,/-d/b/] G,/ [D,-G,g-b-] [D,/G,/-g/b/] G,/ |
    [^C,^G,-^C-^f-a-] [C,G,-C-f-a-] [C,G,-C-f-a-] [C,G,-C-f-a-] [C,G,-C-fa] [C,/-G,/C/e/-b/-] [C,/e/b/] [C,G,-C-fb] [C,/-G,/C/^g/-b/-] [C,/g/-b/-] |
    [^F,3/2-B,3/2-^g3/2b3/2] [F,/-B,/-] [F,/B,/e/-b/-] [e/-b/-] [E,/-B,/-E/-e/b/] [E,/B,/-E/-] [E,-B,-E-^fb] [E,/B,/E/g/-b/-] [g/-b/-] [E,/-B,/-E/-g/b/]
    [E,/-B,/-E/-] [E,/B,/E/g/-] g/ | [E,-A,^c^ga] [E,-A,c^fa] [E,-A,cfa] [E,/-A,/-e/] [E,/-A,/f/-] [E,-A,f] [E,/A,/-c/-g/-a/-] [A,/c/-g/-a/-] [E,/-A,/-c/g/a/] [E,/-A,/] [E,/A,/-^d/-g/-b/-]
    [A,/d/g/b/] | [^F,-B,^d^gb] [F,-B,d^fb] [F,-B,dfb] [F,/-B,/-e/] [F,/-B,/f/-] [F,-B,f] [F,/B,/-d/-g/-b/-] [B,/d/-g/-b/-] [F,/-B,/-d/g/b/] [F,/-B,/] [F,/B,/-d/-f/-b/-]
    [B,/d/-f/-b/-] | [^D,-^G,^d^fb] [D,-G,d^gb] [D,/G,/-d/-f/-b/-] [G,/d/f/b/] [D,-G,d-f-b-] [D,/-G,/-d/f/b/] [D,/-G,/] [D,/G,/-d/-g/-] [G,/d/-g/] [D,-G,db] [D,/G,/-^c/-e/-g/-]
    [G,/c/-e/-g/-] | [^C,^G,-^C-^ce^g] [C,G,-C-e-g-] [C,/-G,/C/e/g/] C,/ [C,G,-C-^d-^f-] [C,/-G,/-C/-d/f/] [C,/G,/-C/-] [C,/-G,/C/e/-g/-] [C,/e/g/] [G,-C-df] [C,/-G,/C/e/-] [C,/e/] |
    [^C,-^F,^c-a-] [C,-F,c-a-] [C,/-F,/-c/a/] [C,/-F,/] [C,-F,c-^g-a-] [C,-F,c-g-a-] [C,/F,/-c/-g/-a/-] [F,/c/-g/-a/-] [C,/-F,/-c/g/a/] [C,/-F,/] [C,/F,/-g/-a/-]
    [F,/g/a/] | [^D,-^G,^f-b-] [D,/-G,/-f/b/] [D,/-G,/] [D,-G,^g-b-] [D,/G,/-g/b/] G,/ [D,-G,^d-b-] [D,/G,/-d/b/] G,/ [D,-G,g-b-] [D,/G,/-g/b/] G,/ |
    [E,-A,^f-a-] [E,-A,f-a-] [E,/-A,/-f/a/] [E,/-A,/] [E,-A,e-a-] [E,-A,e-a-] [E,/A,/-e/-a/-] [A,/e/-a/-] [E,-A,e-a-] [E,/A,/-e/a/] A,/ |
    [^F,-B,] [F,/B,/-] B,/ [F,-B,^g-b-] [F,/B,/-g/b/] B,/ [F,-B,^f-b-] [F,/B,/-f/b/] [B,/e/-b/-] [F,-B,eb] [F,/B,/-^d/-b/-] [B,/d/b/] |
    [^C,^G,-^C-^d-^f-] [C,G,-C-d-f-] [C,G,-C-d-f-] [C,G,-C-d-f-] [C,G,-C-d-f-] [C,/-G,/C/d/-f/-] [C,/d/-f/-] [C,G,-C-df] [C,/-G,/C/^c/-=f/-] [C,/c/f/] |
    [^C,^G,-^C-^c-f-] [C,G,-C-c-f-] [C,G,-C-c-f-] [C,G,-C-c-f-] [C,G,-C-c-f-] [C,/-G,/C/c/-f/-] [C,/c/-f/-] [C,G,-C-c-f-] [C,/-G,/C/c/f/] C,/ |
    [E,/-A,/-^g/] [E,/-A,/a/] [E,/-A,/-^c/] [E,/-A,/^f/] [E,/-A,/-a/] [E,/-A,/c/] [E,/-A,/-e/] [E,/-A,/a/] [E,/-A,/-c/] [E,/-A,/f/] [E,/A,/-a/] [A,/c/] [E,/-A,/-e/]
    [E,/-A,/a/] [E,/A,/-f/] [A,/a/] | [^F,/-B,/-^g/] [F,/-B,/b/] [F,/-B,/-^c/] [F,/-B,/^f/] [F,/-B,/-b/] [F,/-B,/c/] [F,/-B,/-e/] [F,/-B,/b/] [F,/-B,/-c/] [F,/-B,/f/] [F,/B,/-b/] [B,/c/][F,/-B,/-e/] [F,/-B,/b/] [F,/B,/-f/] [B,/b/] |
    [^D,/-^G,/-^g/] [D,/-G,/b/] [D,/-G,/-^c/] [D,/-G,/^f/] [D,/-G,/-b/] [D,/-G,/c/] [D,/G,/-e/] [G,/b/] [D,/-G,/-c/] [D,/-G,/f/] [D,/G,/-b/] [G,/c/] [D,/-G,/-e/]
    [D,/-G,/b/] [D,/G,/-^d/] [G,/b/] | [^C,^G,-^C-^d] [C,G,-C-e] [C,/-G,/-C/-d/] [C,/G,/-C/-d/e/] [C,G,-C-b-] [C,G,-C-b] [C,/-G,/C/^c/] [C,/b/] [C,/-G,/-C/-d/] [C,/G,/-C/-b/] [C,/-G,/C/e/] [C,/b/] |
    [E,/-A,/-^g/] [E,/-A,/a/] [E,/-A,/-^c/] [E,/-A,/^f/] [E,/-A,/-a/] [E,/-A,/c/] [E,/-A,/-e/] [E,/-A,/a/] [E,/-A,/-c/] [E,/-A,/f/] [E,/A,/-a/] [A,/c/] [E,/-A,/-e/]
    [E,/-A,/a/] [E,/A,/-f/] [A,/a/] | [^F,/-B,/-^g/] [F,/-B,/b/] [F,/-B,/-^c/] [F,/-B,/^f/] [F,/-B,/-b/] [F,/-B,/c/] [F,/-B,/-e/] [F,/-B,/b/] [F,/-B,/-c/] [F,/-B,/f/] [F,/B,/-b/] [B,/c/]
    [F,/-B,/-e/] [F,/-B,/b/] [F,/B,/-f/] [B,/b/] | [^C,/-^G,/-^C/-^g/] [C,/G,/-C/-e/^f/] [C,/-G,/-C/-g/] [C,/G,/-C/-e/f/] [C,/-G,/-C/-g/] [C,/G,/-C/-e/f/] [C,/-G,/-C/-g/] [C,/G,/-C/-e/f/] [C,/-G,/-C/-g/]
    [C,/G,/-C/-e/f/] [C,/-G,/-C/-g/] [C,/G,/-C/-e/f/] [C,/-G,/-C/-g/] [C,/G,/-C/-e/f/] [C,/-G,/C/g/] [C,/e/f/] |
    [^C,/-^C/-^g/] [C,/-C/^f/] [C,/-C/-e/] [C,/-C/^d/] [C,/-C/-g/] [C,/-C/f/] [C,/-C/-e/] [C,/-C/d/] [C,/-C/-g/] [C,/-C/f/] [C,/C/-e/] [C/d/] [C,/-e/] [C,/-d/]
    [C,/^G,/-b/] [G,/g/] | [E,/-A,/-^g/] [E,/-A,/a/] [E,/-A,/-^c/] [E,/-A,/^f/] [E,/-A,/-a/] [E,/-A,/c/] [E,/-A,/-e/] [E,/-A,/a/] [E,/-A,/-c/] [E,/-A,/f/] [E,/A,/-a/] [A,/c/] [E,/-A,/-e/]
    [E,/-A,/a/] [E,/A,/-f/] [A,/a/] | [^F,/-B,/-^g/] [F,/-B,/b/] [F,/-B,/-^c/] [F,/-B,/^f/] [F,/-B,/-b/] [F,/-B,/c/] [F,/-B,/-e/] [F,/-B,/b/] [F,/-B,/-c/] [F,/-B,/f/] [F,/B,/-b/] [B,/c/]
    [F,/-B,/-e/] [F,/-B,/b/] [F,/B,/-f/] [B,/b/] | [^D,/-^G,/-b/] [D,/-G,/^d/] [D,/-G,/-^g/] [D,/-G,/b/] [D,/-G,/-d/] [D,/-G,/g/] [D,/-G,/-b/] [D,/-G,/b/] [D,/-G,/-d/] [D,/-G,/b/] [D,/G,/-g/] [G,/b/]
    [D,/-G,/-^f/] [D,/-G,/b/] [D,/G,/-g/] [G,/b/] | [^C,^G,-^C-e] [C,G,-C-^f] [C,G,-C-^db] [C,/-G,/C/e/-b/-] [C,/e/-b/-] [G,/-C/-e/b/] [G,/-C/-b/] [C,/-G,/C/f/-] [C,/f/-] [G,-C-f-] [C,/-G,/C/f/-b/-] [C,/f/b/] |
    [E,/-A,/-^g/] [E,/-A,/a/] [E,/-A,/-^c/] [E,/-A,/^f/] [E,/-A,/-a/] [E,/-A,/c/] [E,/-A,/-e/] [E,/-A,/a/] [E,/-A,/-c/] [E,/-A,/f/] [E,/A,/-a/] [A,/c/] [E,/-A,/-e/]
    [E,/-A,/a/] [E,/A,/-f/] [A,/a/] | [^F,/-B,/-^g/] [F,/-B,/b/] [F,/-B,/-^c/] [F,/-B,/^f/] [F,/-B,/-b/] [F,/-B,/c/] [F,/-B,/-e/] [F,/-B,/b/] [F,/-B,/-c/] [F,/-B,/f/] [F,/B,/-b/] [B,/c/]
    [F,/-B,/-e/] [F,/-B,/b/] [F,/B,/-f/] [B,/b/] | [^C,/-^G,/-^C/-^g/] [C,/G,/-C/-e/^f/] [C,/-G,/-C/-g/] [C,/G,/-C/-e/f/] [C,/-G,/-C/-g/] [C,/G,/-C/-e/f/] [C,/-G,/-C/-g/] [C,/G,/-C/-e/f/] [C,/-G,/-C/-g/]
    [C,/G,/-C/-e/f/] [C,/-G,/-C/-g/] [C,/G,/-C/-e/f/] [C,/-G,/C/g/] [C,/e/f/] [C,G,C] |
    [^C,/-^d/^f/] [C,/=f/-] [^G,/-^C/-f/] [G,/C/^c/-] [C,c] [G,/-C/-d/^f/] [G,/C/=f/-] [C,/-f/] [C,/c/] [G,/-C/-^g/] [G,/C/f/] [C,/-c/] [C,/g/] [G,/-C/-f/]
    [G,/C/c/] | [^C,^G,-^C-^G-e-] [C,/-G,/-C/-G/-e/] [C,/G,/-C/-G/-] [C,G,-C-G-e] [C,/-G,/-C/-G/-^d/] [C,/G,/-C/-G/-e/-] [C,G,-C-G-e-] [C,G,-C-G-e-] [C,G,-C-G-e-]
    [C,/-G,/C/G/e/-] [C,/e/-] | [^C,e-] [C,e-] [C,/-e/] C,/ [C,e] [C,^f] [C,e] [C,^d] [C,e] |
    [^F,-B,^F-^d-] [F,/-B,/-F/-d/] [F,/-B,/F/-] [F,-B,F-d] [F,/-B,/-F/-e/] [F,/-B,/F/-d/-] [F,-B,F-d-] [F,-B,F-d-] [F,-B,F-d-] [F,/B,/-F/d/] B,/ |
    [B,/-^F/-] [B,/F/-B/-^d/-] [B,F-B-d-^f-] [B,F-B-d-f-] [B,F-B-d-f-] [B,F-B-d-f-] [B,F-B-d-f-] [B,F-B-d-f-] [B,/-F/B/d/f/] B,/ |
    [E,/-A,/-E/-] [E,/-A,/E/-A/-^c/-] [E,-A,EAce] [E,-A,e] [E,/-A,/-^d/] [E,/-A,/e/-] [E,-A,e-] [E,-A,e-] [E,-A,e-] [E,/A,/-e/] A,/ |
    [^F,/-B,/-^F/-] [F,/-B,/F/-B/-^d/-] [F,-B,F-B-d-^f-] [F,/-B,/-F/B/d/f/] [F,/-B,/] [F,-B,B] [F,-B,f] [F,/B,/-e/-] [B,/e/] [F,-B,f] [F,/B,/-e/-] [B,/e/] |
    [E,B,-E-B-^f-] [E,/-B,/-E/-B/f/] [E,/B,/-E/-B/-^g/-] [E,B,-E-Bg] [E,/-B,/E/B/-g/-] [E,/B/-g/-] [B,-E-B-g-] [E,/-B,/E/B/-g/-] [E,/B/-g/-] [B,/-E/-B/g/] [B,/-E/-]
    [E,/-B,/E/a/-] [E,/a/] | [^D,^A,^D^d-^g-] [D,d-g-] [A,d-g-] [D/-d/g/] D/ [D^Gc-g-] [^G,c-g-] [DGc-g-] [G,/-c/g/] G,/ |
    [^C,^G,-^C-^c-e-] [C,/-G,/-C/-c/e/] [C,/G,/-C/-] [C,G,-C-ce] [C,/-G,/-C/-^d/b/] [C,/G,/-C/-c/-e/-] [C,G,-C-c-e-] [C,/-G,/C/c/-e/-] [C,/c/-e/-] [C,G,-C-c-e-]
    [C,G,-C-c-e-] | [^C,^G,-^C-^c-e-] [C,G,-C-c-e-] [C,/-G,/-C/-c/e/] [C,/G,/-C/-] [C,G,-C-ce] [C,G,-C-^d^f] [C,/-G,/C/c/-e/-] [C,/c/e/] [C,G,-C-db] [C,/-G,/C/c/-e/-] [C,/c/e/] |
    [^F,-B,^d-b-] [F,/-B,/-d/b/] [F,/-B,/] [F,-B,db] [F,/-B,/-^c/e/] [F,/-B,/d/-b/-] [F,-B,d-b-] [F,/B,/-d/-b/-] [B,/d/-b/-] [F,/-B,/-d/b/] [F,/-B,/] [F,/-B,/-d/]
    [F,/-B,/e/] | [^F,/-B,/-^d/] [F,/-B,/e/] [F,/-B,/-d/] [F,/-B,/e/] [F,/-B,/-d/] [F,/-B,/e/] [F,/-B,/-d/] [F,/-B,/e/] [F,/-B,/-d/] [F,/-B,/e/] [F,/B,/-d/] [B,/e/] [F,/-B,/-d/]
    [F,/-B,/e/] [F,/B,/-d/] [B,/e/] | [E,-A,^c-e-] [E,/-A,/-c/e/] [E,/-A,/] [E,-A,ce] [E,/-A,/-^d/b/] [E,/-A,/c/-e/-] [E,-A,c-e-] [E,/A,/-c/-e/-] [A,/c/-e/-] [E,-A,c-e-] [E,/A,/-c/-e/-] [A,/c/-e/-] |
    [^F,-B,^c-e-] [F,-B,c-e-] [F,/-B,/-c/e/] [F,/-B,/] [F,-B,b] [F,-B,^f] [F,/B,/-e/-] [B,/e/] [F,-B,f] [F,/B,/-e/-] [B,/e/] |
    [E,B,E-^f-b-] [E,/-B,/-E/-f/b/] [E,/B,/E/-^g/-b/-] [E,/-B,/-E/g/-b/-] [E,/B,/g/b/] [E,B,E-g-b-] [E,B,E-g-b-] [E,/-B,/-E/g/b/] [E,/B,/] [E,/-B,/-E/-a/]
    [E,/B,/E/-g/] [E,/-B,/-E/a/] [E,/B,/g/] | [E,/-B,/-E/-a/] [E,/B,/E/^g/] [E,/-a/] [E,/g/] [B,/-E/-a/] [B,/E/g/] [E,/-a/] [E,/g/] [B,/-E/-a/] [B,/E/g/] [E,/-a/] [E,/g/] [B,EB-] [E,/-B/] E,/ |
    [E,-A,^c-^g-a-] [E,-A,c-g-a-] [E,/A,/-c/-g/-a/-] [A,/c/-g/-a/-] [E,/-A,/-c/g/a/] [E,/-A,/] [E,-A,c-^f-a-] [E,/A,/-c/-f/-a/-] [A,/c/-f/-a/-] [E,/-A,/-c/f/a/]
    [E,/-A,/] [E,-A,c-a-] | [E,-A,^c-a-] [E,-A,c-a-] [E,/A,/-c/a/] A,/ [E,-A,c] [E,/A,/-b/-] [A,/b/] [E,-A,a] [E,-A,c^g] [E,/A,/-c/-a/-] [A,/c/a/] |
    [^G,^g-b-] [^D,-G,g-b-] [D,G,-g-b-] [D,/-G,/g/b/] D,/ [G,^f-b-] [G,/-f/b/] G,/ [D,-G,g] [D,/G,/-f/-b/-] [G,/f/-b/-] |
    [^D,-^G,^fb] [D,-G,^g-b-] [D,/G,/-g/-b/-] [G,/g/-b/-] [D,-G,g-b-] [D,-G,g-b-] [D,/G,/-g/-b/-] [G,/g/-b/-] [D,/-G,/-g/b/] [D,/-G,/] [D,/G,/-^c/-e/-] [G,/c/e/] |
    [^C,-^F,^ce] [C,-F,^db] [C,-F,ca] [C,/-F,/-d/b/] [C,/-F,/c/-e/-] [C,-F,c-e-] [C,/F,/-c/-e/-] [F,/c/-e/-] [C,/-F,/-c/e/] [C,/-F,/] [C,/F,/-c/-e/-] [F,/c/e/] |
    [E,-A,^ce] [E,-A,^db] [E,/A,/-c/-e/-] [A,/c/e/] [E,/-A,/-d/^f/] [E,/-A,/c/-e/-] [E,-A,ce] [E,/A,/-e/-] [A,/e/] [E,-A,f-] [E,/A,/-f/] A,/ |
    [^D,-^G,^c-^d-^g-] [D,/-G,/-c/d/g/] [D,/-G,/] [D,/G,/-a/-] [G,/a/] [D,-G,c-d-g-] [D,/G,/-c/d/g/] G,/ [D,-G,c-d-g-] [D,/-G,/-c/d/g/] [D,/-G,/] [D,/G,/-c/-d/-g/-]
    [G,/c/d/g/] | [^D,3/2-^G,3/2-^d3/2^g3/2c'3/2] [D,/-G,/-] [D,3/2G,3/2e3/2] z/ [G,-^f] [G,/g/-] g/- [D,/-G,/-g/] [D,/-G,/-] [D,/G,/g/-] g/ |
    [E,-A,^c^ga] [E,-A,c^fa] [E,-A,cfa] [E,/-A,/-e/] [E,/-A,/f/-] [E,-A,f] [E,/A,/-c/-g/-a/-] [A,/c/-g/-a/-] [E,/-A,/-c/g/a/] [E,/-A,/] [E,/A,/-c/-g/-a/-]
    [A,/c/g/a/] | [^F,-B,^d^gb] [F,-B,d^fb] [F,-B,dfb] [F,/-B,/-e/] [F,/-B,/d/-f/-b/-] [F,-B,dfb] [F,/B,/-d/-g/-b/-] [B,/d/-g/-b/-] [F,/-B,/-d/g/b/] [F,/-B,/] [F,/B,/-d/-f/-b/-]
    [B,/d/-f/-b/-] | [^D,-^G,^d^fb] [D,-G,d^gb] [D,/G,/-d/-f/-b/-] [G,/d/f/b/] [D,-G,d-f-b-] [D,/-G,/-d/f/b/] [D,/-G,/] [D,/G,/-d/-g/-] [G,/d/-g/] [D,-G,db] [D,/G,/-^c/-e/-g/-]
    [G,/c/-e/-g/-] | [^C,^G,-^C-^ce^g] [C,G,-C-e-g-] [C,/-G,/-C/-e/g/] [C,/G,/-C/-] [C,G,-C-^d-^f-] [C,/-G,/-C/-d/f/] [C,/G,/-C/-] [C,/-G,/C/e/-g/-] [C,/e/g/] [C,G,-C-df]
    [C,/-G,/C/e/-] [C,/e/] | [^C,-^F,^c-a-] [C,-F,c-a-] [C,/-F,/-c/a/] [C,/-F,/] [C,-F,^g-a-] [C,-F,g-a-] [C,/F,/-g/-a/-] [F,/g/-a/-] [C,/-F,/-g/a/] [C,/-F,/] [C,/F,/-g/-] [F,/g/] |
    [^D,-^G,^f-b-] [D,/-G,/-f/b/] [D,/-G,/] [D,-G,^g-b-] [D,/G,/-g/b/] G,/ [D,-G,^d-b-] [D,/G,/-d/b/] G,/ [D,-G,g-b-] [D,/G,/-g/b/] G,/ |
    [^C,^G,-^C-^f-a-] [C,G,-C-f-a-] [C,G,-C-f-a-] [C,/-G,/C/f/-a/-] [C,/f/-a/-] [C,G,-C-fa] [C,/-G,/C/e/-b/-] [C,/e/b/] [C,G,-C-fb] [C,/-G,/C/^g/-b/-] [C,/g/-b/-] |
    [^F,3/2-B,3/2-^g3/2b3/2] [F,/-B,/] [F,/B,/-e/-b/-] [B,/e/-b/-] [E,/-B,/-E/-e/b/] [E,/-B,/-E/-] [E,/B,/-E/-^f/-b/-] [B,/-E/-f/b/] [E,/-B,/E/g/-b/-] [E,/g/-b/-]
    [B,/-E/-g/b/] [B,/-E/-] [E,/-B,/E/g/-] [E,/g/] | [E,-A,^c^ga] [E,-A,c^fa] [E,-A,cfa] [E,/-A,/-e/] [E,/-A,/f/-] [E,-A,f] [E,/A,/-c/-g/-a/-] [A,/c/-g/-a/-] [E,/-A,/-c/g/a/] [E,/-A,/] [E,/A,/-^d/-g/-b/-]
    [A,/d/g/b/] | [^F,-B,^d^gb] [F,-B,d^fb] [F,-B,dfb] [F,/B,/-e/] [B,/f/-] [F,-B,f] [F,/B,/-d/-g/-b/-] [B,/d/-g/-b/-] [F,/-B,/-d/g/b/] [F,/-B,/] [F,/B,/-d/-f/-b/-]
    [B,/d/-f/-b/-] | [^D,-^G,^d^fb] [D,-G,d^gb] [D,/G,/-d/-f/-b/-] [G,/d/f/b/] [D,-G,d-f-b-] [D,/-G,/-d/f/b/] [D,/-G,/] [D,/G,/-d/-g/-] [G,/d/-g/] [D,-G,db] [D,/G,/-^c/-e/-g/-]
    [G,/c/-e/-g/-] | [^C,^G,-^C-^ce^g] [C,G,-C-e-g-] [C,/-G,/C/e/g/] C,/ [C,G,-C-^d-^f-] [C,/-G,/-C/-d/f/] [C,/G,/-C/-] [C,/-G,/C/e/-g/-] [C,/e/g/] [C,G,-C-df] [C,/-G,/C/e/-]
    [C,/e/] | [^C,-^F,^c-a-] [C,-F,c-a-] [C,/-F,/-c/a/] [C,/-F,/] [C,-F,c-^g-a-] [C,-F,c-g-a-] [C,/F,/-c/-g/-a/-] [F,/c/-g/-a/-] [C,/-F,/-c/g/a/] [C,/-F,/] [C,/F,/-g/-a/-]
    [F,/g/a/] | [^D,-^G,^f-b-] [D,/-G,/-f/b/] [D,/-G,/] [D,-G,^g-b-] [D,/-G,/-g/b/] [D,/-G,/] [D,-G,b-] [D,/G,/-b/] G,/ [D,-G,g-b-] [D,/G,/-g/b/] G,/ |
    [E,-A,^c-^f-a-] [E,/A,/-c/-f/-a/-] [A,/c/-f/-a/-] [E,/-A,/-c/f/a/] [E,/-A,/] [E,/A,/-e/-a/-] [A,/e/-a/-] [E,-A,e-a-] [E,/A,/-e/-a/-] [A,/e/-a/-] [E,-A,e-a-]
    [E,/A,/-e/a/] A,/ | [^F,-B,] [F,/B,/-] B,/ [F,-B,^g-b-] [F,/B,/-g/b/] B,/ [F,-B,^f-b-] [F,/B,/-f/b/] [B,/e/-b/-] [F,-B,eb] [F,/B,/-^d/-b/-] [B,/d/b/] |
    [^C,^G,-^C-^d-^f-] [C,G,-C-d-f-] [C,G,-C-d-f-] [C,G,-C-d-f-] [C,G,-C-d-f-] [C,/-G,/C/d/-f/-] [C,/d/-f/-] [C,G,-C-df] [C,/-G,/C/^c/-=f/-] [C,/c/f/] |
    [^C,^G,-^C-^c-f-] [C,G,-C-c-f-] [C,G,-C-c-f-] [C,/-G,/C/c/-f/-] [C,/c/-f/-] [C,c-f-] [G,c-f-] [C-cf] [C/b/-] b/ |
    [A,/-^c/-] [A,-E-A-c] [A,/E/-A/-] [A,-E-A-b] [A,/E/-A/-c/-] [E/-A/-c/-] [A,/-E/-A/-c/] [A,/-E/-A/-] [A,/E/-A/-^g/-] [E/-A/-g/-] [A,/-E/-A/-g/] [A,/-E/-A/-]
    [A,/E/A/b/-] b/ | [A,3/2^c3/2] z/ [A,-b] [A,/c/-] c/- [A,/-c/] A,/ [E^g-] [A/-g/] A/ [Eb] |
    [^G,/-^c/-] [G,-^D-^G-c] [G,/-D/G/] [G,-D-G-b] [G,/-D/G/c/-] [G,/-c/-] [G,/-D/-G/-c/] [G,/-D/-G/-] [G,/-D/G/^g/-] [G,/-g/-] [G,/-D/-G/-g/] [G,/-D/G/-]
    [G,/D/-G/g/-b/-] [D/g/-b/-] | [^G,-^gb] [G,/^f/-a/-] [f/-a/-] [G,/-f/a/] G,/- [G,/e/-g/-] [e/-g/-] [G,/-e/g/] G,/- [G,/f/-] f/ [G,-e] [G,/f/-] f/ |
    [^F,3/2^C3/2-^F3/2-^c3/2-a3/2-] [C/-F/-c/-a/-] [F,3/2C3/2-F3/2-c3/2-a3/2-] [C/-F/-c/-a/-] [F,3/2C3/2-F3/2-c3/2a3/2] [C/-F/-] [F,3/2C3/2F3/2c3/2e3/2] z/ |
    [^G,3/2^D3/2-^G3/2-^d3/2b3/2] [D/-G/-] [G,-D-G-e] [G,/D/-G/-d/-^f/-b/-] [D/-G/-d/-f/-b/-] [G,/-D/-G/-d/f/b/] [G,/-D/-G/-] [G,/D/-G/-d/-b/-] [D/-G/-d/-b/-][G,/-D/-G/-d/b/] [G,/-D/-G/-] [G,/D/G/d/-b/-] [d/-b/-] |
    [^C-^G-^c-^db] [C/G/-c/-e/-^g/-] [G/-c/-e/g/] [C3/2G3/2-c3/2-e3/2-g3/2-] [G/-c/-e/-g/-] [C3/2G3/2-c3/2-e3/2-g3/2-] [G/-c/-e/-g/-] [C-G-c-eg] [C/G/c/e/] d/ |
    [B,/-^F/-B/-e/] [B,/-F/-B/-^d/] [B,/F/-B/-e/] [F/-B/-d/] [B,/-F/B/e/] [B,/-d/] [B,/-F/-B/-e/] [B,/-F/-B/-d/] [B,/F/-B/-e/] [F/-B/-d/] [B,/-F/B/e/] [B,/-d/]
    [B,/F/-B/-b/-] [F/-B/-b/] [B,/-F/B/^g/-] [B,/g/] | [A,EA^c-^g-] [E/-c/g/] E/ [A,b] [EAc-g-] [A,/-c/g/] A,/ [Eg-] [A,/-g/] A,/ [EAgb] |
    [A,A-^c-^g-] [E/-A/-c/g/] [E/A/-] [A,/-A/g/-b/-] [A,/g/b/] [EA-c-g-] [A,/-A/-c/g/] [A,/A/-] [E/-A/e/-g/-] [E/e/-g/-] [A/-e/g/] A/ [Eb] |
    [^G,^c-^g-] [^D/-^G/-c/g/] [D/G/] [G,b] [Dc-g-] [D/-G/-c/g/] [D/G/] [G,g-] [D/-G/-g/] [D/G/] [G,g-b-] |
    [^D^G^gb] [^G,^f-a-] [D/-G/-f/a/] [D/G/] [G,e-g-] [D/-G/-e/g/] [D/G/] [G,f] [DGe] [G,f] |
    [^F,^C^F^c-e-a-] [F,c-e-a-] [CFc-e-a-] [F,c-e-a-] [CFc-e-a-] [F,c-e-a-] [CFc-e-a-] [F,/-c/e/a/] F,/ |
    [A,EA] A, [EA^c-e-a-] [A,/-c/e/a/] A,/ [EAc-e-a-] [A,/-c/e/a/] A,/ [EAc-e-a-] [A,/-c/e/a/] A,/ |
    [^G,^D^G^c-^d-^g-] [G,c-d-g-] [G,c-d-g-] [G,c-d-g-] [G,/-c/d/g/] G,/ [G,dc'] [G,cd] [G,d-] |
    [^G,^D^d-] [G,Dd-] [G,Dd-] [G,Dd-] [G,D^Gd-] [G,DGd-] [G,DGd-] [G,/-D/-G/-d/] [G,/D/G/] |
    [^G,^D^G] z e3/2 z/ ^f ^g2- [G,/-D/-G/-g/] [G,/D/G/] | [^A,F^A] z ^f3/2 z/ [A,^g] [A,^a-] [F,/-A,/-a/] [F,/-A,/-] [F,/A,/a/-] a/ |
    [^F,-B,^d^ab] [F,-B,^g] [F,-B,dgb] [F,/-B,/-^f/] [F,/-B,/g/-] [F,-B,g] [F,/B,/-d/-a/-b/-] [B,/d/-a/-b/-] [F,/-B,/-d/a/b/] [F,/-B,/] [F,/B,/-a/-] [B,/a/] |
    [^C,^G,-^C-^cf^a] [C,G,-C-^g] [C,G,-C-cfg] [C,/-G,/-C/-^f/] [C,/G,/-C/-g/-] [C,G,-C-g] [C,/-G,/C/c/-=f/-a/-] [C,/c/-f/-a/-] [C,/-G,/-C/-c/f/a/] [C,/G,/-C/-]
    [C,/-G,/C/c/-f/-g/-] [C,/c/-f/-g/-] | [^A,^cf^g] [A,cf^a] [A,cfg] [A,c-f-g-] [A,/-c/f/g/] A,/ [A,f-a] [A,cf] [A,^d-^f-a-] |
    [^D,^A,-^D-^d^f^a] [D,A,-D-f-a-] [D,/-A,/-D/-f/a/] [D,/A,/-D/-] [D,A,-D-=f-^g-] [D,/-A,/-D/-f/g/] [D,/A,/-D/-] [D,/-A,/D/^f/-a/-] [D,/f/a/] [D,A,-D-=f-g-]
    [D,/-A,/D/f/g/] D,/ | [^D,-^G,^d-] [D,-G,d-] [D,/-G,/-d/] [D,/-G,/] [D,-G,d-^a-] [D,-G,d-a-] [D,/G,/-d/-a/-] [G,/d/-a/-] [D,/-G,/-d/a/] [D,/-G,/] [D,/G,/-a/-] [G,/a/] |
    [F,-^A,f-^g-] [F,/-A,/-f/g/] [F,/-A,/] [F,-A,f-^a-] [F,/-A,/-f/a/] [F,/-A,/] [F,-A,^c-f-] [F,/A,/-c/f/] A,/ [F,-A,f-a-] [F,/A,/-f/a/] A,/ |
    [^D,^A,-^D-^f-^g-] [D,A,-D-f-g-] [D,A,-D-f-g-] [D,A,-D-f-g-] [D,A,-D-fg] [D,/-A,/D/f/-] [D,/f/] [D,A,-D-g] [D,/-A,/D/^a/-] [D,/a/-] |
    [^C,^G,-^C-^a-] [C,/-G,/-C/-a/] [C,/G,/-C/-] [G,/C/^c/-^f/-] [c/-f/-] [^F,/-C/-^F/-c/f/] [F,/C/-F/-] [F,C-F-c^g] [F,/-C/F/c/-a/-] [F,/c/-a/-] [C/-F/-c/a/]
    [C/-F/-] [F,/-C/F/a/-] [F,/a/] | [^F,-B,^d^ab] [F,-B,d^gb] [F,-B,dgb] [F,/-B,/-^f/] [F,/-B,/d/-g/-b/-] [F,-B,dgb] [F,/B,/-d/-a/-b/-] [B,/d/-a/-b/-] [F,/-B,/-d/a/b/] [F,/-B,/]
    [F,/B,/-^c/-=f/-a/-] [B,/c/f/a/] | [^C,^G,-^C-^cf^a] [C,G,-C-cf^g] [C,G,-C-cfg] [C,/-G,/-C/-^f/] [C,/G,/-C/-g/-] [C,G,-C-g] [C,/-G,/C/c/-=f/-a/-] [C,/c/-f/-a/-] [C,/-G,/-C/-c/f/a/] [C,/G,/-C/-]
    [C,/-G,/C/c/-f/-g/-] [C,/c/-f/-g/-] | [F,-^A,^cf^g] [F,-A,cf^a] [F,/A,/-c/-f/-g/-] [A,/c/f/g/] [F,-A,c-f-g-] [F,/-A,/-c/f/g/] [F,/-A,/] [F,/A,/-f/-a/-] [A,/f/-a/] [F,-A,cf] [F,/A,/-^d/-^f/-a/-]
    [A,/d/-f/-a/-] | [^D,^A,-^D-^d^f^a] [D,A,-D-f-a-] [D,/-A,/D/f/a/] D,/ [D,A,-D-=f-^g-] [D,/-A,/-D/-f/g/] [D,/A,/-D/-] [D,/-A,/D/^f/-a/-] [D,/f/a/] [D,A,-D-=fg] [D,/-A,/D/^f/-]
    [D,/f/] | [^D,-^G,^d-] [D,/-G,/-d/] [D,/-G,/] [D,-G,d] [D,-G,d-^a-] [D,-G,d-a-] [D,/G,/-d/-a/-] [G,/d/-a/-] [D,/-G,/-d/a/] [D,/-G,/] [D,/G,/-a/-] [G,/a/] |
    [F,-^A,f-^g-] [F,/-A,/-f/g/] [F,/-A,/] [F,-A,f-^a-] [F,/A,/-f/a/] A,/ [F,-A,^c-f-] [F,/A,/-c/f/] A,/ [F,-A,f-a-] [F,/A,/-f/a/] A,/ |
    [^F,-B,^f-^g-] [F,-B,f-g-] [F,/-B,/-f/g/] [F,/-B,/] [F,/B,/-f/-] [B,/f/-] [F,-B,f-] [F,/B,/-f/-] [B,/f/-] [F,-B,f-] [F,/B,/-f/] B,/ |
    [^C,^G,-^C-] [C,/-G,/C/] C,/ [G,-C-^c-^a-] [C,/-G,/C/c/a/] C,/ [G,-C-c-^g-] [C,/-G,/C/c/g/] [C,/c/-^f/-] [G,-C-cf] [C,/-G,/C/c/-=f/-] [C,/c/f/] |
    [^D,^A,-^D-f-^g-] [D,A,-D-f-g-] [D,A,-D-f-g-] [D,/-A,/D/f/-g/-] [D,/f/-g/-] [D,A,f-g-] [D,A,f-g-] [D,A,fg-] [D,/-A,/-^d/-g/] [D,/A,/d/] |
    [^D,^A,^D^d-g-] [D,A,Dd-g-] [D,A,Dd-g-] [D,A,Dd-g-] [D,A,Dd-g-] [D,/-A,/-D/-d/g/] [D,/A,/D/] [D,A,D^a] [D,A,D^c-] |
    [^F,-B,^c] [F,-B,^f] [F,/-B,/-^g/] [F,/-B,/f/] [F,/B,/-g/] [B,/f/] [F,-B,^d] [F,/B,/-c/-] [B,/c/] [F,-B,d] [F,/B,/-c/-] [B,/c/-] |
    [^G,^C^c] [^C,^f] [G,C^a] [C,f] [G,Cc] [C,/-a/] [C,/^d/-] [G,/-C/-d/] [G,/C/a/] [C,f-] |
    [F,-^A,^f] [F,-A,=f^a] [F,-A,^fa] [F,/A,/-=f/-a/-] [A,/f/-a/-] [F,/-A,/-f/a/] [F,/-A,/^c/-] [F,/A,/-c/] [A,/a/] [F,-A,^d] [F,/A,/-a/-] [A,/a/] |
    [^A,^D^g^a] [^D,a] [A,Da] [D,g-] [A,-D-g] [A,/D/a/-] a/- [A,-D-a] [A,/D/g/-] g/- |
    [^F,-B,^g] [F,/-B,/-^f/] [F,/-B,/g/] [F,-B,f] [F,-B,f] [F,-B,f] [F,/B,/-=f/-] [B,/f/] [F,-B,^f] [F,/B,/-=f/-] [B,/f/] |
    [^C,^G,-^C-f] [C,G,-C-f] [C,/-G,/C/^d/-] [C,/d/] [C,G,-C-^c] [C,G,-C-c] [C,/-G,/C/d/-] [C,/d/] [C,G,-C-cd] [C,/-G,/C/d/-] [C,/d/] |
    [^D,^A,-^D-^d-] [D,/-A,/-D/-d/] [D,/A,/-D/-d/-] [D,A,-D-d] [D,/-A,/D/=d/-^d/-] [D,/=d/-^d/-] [D,/-A,/-=d/^d/] [D,/A,/=d/-^d/-] [D,A,=d^d] [D,A,d] [D,A,d] |
    [^D,/-^A,/-^D/-^c/] [D,/A,/D/^d/] [D,A,Dd] [D,A,Dd] [D,/-A,/-D/-c/] [D,/A,/D/d/-] [D,A,Dd] [D,A,Dd-] [D,/-A,/-D/-d/] [D,/A,/D/] [D,A,D^a-] |
    [^F,-B,^a] [F,/-B,/-b/] [F,/-B,/^d/] [F,/-B,/-^f/] [F,/-B,/a/] [F,/-B,/-b/] [F,/-B,/d/] [F,/-B,/-f/] [F,/-B,/a/] [F,/B,/-b/] [B,/d/] [F,/-B,/-f/] [F,/-B,/a/]
    [F,/B,/-b/] [B,/d/] | [^C,/-^G,/-^C/-^f/] [C,/G,/-C/-^a/] [C,/-G,/-C/-^c/] [C,/G,/-C/-a/] [C,/-G,/-C/-c/] [C,/G,/-C/-a/] [C,G,-C-c] [C,G,C-a] [G,/-C/^g/-] [G,/g/] [G,-C-a]
    [C,/-G,/C/b/] [C,/a/] | [F,/-^A,/-^g/] [F,/A,/^a/] [A,/-g/] [A,/^f/] [F,/-A,/-=f/] [F,/A,/^f/] [A,/-g/] [A,/a/] [F,/-A,/-b/] [F,/A,/a/] [A,/-g/] [A,/f/] [F,/-A,/-=f/] [F,/A,/^f/]
    [A,/-g/] [A,/a/] | [^A,/-^D/-^c/] [A,/D/b/] [^D,/-^a/] [D,/^g/] [A,/-D/-f/] [A,/D/g/] [D,/-a/] [D,/b/] [A,/-D/-c/] [A,/D/b/] [D,/-a/] [D,/g/] [A,/-D/-f/] [A,/D/g/] [D,/-a/]
    [D,/b/] | [^F,/-B,/-^c/] [F,/-B,/b/] [F,/-B,/-^a/] [F,/-B,/^g/] [F,/-B,/-^f/] [F,/-B,/=f/] [F,/B,/-c/] [B,/b/] [F,/-B,/-a/] [F,/-B,/g/] [F,/B,/-^f/] [B,/=f/] [F,/-B,/-c/]
    [F,/-B,/a/] [F,/B,/-g/] [B,/f/] | [^C,/-^G,/-^C/-^c/] [C,/G,/C/^a/] [C,/-^g/] [C,/c/f/] [G,/-C/-a/] [G,/C/f/g/] [C,/-c/] [C,/g/a/] [G,/-C/-c/f/] [G,/C/g/a/] [C,/-c/f/] [C,/g/a/] [G,/-C/-c/f/]
    [G,/C/g/a/] [C,/-c/f/] [C,/g/a/] |
    [^D,/-^A,/-^D/-^c/-f/g/-] [D,/A,/D/c/g/] [D,^d-g-] [D,d-g-] [D,d-g-] [D,A,Dd-g-] [D,A,Dd-g-] [D,A,Dd-g-] [D,/-A,/-D/-d/g/] [D,/A,/D/] |
    [^D,/-^A,/-^D/-^a/] [D,15/2-A,15/2-D15/2-^d15/2-g15/2-a15/2-] |
    [^D,8-^A,8-^D8-^d8-g8-^a8-] |
    [^D,8-^A,8-^D8-^d8-g8-^a8-] |
    [^D,5/2^A,5/2^D5/2^d5/2g5/2^a5/2] z/ [D/-a/] [D,9/2-A,9/2-D9/2-^A9/2-d9/2-g9/2-] |
    [^D,15/2^A,15/2^D15/2^A15/2^d15/2g15/2] z/ |]
     
    Last edited: Dec 8, 2013
  16. harm3111

    harm3111 Scruffy Nerf-Herder

    Awesome suggestion. I agree. .abc just isn't working that well.
     
  17. JimmyP424

    JimmyP424 Scruffy Nerf-Herder

    As someone who has encountered an absolute plethora of problems with the ABC music system currently implemented in Starbound, I would definitely like to see MML supported by the game. Every game I've seen that's used MML for it's music has done so extremely well, and, as mentioned above, ABC was simply not made for this kind of thing.
     
    Treadlight likes this.
  18. BPLevia

    BPLevia Void-Bound Voyager

    well even with just the Midi Channel its still quite longer than shown in the conversion, but I believe the tempo can be manipulated in ABC by adding a Q = line it just depends on wether or not SB will read it. I believe LotRO had a problem where it only reads the intial tempo and not any of the changes so a lot of the things we can do in ABC will rely on what exactly SB will read.

    There are issues already where it has trouble reading octaves too high or too low I believe and I ran into an issue where it can only read so many simultaneous notes before not playing them at all. The music system will probably take a backseat for awhile until a lot of the other more pressing problems are dealt with, but yeah I think it's too early to ask for changes in the music system when most of the issue is being unable to simply convert and import into the game. Manually transcribing seems to be the better way to do things at the moment anyway.
     
  19. TuefelHundenIV

    TuefelHundenIV Cosmic Narwhal

    After tinkering with ABC I like the look of MML better.
     
  20. LtGeneral Andrew

    LtGeneral Andrew Tentacle Wrangler

    I really think that there needs to be a guide or some sort of info as to what is accepted in SB. Otherwise we are just shooting in he dark with ABC.
    One thing that I really like about MML is that there is really only one format to it. I know I was having issues where SB would not accept my header format and caused my songs to sound really off. Not to mention some of the notes seem to be off as well.
     

Share This Page