Language…
19 users online: Adsila, Batata Douce, Blizzard Buffalo, David_Odie, Doopu, drkrdnk,  Eden_, Ekimnoid, Hammerer, HD_DankBaron, LadiesMan217, LightAligns, LuigiTron, Maniek, masl, MorrieTheMagpie, ppp9q,  Ringo, sinseiga - Guests: 247 - Bots: 299
Users: 64,795 (2,376 active)
Latest user: mathew

Escape!!! by Ultima

File Name: Escape!!!
Submitted: by Ultima
Authors: Ultima
Insert Size: 0x09EC bytes
Type: Song
Sample Usage: Many
Source: Original
Duration: 1:25
Featured: No
Description: And as an extra, here is the first ever original compo I did, which as you can tell is obviously built with an timed escape sequence in mind (which is also why the song doesn't loop from the start btw, and why I won't put in a loop since it would lose much of the impact I wanted to portray otherwise). Since this is only usable in a very specific context I dunno how many would bother using this, but it's definitely something to consider if you're planning to have a escape sequence in your own hack either way :P
SPC

I really like this, and I have no issues at all with the composition or sampling. However, the optimization needs more work before I can accept it.

The biggest and most common problem I found was that you were only optimizing by lines, without considering the notes inside those lines. What this means is that there are many instances where you could save a lot of space by compressing the notes individually or in small chunks, where applicable.

The following is the prime example of the issue of only optimizing lines instead of individual notes:



As you can see, the notes repeat 8 times per line, except for lines 200-203 and 205-206. These can easily be condensed into a single-note loop. Label loop (71) can also be changed this way, though you'd have to change the number of times it repeats to 32.

These colored patterns can be super looped:



As an added note, most of channel #7 can be reused for channel #1, even if the octaves happen to not match because you can use $FA $02 $XX to adjust the loops.

I also found that you could optimize the percussion channel more if you made smaller label loops for the repeating lines, which I once again color-coded:



Finally, the pitch slides in #0 could also be label looped. I know you're using the q command to lower the volume and that it doesn't apply to label loops, but using v directly will still save space compared to how it is right now. Additionally, the channel is completely silent after said slides, which is wasteful considering you're extensively using the sound effect channels. You could move channel #7 to #0 as soon as the latter goes silent with a bit of label loop trickery.

This should be all. However, I do want to point out that I've noticed that these issues are very common in your submissions, Ultima. Please take a bit more time to analyze your MMLs better for optimization. While it's true that most people won't run into space trouble in their hacks due to music data alone, eliminating bad practices is always a good thing, so please consider this every time you're porting something new, okay?

Using Notepad++ might help you detect these, in case you're having trouble with finding the notes by eye, as it has an option to highlight repeated text without performing a CTRL+F search, so please give it a try!