SMZ3Randomizer
SMZ3Randomizer copied to clipboard
(Draft) Split Tracker Services & Regions
Still a WIP. UI is pretty broken, and I need to do a ton of testing.
Basically, this implements the following:
- Split tracker functionality into multiple services
- Split dungeons into four interfaces IHasTreasure, IHasReward, IHasBoss, and IHasPrerequisite
- Updated the database and lots of the code to reflect this
- Rather than listen to larger events from the tracker, I'm updating it to listen to events on specific locations, bosses, etc.
Todos:
- Fix UI (bosses not showing up properly, Hyrule Castle's key logic seems messed up)
- Test, test, test
- Make sure works with keysanity turned on
- Make sure multiplayer still works
- Make sure autotracking all types of things works (items, bosses, & rewards)
- Convert old database entries to the new format
- Try to see if I can get it so that the unit test matches up
- Create a keysanity unit test to validate the world matches (unrelated to these changes, but probably not a bad idea)