Reverse Bottle Adventure (RBA) Continued
Make sure to read the Introduction first! You’ll need that in order to understand this.
RBA can be used to duplicate bottles. Here’s an example process how. Let’s say you have Bugs on B and the Ocarina of Time on C-Right. You drop the Bugs so now the game overwrites your Bugs on B with Empty Bottle (0x14). It then adds 0x03 to the address and reads the Item Value of the Ocarina of Time (0x08) and uses this as the offset for the Inventory Screen. Take a look at the Inventory Screen once again:
Remember, counting starts at 0. Slot 8 is the Bombchu slot. Therefore, the Bombchus will be overwritten with an Empty Bottle. Using this method, you can theoretically overwrite all items except the Fire Arrows with a Bottle. Why not the Fire Arrows? Fire Arrows are unequippable to C-Right and as such there is no possible item on C-Right you can equip in order to overwrite the item. If you equip Fire Arrows to C-Right through tool-assisted means, however, you can get a Bottle.
Now, let’s talk about the cool things RBA can do, because duplicating Empty Bottles isn’t the most intriguing thing achievable. Take a look at this memory listing:
- $11A644 - $11A65B Inventory Item Screen Items
- $11A65C - $11A66B Inventory Item Amounts (example: how many Deku Sticks do you have?)
- $11A66C Compressed Byte: Tunics and Boots
- $11A66D Compressed Byte: Swords and Shields
- $11A66E - $11A670 UNUSED BYTES
- $11A671 - $11A673 Compressed Bits: Left-Side Equipment
- $11A674 Quest Screen: Heart Pieces
- $11A675 Quest Screen: Songs and Stones
- $11A676 Quest Screen: Songs
- $11A677 Quest Screen: Medallions and Songs
- $11A678 - $11A682 Dungeon Items (Map, Compass, Keys)
Wow, that seems like a lot! And it is! But hey, you can access those bytes in memory and can modify them using RBA! For example, let’s say you have Milk (0x1A = 26) on B. Drinking it doesn’t cause an Empty Bottle (0x14 = 20) to occur but rather Half-Milk (0x1F = 31) will be written ONLY if the game determines there was Milk already present. More specifically, if the memory RBA is trying to access contains the value of Milk (0x1A = 26) it will overwrite it with the value of Half-Milk (0x1F = 31) even if the memory in question isn’t associated with items.
Let’s take a look at $11A66D. This byte dictates what Swords and Shields you have, exactly as below:
- xxxx_xxx1 Kokiri Sword
- xxxx_xx1x Master Sword
- xxxx_01xx Biggoron Sword/Giant’s Knife (same item, flag elsewhere controls which is which)
- xxxx_11xx Broken Giant’s Knife
- xxxx_10xx “Broken” Icon
- xxx1_xxxx Deku Shield
- xx1x_xxxx Hylian Shield
- x1xx_xxxx Mirror Shield
In order to access $11A66D, the Zora Mask (0x29) must be equipped on C-Right. If the value if equal to that of Milk, 0x1A, performing RBA will overwrite the value with 0x1F. In bits, 0x1A is 0001_1010. So, if you ONLY have the Deku Shield, the “Broken” Sword Icon, and the Master Sword (need to delete your Kokiri Sword with a different RBA), then performing Half-Milk RBA with the Zora Mask on C-Right will give you the Kokiri Sword and the Biggoron’s Sword.
One last trick before I stop. In order to access $11A677, the byte that determines which Medallions you have, you must perform RBA with the Poacher’s Saw (0x32) on C-Right. If you write back the value 31 using Half-Milk, the game will give you the following below, in bold:
- xxxx_xxx1 Forest Medallion
- xxxx_xx1x Fire Medallion
- xxxx_x1xx Water Medallion
- xxxx_1xxx Spirit Medallion
- xxx1_xxxx Shadow Medallion
- xx1x_xxxx Light Medallion
- x1xx_xxxx Minuet of Forest
- 1xxx_xxxx Bolero of Fire
Doing this deletes the Light Medallion and makes it unobtainable for the rest of the game. However, the game only checks if you have the Spirit Medallion and the Shadow Medallion. If you have both of those, which you will have after this particular RBA, then you can get Light Arrows, the item you need in order to open the path to the final dungeon of the game.
If you want more information, read the RBA article on Zelda Speed Runs.
Until next time!