alttp_vt_randomizer
alttp_vt_randomizer copied to clipboard
Fairy Fountains can't give back empty Bottles in non Entrance Randomizers.
Randomizer.php#L650-L666 World.php#L771-L791
Currently setFountain()
in Randomizer.php gives getBottle()
true
as parameter.
getBottle
therefor skips the Empty Bottle as part of the possible return values.
According to Christos in Discord, Empty Bottle should be included in the Pool for the Fairy Fountains:
Should be in non-ER too, if it’s not that’s a bug! Intention was an equal probability of all bottled rewards, including empty
In getBottle(), looks like Item::get('Bottle', $this) has been added to the possible outcomes. Shouldn't this be resolved then?
There are 2 things that make getBottle not use the full list. Hard/expert item functionality excludes the last item (fairy refill), and the true parameter excludes the first item (empty).
I think this could be solved by checking where the bottle is actually coming from, if there's a current way to determine if the bottle being given is coming directly from a fairy or not, to which then there would be no need for "$filled ? 1 : 0" to be the minimum for this.
Or could this just be rewritten as a new function, something like getBottleFairy(), that specifically is made to handle fairy bottles, which would just set the minimum for the returned bottle to 0?
I'm guessing with the logic rewrite that this probably isn't something necessarily that needs to be fixed right now though.
The new work should not have this problem with the Bottle fairies.