GoldenKain / FFPR2MSU

FFPR2MSU is a tool for Linux and Windows to extract the audio from the Final Fantasy Pixel Remaster games and convert them to be used with the existing SNES/SFC Final Fantasy games' MSU-1 hacks.
MIT License
2 stars 1 forks source link
ff4 ff5 ff6 ffiv ffv ffvi final-fantasy msu-1 pixel-remaster sfc snes

FFPR2MSU (Final Fantasy Pixel Remaster to MSU-1)

FFPR2MSU is a tool that extracts the audio files from the PC version of the Final Fantasy Pixel Remaster games and converts them to be used with existing MSU-1 patches:

[!NOTE] I will NOT share the audio files themselves. The files are under copyright, thus sharing them around would be illegal. You will need to supply your own music asset file (in this case, a Unity bundle file) from the PC version of the Final Fantasy Pixel Remaster game in question.

SETUP AND HOW TO USE

  1. First off, Purchase and install the PC version of your Final Fantasy Pixel Remaster of choice if not already done.

  2. Follow these steps depending on the game you're looking to use:

    Final Fantasy II/IV 1. Download the [files for the MSU-1 hack](http://bszelda.zeldalegends.net/stuff/Con/ff2j_msu1.zip). ([Here](https://www.zeldix.net/t1952-final-fantasy-iv-j-final-fantasy-ii-us) is the link to the page on the Zeldix forums if the other link is broken) 2. Extract the archive. 3. Retrieve the .ips and .msu files.
    Final Fantasy V 1. Download the [files for the MSU-1 hack](https://drive.google.com/open?id=1o2XQfHcLWnFp6c8KJsa6HOKgLL51tQO5). ([Here](https://www.zeldix.net/t2070-final-fantasy-v) is the link to the page on the Zeldix forums if the other link is broken) 2. Extract the archive. 3. Retrieve the .ips and .msu files.
    Final Fantasy III/VI 1. From user's [Dizzy611](../../../../Dizzy611)'s [DancingMadFF6](../../../../Dizzy611/DancingMadFF6) repository here on Github, download the [.ips file](../../../../Dizzy611/DancingMadFF6/tree/master/patch/ff3msu.ips) and the [.msu file](../../../../Dizzy611/DancingMadFF6/tree/master/patch/ff3msu.msu). If the links are broken, at the time of writing this, they are located in the ["patch" folder on the master branch](../../../../Dizzy611/DancingMadFF6/tree/master/patch).
  3. Patch your rom with the corresponding .ips patch file with the help of some rom patching program like the Advanced SNES ROM Utility, Flips or Lunar IPS.

  4. To save yourself the headache of having to rename dozens of files later on, make sure that the msu file and the pached rom have the same name (be careful not to inadvertently change the file extensions).

  5. From the corresponding Final Fantasy Pixel Remaster Steam install folder, find the .bundle background music asset file and keep it close, you'll need it soon. It should be named something like: "ffcorresponding-game-number_bgm_assetsall\series-of-numbers-and-letters.bundle".

  6. Download the latest release of the program or compile it from source. Make sure to keep the ini file in the same directory as the executable.

  7. Drag-and-drop the .bundle file you found earlier on the executable and follow the instructions written in the console that will pop up. Alternatively, you can run the following commands in a terminal:

    On Windows:

    cd "path\to\the\program\directory"
    FF6PR2MSU.exe "path\to\the\bundle\file"

    On Linux:

    cd "path/to/the/program/directory"
    FF6PR2MSU "path/to/the/bundle/file"
  8. You should now have a bunch of .pcm files in a folder named "output" located in the same directory as your bundle file (or in your current work directory if you ran the command in your command line interface). Now, simply place all of those and the rom you patched in your location of choice (either an FX Pak Pro or some emulator that supports the MSU-1). For more information on the MSU-1 and how to set it up, I highly recommend reading up this guide on the Zeldix forums.

FAQ

Why is there no GUI?

Because I want to make it work on Windows and Linux... I prefered leaving it as a CLI application for simplicity's sake. Seeing as it's pretty simple and only requires drag-and-dropping a single file and then enter 2 pieces of information, I think this will be more than sufficient.

I encountered an issue or a bug... what should I do?

Look up the open issues. If it has already been reported, comment on it if you have any more information to add. If it hasn't been reported, you can create a new issue. Any help is greatly appreciated! :slightly_smiling_face:

CREDITS

This was made possible by the incredible work of user Dizzy611 on his tool DancingMadFF6 for Final Fantasy III/VI, kurrono's MSU-1 hack for Final Fantasy II/IV and Conn's MSU-1 hack for Final Fantasy V on the Zeldix forums, the VGAudio library by user Thealexbarney, wav2msu which was originally written by a user named Kawa (whose page and original C# source code I could not find online) and then reimplemented in C by jbaiter's and AudioMog by Yoraiz0r.

Full credits and a copy of the copyright notice for jbaiter's wav2msu and Yoraiz0r's AudioMog can be viewed at the top of the files Wav2Msu.cs and AudioMogHcaDecoder.cs respectively.