Advertisement
Gamestabled

freddy's glitches explanations

Apr 7th, 2021
175
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.75 KB | None | 0 0
  1. All testing done on version 1.0.2
  2.  
  3. 1) Scrubs in grottos entered with Wrong Warp or Void Warp
  4. When you enter a grotto that does not contain Business Scrubs, you can use a Wrong Warp or a Void Warp to load a room where they can be found. In the normal game the scrubs sell fixed items, but in the Randomizer they must be reading data from unintended places, causing them to give copies of items that the program placed in completely different spots.
  5. From what I can tell, these items are seed independent, they're always the same on every playthrough.
  6.  
  7. -Loading the potion-selling Scrubs room (e.g. DHWW from Hyrule Castle SoS grotto): Gerudo Token and Shard of Agony
  8. -Loading the 3 scrubs room (e.g. DHWW from Kak redeads grotto): Big Quiver, Big Bomb Bag, Silver Scale (not upgrades, these are fixed items)
  9. -Loading the nut-upgrade Scrubs room (e.g. DHWW from Octorok grotto): 30 Nut Capacity and Big Bomb Bag (again, fixed items)
  10. -Loading the PoH scrub room (e.g. DHWW from the skulltula grotto near Kakariko): Piece of Heart
  11.  
  12. Buying the fixed "Big" items can downgrade your equipment (from 40 bomb bag to 30 for example) or let you skip the base version I guess (which locks you out of the Bow/Bomb item).
  13.  
  14. These scrubs use flags to remember you bought their item, and I think they're tied to the specific grotto you used.
  15. For example you can get the PoH scrub's random reward, then Wrong Warp to that same room and buy a regular PoH.
  16. A more complicated example: if you buy the items from the scrubs in the DMC grotto to set their flags, then use a combination of Alternate Exit and Void Warp to reenter the same grotto but loading the room with the nut-upgrade scrubs, then the scrub that sells a Big Bomb Bag won't be there, probably because it's the same scrub that sells that item in the 3 scrubs room, which has been cleared.
  17.  
  18. EXPLANATION:
  19. The way the randomizer works is that whenever an actor tries to give Link a get item ID, some information about that actor, the current scene, and the incoming item are combined and used as a lookup key to search a table of item overrides. These keys uniquely identify every item location. Item locations in grottos present a complication to this though, since all grottos are the same scene, and each copy of the same scrub grotto uses the same entrance index, so we can't even use that as an easy way out either. The way this is handled is that when the item-giving actor is detected to be a business scrub in a grotto, the "scene" used to create the lookup key is actually the data from the grotto exit that you explain in the other pastebin. So if you don't get into the grotto in the "normal" way, that data won't be something expected, and the key won't be found in the override table, so what the scrubs give you will not be overriden. The same data is used setting/checking the flag for whether the scrub's reward has already been purchased.
  20.  
  21. But then why do the scrubs give weird things, and not what they give in the base game? Because separately from everything above, the table of business scrub data has been completely rewritten by the randomizer. This is for a few reasons: part of the data in that table is the "can Link purchase this item?" function, which needs to be different in the randomizer than in the base game. Another part of that data is the getItemID for what the scrub sells, and these have all been changed to seemingly random things. The exact values for these getItemIDs are copied from OoTR, which does something similar for the scrubs. I believe the choice of these getItemIDs is a legacy decision from a time where OoTR needed to make incoming getItemIDs all be "major items" to force the "major item" sound effect to occur. I don't think this is necessary nowadays, but I could also be completely wrong about this, I never actually checked.
  22.  
  23. Technically, everything going on here is intended behavior. The only thing that distinguishes between two occurrences of the same scrub grotto is where you entered the grotto from. So if you don't enter the grotto in a normal way, there's no meaningful way to decide what randomized items you should get from those scrubs.
  24.  
  25.  
  26. 2) Cows in grottos
  27. The cow in the webbed grotto gives the item (and sets the flag) for the cow in the DMT grotto if you reach it with DHWW.
  28.  
  29. EXPLANATION:
  30. How do we distinguish between two cows on the same scene? They are the same type of actor, and they give the same incoming getItemID. The answer actually depends on the scene, but for the two cows in the grotto scene, we can just check the current entrance index. If you enter the webbed grotto from DHWW, your entrance index will be incorrect, and so the cow defaults to thinking that it is the "first" cow in the scene, which is normally supposed to be the DMT cow.
  31.  
  32.  
  33. 3) Contents of unreachable chests
  34. If I understand correctly, the Randomizer should not affect any items that can only be obtained via unintended gameplay, but it's not a consistent rule. Unused chests that have separate contents in the normal game are still updated in the rando if they share a flag with a used chest. Some examples:
  35.  
  36. The chest on top of Gerudo Fortress in the child scene setup is modified in the randomizer to contain the same item that's there as adult.
  37.  
  38. Here's a comparison between the chests in different versions of Jabu (using my current seed's random items as an example):
  39. Vanilla Normal Jabu = Map, Compass, -, -, Boomerang
  40. Rando Normal Jabu = Ice Trap, GtG key, -, -, Skulltula token
  41. Vanilla Beta Jabu = Compass, Deku Nuts, Boomerang, 39th PoH, Map
  42. Rando Beta Jabu = Ice trap, Deku Nuts, Boomerang, GtG key, Skulltula token
  43. The boomerang and deku nuts beta chests are unaffected, but the other ones are, because they share the flag: the compass and the 39th PoH were both randomized into a GtG key, even though they have different contents in the vanilla game.
  44.  
  45. The 3 chests in beta Goron City share the flags with the 3 chests in normal Goron City, so they're also modified to have the same contents.
  46.  
  47.  
  48. The "generic grotto" chests inside non-generic grottos follow the same rule, meaning that setting the grotto data with Minuet (or a savewarp), Serenade or Requiem will use the randomized chest content from the 3 default grottos in Hyrule Field (for more info: pastebin.com/9tSWCU94)
  49.  
  50. EXPLANATION:
  51. Yeah, that sounds right. For chests, the lookup key is always just determined by the current scene and the chest flag. The contents of the chest are actually irrelevant for deciding what randomized item you get. For comparison, the lookup key for a freestanding Heart Piece is determined by the current scene and its collectible flag. Since the 37th HP doesn't share a collectible flag with anything else which would be randomized, its lookup key will not be found, and it won't be randomized.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement