maxim-zhao / battlemaniacs-restoration

Modifications to Battlemaniacs for Master System to make it more like the SNES original
9 stars 2 forks source link

Fix the incorrect music usage (including new tracks) #15

Open AlWesker opened 6 years ago

AlWesker commented 6 years ago

Don't forget to add the correct level music table for $6D31.

Since we are still lacking two level musics, I opt to leave those temporarily as 00s, and therefore this is the current sequence:

.db $0D $15 $1B $03 $23 $23 $23 $23 $00 $00 $02 $1B

maxim-zhao commented 6 years ago

Fixed in latest version, leaving this open as a placeholder for when we get more music.

AlWesker commented 6 years ago

With Roller Coaster and Bonus Stage 2, the level music table is now complete. Among those pairs of $00, the first one should use Bonus Stage 2 and the second one should use Roller Coaster.

We are still missing T Bird (for the intermissions and Continue/Game Over screens) and Victory (for the ending), but I suppose those will need different pointers somewhere else in the game code.

maxim-zhao commented 6 years ago

Yes, I have those locations.

maxim-zhao commented 6 years ago

Added the tracks - get the latest preview under the release draft as before. I think we still want that extra music, and we still need a lot of artwork.

maxim-zhao commented 5 years ago

So we have a T-Bird music track now, but can you explain when it should be used? Are we going to also get on for The Evil Dark Queen? What about the ending? I should be able to hook in new music in any place it's needed, especially in our replacement scripting.

AlWesker commented 5 years ago

Yeah, sure.

The "T. Bird" music goes in the T. Bird and Dark Queen intermissions between levels, which are silent at the moment. It also goes in the continue/game over screens, which are using the title screen theme at the moment. I'll show you how is played through playthroughs of the SNES version.

Intermissions (see 9:45, 13:36, 17:35 and so on)

https://www.youtube.com/watch?v=WjzP6u6ayjc

Game Over/Continue

https://www.youtube.com/watch?v=P1zLzexgM7w

The ending is going to get its own music (titled "Victory"), like in the SNES version. @sanchez-david is going to do it as soon as he can. At the moment I think it's using the title screen theme as placeholder. I have a rough unfinished beta of the ending music which was done by @MotavianRaider before he left, but I suppose it's not worth to add it and wait for @sanchez-david to do the full theme, right?

Speaking about the ending, see how it behaves in the SNES version.

https://www.youtube.com/watch?v=gDC78GTwVLA

If you notice, the first two screens of the Dark Queen and T. Bird are playing the intermission phrases of both when you beat the game (ie, they say one of four possible messages), and then it skips to the fixed ending (which was added new since it was missing in the Master System version) from the "ER..." sentence. The SNES version plays the "Victory" (or ending) theme since the beginning, even in the intermission segment, instead of playing the "T. Bird" theme in that part. As it is now in our hack, the intermission part is silent (like the rest of intermissions) and then, from the "ER..." part, the placeholder title theme is played. How is this going to be done or how it should be done then? We leave the intermission part with the "T. Bird" theme and then the future "Victory" theme will be played from the "ER..." screen? Or we put the future "Victory" theme in the full intermission + ending sequence like in the SNES version?

By the way, do you think the "T. Bird" theme is fine as it is now? @sanchez-david says he maybe will polish it a little when he has time, though he prefers to move on to new themes before he returns to it. Maybe he refers to the final part of the sequence which may be a little plain and could be improved, but I'm not too sure. What to do you think?

maxim-zhao commented 5 years ago

I think it's fine. I've hooked it up now.

One thing that would be easy to do (if useful) is to add music triggers to the script format, so you can change the music during the ending, for example so the "ER..." can either restart or leave the existing intermission music playing, then change to the ending music after the scene changes - what do you think?

AlWesker commented 5 years ago

Yeah, in fact I thought about that some days ago, adding some triggers similarly to what we have now with the images. I think the levels still keep the original ROM triggers which are easy to locate. The problem is the triggers with the title screen, intermisisons, continue/game over, ending and whatever are sparse, so I guess in this case a trigger in the script format will help and I will think about what we'll do with the final intermission/ending segment.

Also, don't forget about this https://github.com/maxim-zhao/battlemaniacs-restoration/issues/30. You can close it if you don't want many music threads open, but first tell me if it would be possible to add the pause music like in the SNES version, when the game is paused, so I tell @sanchez-david if he has to do that one or not. I don't know if the game allows a music being played when the game is paused.

maxim-zhao commented 5 years ago

I'm working on that one now...

AlWesker commented 5 years ago

Ok!

I checked the last build and the intermissions screens are now playing the new T. Bird music, but the continue/game over screens are still playing the title screen music. Please change that to the T. Bird music too or add a trigger in the script so I can do it.

maxim-zhao commented 5 years ago

OK, added it to those two places. I guess we now want some ending and pause music.

AlWesker commented 5 years ago

Yeah, don't worry. @sanchez-david is already tasked with doing the ending music and I will also tell him to do the pause music next, which is a very short jingle anyway.

I have just checked the last build, and for some reason, in the continue screen when you continue, the music restarts again for the T. Bird message that tells you when you continue. The music should continue playing from the continue screen, not restart. It's fine when you don't continue and go to the Game Over screen with the Dark Queen and T. Bird, so it should be that way too when you continue.

By the way, why continuous build generator is now creating a .sym file together with the .sms ROM file? What's that for?

maxim-zhao commented 5 years ago

That's useful for me to debug the ROM.

AlWesker commented 5 years ago

I'm noticing two additional (although minor) issues with the T. Bird music.

In the continue screen, and just before the T. Bird music plays, there's like a milisecond of another music trying to play? I believe that's still the Title screen trying to play, like it was before, but then the T. Bird music suddenly overlaps it. Is it possible to remove that small bit? This only happens in the continue screen by the way, not in the intermission screens.

And is it just me, or it seems like the T. Bird music plays at a higher pitch/volume than the rest of the musics? I suppose that's because @sanchez-david didn't calculate well the appropiate pitch/volume to equalize it with the rest of tracks. Can this be solved through the game script/code or is it necessary to be readjusted in the .VGM itself?

maxim-zhao commented 5 years ago

The volume is a bit high, that needs to be done in the original composition.

AlWesker commented 5 years ago

Ok, I will tell him.

AlWesker commented 5 years ago

Ok, I have just uploaded a v2 version of T. Bird which has the volume corrected and some polishments done, the Pause music, and a prototype/unfinished version of Victory.

The latter is what @MotavianRaider managed to do before he left, and @sanchez-david is going to finish it. Why do I ulpoad it? Because @sanchez-david told me that he isn't able to open it with versions of Deflemask that allow exporting .vgm files on 1.50 version, and he is concerned about PSGLib being able to take .vgm files from later versions. If that's okay, then he will be able to finish the composition that way.

@maxim-zhao see if the game can accept the Victory .vgm as it is. It could also be added as a placeholder for the ending while the full composition is finished. By the way, while you are at it, see if the Game Complete screen can keep playing the same music which is previously played in the ending (which is T. Bird in the easy ending and Victory in the normal and hard endings), because as it is now, I believe what the Game Complete screen is playing the title theme screen, and in my opinion it's better if it just keeps the ending music whatever that one is.

maxim-zhao commented 5 years ago

PSGLib can take any VGM, it's basically a modified version of the VGM format so it can support anything. Bear in mind that channel 2 is "stolen" by SFX, so prefer channels 0 and 1 for the main melody parts. Removing the music change on game compete is trivial.

AlWesker commented 4 years ago

$6D31

.db $0D $15 $1B $03 $23 $23 $23 $23 $05 $04 $02 $XX

$XX is where "Last Battle (Boss).vgm" has to be placed when it's implemented, whenever it's output number will be (I don't know if 06, 07, 08 or whatever).

With that and replacing "T. Bird v1.vgm" with "T. Bird v2.vgm", the music implementation side of things will be ready, aside from the 50hz/60hz aspect side which is covered by another topic.

Please don't forget to make the Normal and Hard endings start with "Victory" instead of "T. Bird" (I suppose this is because of the first two scenes with random dialogue being treated as intermissions scenes, see how it's done in the SNES version: https://www.youtube.com/watch?v=UbExF4wHp8A) and also make the "Game Complete" screens to carry on with the corresponding ending music ("T. Bird" on Easy, "Victory" on Normal and Hard) instead of switching to the title screen music.