Author Topic: [FF6] [OPEN BETA] Dancing Mad - FF6 Audio Replacement using MSU-1  (Read 40990 times)

insidious611

  • Crazy poster
  • *
  • Posts: 137
  • Karma: 4
    • View Profile
I admittedly wasn't even aware he'd done any disc two work. Yeah, I'd be happy to include it, provided I can find a download. I purchased a copy of the Disc One album in FLAC form to make the original MSU-1 PCMs, and I'm only finding the Disc Two work in non-downloadable form on SoundCloud atm.

---

Progress report on the hack: At the moment I'm mostly trying to consider how to tackle the current bugs. A lot of them are due to the way I'm handling (or, to be more accurate,  currently *not* handling) the fading commands. Madsiur's list of SPC commands from his patch is really helpful for me as far as trying to fix that issue, but I'm mulling over whether I really want to put in workarounds I'll have to take out later once the actual fade code is in.

To be specific, while I haven't had time to test this theory re issue #73, it and issues #38, and #32 stem primarily from the fact FF6 sometimes relies on a song having faded to 0 in order to have silence in a scene, and as I don't directly handle SPC command $81 at all, the songs continue playing at whatever volume they were last set to instead of fading to 0.

The workaround in this case, at least, the easiest one I can think of atm, would be to hook SPC command $81 with a simple routine that checks the requested volume, and, if it's 0, mute the MSU-1. This would turn all fade outs into sudden silences, *hopefully* not breaking anything in the process but probably fixing these bugs for the moment.

However, this entire routine (aside the actual hooking of SPC command $81 which will likely be vital to the fading code) would need to be cut out whenever actual fading is implemented.

Issue #74, the phantom train issue, is likely a combination of not handling $81 (fading) and not correctly handling $82 (subsong switching). Right now, I only handle $82 for Dancing Mad, because it's the only song (set of songs really) in the game that absolutely *needs* subsong switching to work at all. However, Phantom Train uses subsong switching to switch between the actual song and the train sounds, and my current $82 code ignores any calls that aren't during Dancing Mad.

The subsong part of #74 may be an easy fix, but it may just expose a lingering fading-based issue as I bet the train sound will continue looping at full volume.
« Last Edit: 2018-04-17 16:46:32 by insidious611 »

edale

  • Fast newbie
  • *
  • Posts: 18
  • Karma: 0
    • View Profile
Guys, I just found out about this mod and was listening to the many remastered editions of FFVI to choose which ones to patch into my game, and I just fell in love with Sean Schafianski's versions of the tracks. Is there any chance you guys are gonna include his unfinished Disk 2 tracks to the mod?
Sean Schafianski's tracks are the SSC option in the installer.

*edit- and I totally missed Insidious' reply, and the revelation that we don't have all his tracks already (SS's tracks were done by the previous audio guy, and I haven't really looked at them past getting all the older stuff normalized).

But yea, if I can get a copy of the audio, I can convert them easily.

And @insidious611 there are sites that let you download soundcloud music that soundcloud doesn't natively allow you to download. (*edit- Found a Chrome extension that just adds a download button right to the soundcloud page. EASY downloading)

edit2- Oh wow, I  :-* LOVE :-* this version of Techno de Chocobo!

The Opera stuff is good too (I love any version that vocalizes the narration), but several parts of the Opera are missing, and a broken up version isn't viable in-game (it's why all 8 or so tracks in the Opera are under one option radial in the installer).

And Another World of Beasts... Might be right up there with CrystalChameleon's version of Dark World as one of the best remasters I've ever heard. Of anything.
« Last Edit: 2018-04-17 21:05:40 by edale »

edale

  • Fast newbie
  • *
  • Posts: 18
  • Karma: 0
    • View Profile
Guys, I just found out about this mod and was listening to the many remastered editions of FFVI to choose which ones to patch into my game, and I just fell in love with Sean Schafianski's versions of the tracks. Is there any chance you guys are gonna include his unfinished Disk 2 tracks to the mod?
Sean Schafianski's Disk 2 PCMS:
https://mega.nz/#!SVYyyCxR!9nb0okEsbo3N0-e-zSd2ynjqs-FcBfFs1yaCkIVhpyQ

Enjoy.

They're made from SoundCloud rips, if anyone can find a FLAC copy, I'll redo them.

Just pop these in the folder with the existing PCM files for the mod, overwrite the old ones, and you're good to go.
« Last Edit: 2018-04-19 04:50:07 by edale »

SandmanLobo

  • Newbie
  • *
  • Posts: 2
  • Karma: 0
    • View Profile
Sean Schafianski's Disk 2 PCMS:
https://mega.nz/#!SVYyyCxR!9nb0okEsbo3N0-e-zSd2ynjqs-FcBfFs1yaCkIVhpyQ

Enjoy.

They're made from SoundCloud rips, if anyone can find a FLAC copy, I'll redo them.

Just pop these in the folder with the existing PCM files for the mod, overwrite the old ones, and you're good to go.

Wow, that was fast! I really appreciate it, thanks! Also, a pity that he abandoned this project, leaving even the Opera incomplete.

insidious611

  • Crazy poster
  • *
  • Posts: 137
  • Karma: 4
    • View Profile
So this is interesting. Madsiur, remember how you said you didn't know what SPC command $89 does? Well, I still don't know for sure, but I do know where it's used! >.<

The phantom train does *not* use $82 for its subsong switching. When it calls for track $20 (decimal 32, phantom train), the bit with the train noise plays by default, and then it calls $89 when it's time to switch to the actual song (still with $20 and $ff in $1301 and $1302).

This is going to need a lot more investigation than I thought, and it means the fix I tried to make for it is pointless :P

An interesting side effect of this in a vanilla ROM that I never realized before: All of the save rooms in the phantom train segment are specially coded to trigger SPC Command $89 when you leave them. So, when you save and reload your game, it plays the train sound effect, but the minute you go to leave it segues into the music.
« Last Edit: 2018-04-19 22:07:02 by insidious611 »

edale

  • Fast newbie
  • *
  • Posts: 18
  • Karma: 0
    • View Profile
Wow, that was fast! I really appreciate it, thanks! Also, a pity that he abandoned this project, leaving even the Opera incomplete.
The only thing that slows me down is procrastination.  ;) (the last "major" change/fix to one of the audio files I did, I procrastinated about 3 weeks on... it took me 10 min to finish, lol)

Too bad I can't really do much to help with the coding issues...
« Last Edit: 2018-04-19 22:12:52 by edale »

insidious611

  • Crazy poster
  • *
  • Posts: 137
  • Karma: 4
    • View Profile
Okay so, I did an unorthodox thing that seems to have worked. Read the issue for details, https://github.com/Insidious611/DancingMadFF6/issues/74, but basically I'm using a flag setting and checking/clearing routine to make it use the SPC for the train noises where appropriate and then switch to the MSU Phantom Train music when called for. It seems to work perfectly so far, but the amount of changes I needed to make to the "PlayCommand" label in the ASM means I also need to check Dancing Mad for regressions before I can 100% call this a fixed bug.

I can confirm, however, that the situation described in the original bug report (that of the ending to the Phantom Train sequence, where it should be playing train noises followed by silence as Cyan mourns) is in my branch now performing 100% the same as an unmodified ROM.

If anyone else wants to help me test both this and the fade-out workaround (which just sets volume immediately to 0 when a fade-to-zero is called for), apply this IPS from the train-and-fadeout-fixes branch to a clean ROM and replace your Dancing Mad ROM with it.
« Last Edit: 2018-04-19 23:15:17 by insidious611 »

insidious611

  • Crazy poster
  • *
  • Posts: 137
  • Karma: 4
    • View Profile
I need a little bit of help with debugging the Shadow scene bug. Specifically, I need a save (srm format) right before this happens and directions to reproduce, as I don't really have the time atm to organically reach this point in the game to test my fix. Feel free to use one of the action replay "save anywhere" codes to achieve this (do note however that use of these codes in general can sometimes produce... weird situations.)

EDIT: Also, bit of an update regarding that fix. Essentially what I'm doing is muting the volume whenever something calls for a fadeout, as a temporary workaround for when the game should be playing silence and isn't. However, this causes some pretty abrupt musical cuts, noticably (so far in testing) at the end of Dancing Mad Part 3 before Part 4 starts. This is very much a temporary, somewhat heavy handed solution and I'm even considering offering two patches in the installer because I could understand somebody considering this a regression.
« Last Edit: 2018-04-23 20:03:35 by insidious611 »

F-Bomb

  • Fast newbie
  • *
  • Posts: 6
  • Karma: 0
    • View Profile
If you go to https://www.fantasyanime.com/finalfantasy/ff6/ff6saves.htm and use 'save 3: Adventures in the South' under the my saves section. You'll find a save about 10 min before you first recruit shadow. If that is still too far away. Let me know and I'll shoot you one a bit later right outside Kohlingen.

Edit: to reproduce. Recruit Shadow, then just keep staying at the inn until it triggers the dream sequences.

Edit: as a bonus this srm also has a save right outside the opera house.
« Last Edit: 2018-04-26 04:18:21 by F-Bomb »

insidious611

  • Crazy poster
  • *
  • Posts: 137
  • Karma: 4
    • View Profile
Okay so, I was doing testing on a laptop and had a bunch of issues staying connected during the install. Because of this, I've decided I'm going to implement a system where each change to the song list is a new set of md5sums, which the installer checks the install directory against before downloading, so if the installer is interrupted or you're installing on top of a directory that already has all the songs you need in it, it can skip the ones it finds that match. It might make the initial loading time for the installer a little slower though.
« Last Edit: 2018-05-01 20:39:46 by insidious611 »

insidious611

  • Crazy poster
  • *
  • Posts: 137
  • Karma: 4
    • View Profile
:/ Unfortunately, what I hoped would be a fix for the Shadow cutscene bug has turned out not to be. Back to the drawing board, I'm going to have to break down what's happening in this scene as far as SPC commands and see if I'm missing something.

insidious611

  • Crazy poster
  • *
  • Posts: 137
  • Karma: 4
    • View Profile
Two major bugs have just been fixed and their fixes merged to the Master branch, the Phantom Train bug and the Select a Scenario scene bug, both involving music playing when it shouldn't.
Unfortunately the Shadow cutscene bug is still at large, I'll have to prod that scene thoroughly with bsnes-plus's debugger to figure out exactly what's causing the anomalous behavior. This may take a while.

insidious611

  • Crazy poster
  • *
  • Posts: 137
  • Karma: 4
    • View Profile
So this is strange. I'm watching the sequence of events as far as SPC commands when Shadow's dream sequence happens, and it's doing this:

The player walks to the center of the beds, then the screen fades to black:
Command $81 (Fade) volume $00 (silence, should be handled properly by my new code as a mute)

All good so far, but then...
command $10 (play track) track $2a (kids run through the city corner) volume $ff (full volume)

command $18 (play sfx) track $ad (presumably the "wheeoowheeoowheeoo" sound present in shadow's first dream cutscnee) volume $80



So the event is *specifically* asking to play Kids Runs Through The City Corner at *full volume* *after* stopping/muting it. Except there's nothing in the event code that should be causing it to do that! So I don't know why, but that's the source of the issue right there.
I can confirm my current fix re: muting when called with 1300:$81/1302:$00 *does* work for every shadow dream cutscene *after* the first. It's just the first that first mutes then immediately asks to play the music again.

This is with dancing mad applied. I'm going to have to run through the same sequence with a stock ROM to see if it's somehow my code causing it to glitch like that, and if so, how.

EDIT: Talked with madsiur. I've been avoiding doing any mucking about with event code because I want to avoid conflicts with other patches, but it may be worth sticking a call to play Track 00 (silence) in the shadow dream sequences just to make sure this doesn't happen. He gave me pointers on where to start.
« Last Edit: 2018-05-04 10:52:29 by insidious611 »

insidious611

  • Crazy poster
  • *
  • Posts: 137
  • Karma: 4
    • View Profile
Alright so, I went with the above fix (adding a line to set the song to $00 in the event code for all the shadow scenes).

It works, for the most part. You get about a frame worth of the song playing after the scene starts but it's silent otherwise. Also, the inn is silent after the scene finishes, but the music starts backs up when you leave the inn. So not a perfect fix by any means, but it's serviceable and it does the job, and I learned a lot about event scripting in the process, so yay.

I'm also going to do a bit of poking around in zone doctor because the current behavior noted above combined with how the event scripts look implies to me that it's the actual loading of the new map causing the weird song behavior, so maybe there's something I can do there too, to at least stop the 'frame worth of wrong music' problem.

insidious611

  • Crazy poster
  • *
  • Posts: 137
  • Karma: 4
    • View Profile
Unfortunately the zone doctor pokery ended up not very fruitful. Only one map is *specifically* used just for a Shadow scene, and I didn't want to mess up the music in other scenes. So until I can figure out the cause of the game asking track 2a to be played at ff volume, we're just going to have to deal with the imperfect fix we've got for now.

insidious611

  • Crazy poster
  • *
  • Posts: 137
  • Karma: 4
    • View Profile
Just wanted to pop in and give an update. With two exceptions listed on GitHub (look at issues under the tag "patch"), all known issues have been fixed. The shadow scene fix is the above mentioned imperfect fix, and I'll have to do more investigation to try and figure out why it's bugging out like that in the first place, but yeah, we're as close to bug free as we've ever been at this point, knock on wood.

The only thing in the way of Hotfix Three is more work on the installer, specifically a new page to support the various available versions of the opera, and then a round of testing both of the installer and the patch. I would expect Hotfix Three by the end of this month, maybe early next, but I don't do definite release dates. :P

My apologies for the slow work and relative silence of late. I uhh... let's simplify it and say I basically fell out of a tree. I sustained a minor compression fracture to one of my vertebrae and have been out of commision for a while. I'm still not totally healed, but I'm healed enough to do some work at least.

New "features" in Hotfix Three will be proper compatibility with patches that use ExHiROM, full tested compatibility with Brave New World, and the new opera selections, as well as an updated version of TWUE available in the installer.
« Last Edit: 2018-06-11 08:12:09 by insidious611 »