OoT-Randomizer
OoT-Randomizer copied to clipboard
Prioritize songs on Song from Impa when Skip Child Zelda internal setting is enabled
If songs are shuffled on songs, skip child zelda is enabled, and there is at least one starting song from another source, it is possible for the Song from Impa location to have a non-song item shuffled on it. This has the consequence with major random starting items of sometimes placing junk items on Song from Impa and reducing the total expected starting major items based on settings.
This PR adds an extra step to shuffle the Song from Impa location first during the song shuffle stage for this particular settings combination. If there are no songs remaining in the pool, Song from Impa will receive a fallback item as before.
Testing
Tested with the following settings combos:
- No skip child zelda + 11 starting songs + songs shuffled on songs
- Song from Impa receives either a song or alternate item as expected
- Skip child zelda + 11 starting songs + songs shuffled on songs
- Song from Impa consistently gets the last song
- Skip child zelda + 10 starting songs + songs shuffled on songs
- Song from Impa consistently gets a random choice of remaining songs
- Skip child zelda + 12 starting songs + songs shuffled on songs
- Song from Impa always has a non-song item
- Skip child zelda + 12 starting songs + songs shuffled on songs + plentiful item pool
- Plentiful pool does not add additional songs to the pool with songs on songs. Song from Impa has a non-song item as expected.
- S9 tournament preset
- Seeds generate. I did not bulk generate to empirically check if Song from Impa could still get a non-song item.