This just adds a GUI/command line option to set the variable into world for retro mode and puts the universal key item into the list of defined items. None of the functionality is yet present.
A new dropdown option is added to allow the player to choose heart color between four options: red, blue, green, and yellow. The adjuster supports this feature as well.
This implements the new restricted shuffle that does not respect the difference between single and multi-entrance caves. Restricted_legacy is present for the old restricted behavior. Full_cross_worlds is renamed to Crossed, and all listing of shuffles is given a consistent order that pushes all the _legacy variants to the back.
This is the starting point for the new custom item pool feature that will let users specify the item pool. It is functional, perhaps due for some minor tweaking and definitely needs more testing. The command line side is bad, just two parameters that hopefully don't do anything under any circumstance if the user tries to use them (don't really intend to support a command line version of this feature); maybe there's a better way to let the command line ER work in general without having any opportunity to activate this feature. The GUI should probably show the user the sum of the current item pool out of 153 so the user knows how to size the item pool more easily, but that's a todo.
Open dialogs now filter by correct file extensions
Sort sprites by name (instead of disk order)
Better handle blank author names in zspr files.
Sort paths by name. (Otherwise the Bomb shop entry if present looks
wrong)
Fastmenu is now a variable menu speed setting instead of an on/off toggle. This update reflects that and gives the player a lot of options for the particular setting (normal, instant, double, triple, quadruple, half). A smaller change in this update is removing quickswap and fastmenu from the output file name of the randomizer (reflective of how the adjuster allows them to be shifted freely anyway) and shortening the verbiage for when progressive settings are changed (quality of life change there).
Fix plando's sprite support
Always write both sprite and pallet (using the default if a sprite does
not include a pallet)
so that the adjuster still works.
Make the help button and output directory button available regardless of
selected tab.
Make controls on both tabs share underlying state where it makes sense
to do so.
These are the basic adjuster files setting up for a new feature in the next release. Already randomized ROMs can be adjusted after the fact and have quickswap, fast menu, disable music, heartbeep rate, or a custom sprite applied or removed at the user's discretion with the checksum being properly updated. For now, the validity check for a randomized ROM is simply that it is exactly 2 MiB long and has a file name that ends in .sfc (while .smc is a valid SNES ROM file extension, no existing randomizer programs use it for output). This feature will need more updating with the new v28 features before it's ready for primetime; KevinCathcart's sprite selector will be an important part of this feature, and I believe variable speed fastmenu will be supported by the v28 base ROM so I'd want to make that selectable as well. For now, this should work as building blocks.
Added a proper icon
Fix output directory for packaged builds
Added a button to open the ouput directory, and a button to open
documentation for packaged builds.
-From KevinCathcart, adds a "balanced" algorithm that, in theory, fixes the dungeon bias of the v26/v27 algorithm while maintaining the desirable amount of randomness it provides.