Change Log
MSU Directory Setting Changes
In order to hopefully combat issues with the MSU Randomizer detecting MSUs as the wrong type, some changes have been put in place to hopefully help it detect the right MSUs. Now, instead of a default MSU directory, you must add all of your MSU directories and tell it what type of MSUs are contained in that folder. Doing this will limit the MSU types used to scan the directory, hopefully helping it figure out what the MSU is.
Note that for anyone who was using the default MSU directory setting, it should automatically be replaced with an SMZ3 MSU directory as that should work for ALttPR, VARIA, and SMZ3 randomizers, which are likely to be the vast majority of users.
Unknown MSU Window
When booting up, if the MSU Randomizer detects any MSUs with at least 15 tracks that it isn't able to figure out what MSU type it is, it'll open a window with a list of all of the MSUs to allow you to specify what MSU type they are. If you don't set them to any MSU type, the window won't appear for that MSU again, though you can always update the MSU type after by right clicking an MSU and viewing its details.
Updated Jingle Sanity Support
An update has been made to how the MSU Randomizer shuffles tracks when in jingle sanity and all sanity modes. With this update, certain tracks are identified as jingle tracks just like before, but now when determining what pcm files are applied to the jingle track locations, it now uses the length of the actual song file now. Therefore, for people who use short songs for things such as the crystal get theme or bomb torizo wake up tracks, they will now be shuffled in with the jingles rather than tracks that are meant to loop.
MSU Messenger
Using GRPC, the MSU Randomizer and Library can be used to communicate between different applications. This will be used by the SMZ3 Cas' fork to inform it when songs change, but anyone is free to use the protocol if they want. You can view more information about the MSU Messenger here: https://github.com/MattEqualsCoder/MSURandomizer/blob/main/Docs/messenger.md
Better Hardware/FxPakPro Support
More of the normal functionality of the MSU Randomizer has been extended to work with the FxPakPro and other supported hardware that can be used to read MSUs from and upload files to. Other fixes have been made to match the more limited functionality of MSU Randomizer when in hardware mode since it is only capable of selecting a random MSU and not shuffling MSUs together.
- Fixed an issue where hardware MSUs would not be detected if the affiliated MSU on the local computer didn't have any PCM files associated with them.
- Fixed an issue where with hardware mode it would not open the current song window unless you booted the rom.
- Reset the filter dropdown when switching between non-hardware mode and hardware mode.
- Removed the shuffle frequency option when in hardware mode since it didn't do anything.
- Updated the MSU details panel to properly work with hardware and unknown MSUs.
- Updated hardware mode to better filter MSUs that are actually compatible with the desired MSU type (for example, ALttP will work with SMZ3 MSUs, but not legacy SMZ3 MSUs that start with Super Metroid tracks).
Miscellaneous Updates and Fixes
- Added support for the Zelda 1 and Metroid 1 ports to SNES.
- Added a warning if you generate an MSU and there are multiple tracks missing.
- Tweaked logging to avoid spamming the logs with continuous MSU support.
- Fixed the preview count of hardware MSUs including MSUs with no pcm files.
- If an MSU has a YAML file but the pcm files don't match the MSU, it'll be marked as an unknown MSU. This is to better handle SMZ3 MSUs that people might have as either split or combined.