Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Video Reference (not an annotated guide, you will still need the text guide to elaborate): https://www.youtube.com/watch?v=N8CnhPLQFLs
- Pre-guide note: Some portions of this guide might not explain some terminology/concepts fully, and thus might be confusing to new "glitchers". I might re-write this guide later on to clear up on such things.
- === Making VC Pokémon Red/Blue into an efficient way to transfer *ANY* Pokémon you want. ===
- Introduction:
- Ever since PokeBank came out, multiple people have been creating arbitrary code execution setups to create "legitimate" Mews to transfer to Sun/Moon. However, most of those setups use inefficient ways of achieving arbitrary code execution, or do not assume any save file. This ACE setup is designed:
- - To create the 20 Pokémon to be transferred as efficiently as possible, with the purpose of competitive battling.
- - To not lock out certain save files.
- - To allow customizing all attributes of transferred Pokémon, such as:
- - Species
- - Moves
- - DVs (for shininess)
- - OTID
- - Level
- - Experience (for nature)
- - Pokémon Name
- - OT Name
- Unlike other 8F setups, this abuses the "Item Underflow" glitch much more. This glitch allows us to access bag items past the normal limit of 20, so we can "memory edit" whatever memory resides after. Getting this glitch is crucial for the setup, as it allows us to easily obtain the items required for the setup, and is necessary for the particular ACE exploit used.
- Note that this setup is much more complicated than the current 8F setups, however the payoff is much greater. It is strongly recommended to try this out on an emulator before doing it on 3DSVC due to the complexity.
- Now with the introduction out of the way, it is time for the setup.
- == 0. Pre-requirements and notes ==
- Pokémon Red/Blue for Virtual Console. This specific setup does not work with Pokémon Yellow, although it is definitely possible to create a setup specific to Yellow. This setup will not work on the Japanese version of Red/Blue, although it might work on EU versions (untested).
- A save file which can use Fly, and has access to the following locations:
- - Pallet Town
- - Viridian City
- - Cerulean City
- - Lavender Town
- - Saffron City
- - Celadon City
- If you are progressing through the game normally, you should have all but Saffron unlocked, which is trivial to unlock. Also, the Fly Pokémon must be in the party during the setup.
- A save file without item underflow (i.e. normal amount of bag slots):
- - This setup assumes that you do not have item underflow. If you do, either get rid of it or figure out how to acquire the items needed for the setup on your own.
- Side-effects of the setup:
- - Box Items will be hopelessly corrupted (as we use the location to store our code)
- - Your inventory will stay underflowed. This implies that:
- - Obtaining items will most likely clear your inventory, depending on how many items you've picked up. This basically prevents you from casually progressing any further. Be warned!
- == 1. Pre-Item Underflow requirements and getting Item Underflow ==
- Before we get Item Underflow, we need to prepare some stuff regarding our inventory:
- - Buy Fire Stone x1 and Thunderstone x1 (in any order).
- - Swap Thunderstone x1 into the 6th slot.
- - Fill up your inventory so that it is completely full (20 inventory slots, which is the maximum).
- To get item underflow, you'll need any tossable item with a quantity of 255, which can be obtained by encountering Missingno./'M twice:
- - Encounter Missingno./'M using your preferred glitch.
- - Toss 2 from the stack of Thunderstones to get Thunderstone x127 (denoted as []7 in-game).
- - Encounter Missingno./'M again.
- Underflowing the inventory:
- - Swap Thunderstone x255 to the third slot
- - Have two tossable items in the first and second slot
- - Toss the aformentioned two items
- - You'll notice that the Thunderstone x255 stack has duplicated. Toss the first Thunderstone x255 stack 17 times so that you have one item remaining in the bag. When tossing the Thunderstones, it'll appear that they aren't actually being tossed, but if you scroll downwards you'll notice that you won't be able to reach the bottom of the inventory, since the number of items in the bag is being decreased when tossing the Thunderstones. To verify that you only have one item in the bag, the 2nd item should act as a cancel button.
- - Toss 247 from the first stack of Thunderstones to get Thunderstone x8
- - Note on tossing: Throughout the setup, you will need to toss amounts above 100, which can be hard as the tens digit is represented by a map tile. One method of doing this is to keep track of the tens place every time it changes. When tossing amounts which are close to the item quantity, it's preferred to toss "downwards", by wrapping the amount to the quantity of the item.
- - Swap the Thunderstone x8 stack with the Thunderstone x255 stack to create a Thunderstone x7 stack.
- - Without backing out of the menu, swap the Thunderstone x7 stack with the Thunderstone x255 stack to create a Thunderstone x6 stack. You now have item underflow.
- == 2. Acquiring the items ==
- Now that we have item underflow, we need to take a trip to some locations for the items required for the ACE. Luckily, item underflow makes things much easier to obtain certain items. Before doing anything, you'll need to learn some quick "terminology":
- - Useless (item): An item which isn't needed for the setup. Basically anything that wasn't specified in the setup.
- - Click item: An item which will force you to press A/B to continue. While some items become click items depending on the screen tiles before opening the item menu, other items will always be click items.
- - TMTrainer item: An item which has an unterminated name, causing it to read its name from screen data (if the name is not improperly terminated). This has the potential to be a click item, and thus should be handled with care.
- - "in item underflow": This refers to any item which is past the 20 slots of the regular inventory. You can access this by scrolling past the Cancel button (which becomes an item).
- - Note: Whenever a bullet point says to "Swap" an item, this assumes that you should be in the item menu, or open it if you aren't in it.
- So upon obtaining item underflow:
- - Fly to Saffron City, and walk to this location: http://i.imgur.com/63tLjYA.png
- - Open the item menu.
- - Swap a useless item with a "Max Potion x[]1" in item underflow. (The [] will be a map tile and not a number)
- - Swap the TM40 x[]8 a few items above the current cursor position with the "Options" item.
- - The options item can be identified as the item four slots above the "Brightness/Palette" item (Usually an Ultra Ball x0/Old Amber x0), which is two slots above an HM item (or very rarely a TM01, depending on the current map).
- - In this case, the Options item should be six slots above the HM05 in Item Underflow.
- - Toss 6 from the swapped TM40s to get 192 ([]2)
- - You should now have instant text. Note that you should not look at the Options menu or else you will lose this effect and you will have to set it up again, by changing the options to "Fast/Off/Set" and tossing 1 from the Options item.
- - Note: This is the time to get rid of any click/TMTrainer items in the Rival Name/Money/Trainer ID item slots. All items above the TM40 x[]2 but below the main inventory are part of the Rival Name/Money item slots. The Trainer ID item is one item above the Brightness Item (Ultra Ball x0):
- - Press select on the offending item.
- - Swap with any item below Parlyz Heal x16 (does not include the Parlyz Heal), as long as it doesn't appear to print random "junk" to the screen, identifiable by the fact that it prints past the intended space for the item name.
- - Continue doing this until all offending items are gone.
- - Note: If the badges item (one below the options item) is a tmtrainer/click item, temporarily swap it with Paralyz Heal. This will change your badges so that you only have 1 through 4, although this can be remedied.
- - Note 2: Do NOT swap a Max Elixer or an item with a quantity of 83 into the "Rival Name" portion. This will put a "Rival Name" control code into the Rival Name, causing the game to hang if the rival name is printed (which is common via TMTrainer items).
- - Scroll to the Fire Stone x1 in the main inventory, then fly to Celadon City.
- - Take one step to the left.
- - Swap Fire Stone x1 with Rare Candy x0 in item underflow.
- - Close the item menu, and take one step downwards.
- - Open the item menu. The Fire Stone x1 should have become a Fire Stone x0.
- - Toss 15 from the Fire Stone x0, to get Fire Stone x241.
- - Note: Do not worry if you forget to perform a toss. These can be fixed near the end of the setup.
- - Swap the Fire Stone x241 with a useless in the main inventory.
- - Swap a useless with a Great Ball x255 in item underflow.
- - Note: Do not scroll past the Great Ball x255! Somewhere below is a TMTrainer item, which will cause a lot of clicks.
- - Optional: Get rid of the unswappable cancel button in the badges slot.
- - If you have all eight badges, there will be a Cancel button in the badges slot, which cannot be swapped. This might make the setup harder as all items below it will be masked, until it is not in the current bag view.
- - Note that if you swapped the Parlyz Heal into the badges slot earlier (or if you don't have all 8 badges and you want all the useful ones), then you can simply swap the badges item with TM23 x64. This will give you all badges except Sabrina's, which does not do anything.
- - To get rid of the cancel in badges:
- - Swap the Master Ball item directly below badges into the tileset item. Depending on the last indoor map you've been in, this can be a Moon Stone, Potion, or a handful of other items. For simplicity, this will be referred as Tileset.
- - You will temporarily lose instant text here.
- - Toss 1 from the swapped Tileset.
- - Toss the cancel directly above the Tileset. This is done by pressing down, so that you will toss 0 items.
- - Scroll all the way back to the badges item
- - Swap the upper Tileset stack with the TM23 x64 some items below
- - Swap the Master Balls swapped into the tileset slot with the "Tileset x255" item ([]5)
- - Swap Ultra Ball x0 two items below into the tileset slot
- - Fly to Pallet Town.
- - Open the item menu, and scroll a bit down until you see an Ether x171
- - Note: you might see an Ether somewhere in rival name. To simplify the guide, do not use this Ether.
- - Swap this with a useless item in the main inventory
- - Toss 168 from the Ether x171 to get Ether x3
- - Swap a useless with HP Up x0 in item underflow.
- - Scroll up a few to a Master Ball x0 stack. Swap this with a useless in the main inventory.
- - Fly to Cerulean City.
- - Go to Route 24. You'll be on Route 24 when the music changes/the first Trainer appears on the bridge.
- - Swap a useless with TM31 x70 in item underflow.
- - Travel down to Route 9 (East of Cerulean)
- - Swap a TM13 x86 nearby your current position in item underflow with a useless.
- - Toss 44 from the TM13 x86 stack to get TM13 x42
- - Go to Route 5 (South of Cerulean)
- - Swap a useless with 9F x73 (glitch item) in item underflow.
- - Fly to Viridian City
- - Go to the house with a bird inside it (the house is adjacent to the girl in Viridian)
- - Open the item menu.
- - Scroll a few items upwards to get to a TM22 x65 (Note: You will see some nasty TMTrainer items. Ignore them and they won't bite/crash your game)
- - Swap this TM22 x65 with a useless in main inventory.
- - Toss 62 from the TM22 x65 stack to get TM22 x3
- - Exit the house.
- == 3. Nicknaming bootstrap. ==
- Before we get the final items, this is a good time to complete another part of the setup. Most of the items collected don't actually form the final setup for mass farming Pokémon, they're just used to convert box Pokémon nickname data into actual code to run. Thus, we need to catch some Pokémon to nickname.
- - If you aren't in an empty box, or the current box is Box 1, then change boxes to an empty box.
- - Go to Route 1 and get into a wild battle.
- - Inside the wild battle, open the inventory and use the "9F" item.
- - From this point onward, if you save and reset during the process, you must go back to Route 1 and use 9F in battle again.
- - The game now thinks you're still in a battle, although game control is in the overworld. In this mode, we can repeatedly throw Master Balls to catch the enemy Pokémon (although it will become a Ditto after the first Pokémon is caught).
- - Press the Start button to open the Start menu.
- - Open the trainer card to refresh the map tiles, then open the Party Menu to fix your player sprite.
- - Go to Viridian Pokémon Center (Note: You cannot fly to Viridian or else you will lose the "In Battle" state)
- - To gauge your current location, open the Start Menu.
- - Walk to the PC.
- - If you don't have a full party (6 Pokémon), catch pokemon using the Master Ball x0 stack in main inventory until you have a full party.
- - After you have a full party, go to the following header in the guide based on the condition:
- - Go to "catch order, good select button" if you're okay with using the select button multiple times (or changing case using the label at the bottom of the nickname screen). These names are much less complicated than the other names.
- - Go to "catch order, bad select button" if you aren't okay with using the select button multiple times (i.e. original 3ds)
- - Name all caught Pokémon in order, based on the names below (end at "; end boxmon naming 1")
- - Note: If you mess up a name, then you must release all the Pokémon in the box and do it all over again!
- - The alternative is withdrawing and depositing Pokémon to "insert" the fixed name, which is much more confusing and not that faster
- - You can double check at the end using the list of names directly below the list of names used when catching (i.e. "box order, etc.")
- == 4. Final item bootstrap adjustments ==
- - Once you have caught and named all Pokémon, re-order the inventory to:
- [Any item]
- useless[1]
- Thunderstone x6
- TM22 x3
- Max Potion x121
- Ether x3
- Master Ball x??
- TM13 x42
- useless[2]
- Rare Candy x0
- useless[3]
- useless[4]
- HP Up x0
- Great Ball x255
- Fire Stone x241
- useless[5]
- - Note: You can ignore the listed quantities if they are different than the items in your list, they are just there for completion sake.
- - Note 2: "useless[#]" refers to a useless item which will be filled in later. The number replacing "#" is to keep track of the current useless item position.
- - Note 3: TM31 x70 will be used later, so it is not a useless item. 9F should be kept in the inventory as well in case you mess up.
- - Fix the following item quantities by tossing them to the wanted quantity
- - Format: [expected quantity of item] - [quantity to toss] = [quantity wanted]
- - Note: If you forgot to toss an item earlier when required, the quantity of the item might be different. Use math to figure out how much you need to toss, or toss 10 each time until you reach a recognizable number.
- - TM22: 65 - 62 = 3
- - Max Potion: 121 - 21 = 100
- - Ether: 171 - 168 = 3
- - Master Ball: ?? - ?? = 58 (toss in stacks of 30 until you get a recognizable number, then use math to toss to 58)
- - TM13: 86 - 44 = 42
- - Rare Candy: 256 - 5 = 251
- - HP Up: 256 - 254 = 2
- - Great Ball: 255 - 226 = 29
- - Fire Stone: 256 - 15 = 241
- - Your inventory should look like:
- [Any item]
- useless[1]
- Thunderstone x6
- TM22 x3
- Max Potion x100
- Ether x3
- Master Ball x58
- TM13 x42
- useless[2]
- Rare Candy x251
- useless[3]
- useless[4]
- HP Up x2
- Great Ball x29
- Fire Stone x241
- useless[5]
- Now we need to fetch some items in item underflow to complete our setup.
- - Swap useless[1] with Moon Stone x10 in item underflow.
- - Swap TM01 x10 a few items below with useless[5].
- - Toss 2 from the swapped Moon Stones to get Moon Stone x8.
- - Your inventory should look like:
- [Any item]
- Moon Stone x8
- Thunderstone x6
- TM22 x3
- Max Potion x100
- Ether x3
- Master Ball x58
- TM13 x42
- useless[2]
- Rare Candy x251
- useless[3]
- useless[4]
- HP Up x2
- Great Ball x29
- Fire Stone x241
- TM01 x10
- - For useless[2] to useless[4], swap the useless item with a []j. x255 in item underflow, then walk out and back in Viridian Center to "refresh" the []j. x255.
- - Note: Do not use the []j. glitch item or else you will crash!
- - For each []j. x255 stack in the main inventory, toss the following quantities respectively (follows the same format as above):
- - 255 - 69 = 186
- - 255 - 120 = 135
- - 255 - 121 = 134
- - Your inventory should look like:
- [Any item]
- Moon Stone x8
- Thunderstone x6
- TM22 x3
- Max Potion x100
- Ether x3
- Master Ball x58
- TM13 x42
- []j. x186
- Rare Candy x251
- []j. x135
- []j. x134
- HP Up x2
- Great Ball x29
- Fire Stone x241
- TM01 x10
- - Toss 58 from TM31 x70 in main inventory to get TM31 x12
- - Swap with a ws m x66 in item underflow.
- - Talk to the Cable Club lady.
- - If the setup was done correctly, the Cable Club lady should output an empty textbox, and your box items should look like "random" (but consistent) items.
- - Note: Do not touch /anything/ in the box items, or you will most likely mess up the stored code.
- - Release any Pokémon in the current box.
- - Throw a Master Ball from the Master Ball x58 stack.
- - Name the caught Pokémon the last name from the box names you were using (the name below "; end boxmon naming 1").
- - Toss 3 from the resulting Master Ball x57 stack to get Master Ball x54.
- - Toss 96 from the Max Potion x100 stack to get Max Potion x4.
- - Your inventory should look like:
- [Any item]
- Moon Stone x8
- Thunderstone x6
- TM22 x3
- Max Potion x4
- Ether x3
- Master Ball x54
- TM13 x42
- []j. x186
- Rare Candy x251
- []j. x135
- []j. x134
- HP Up x2
- Great Ball x29
- Fire Stone x241
- TM01 x10
- - Talk to the Cable Club lady again (empty textbox)
- - Change boxes to Box 1 (will save the game), and reset the game (Either A+B+Start+Select or Touch Screen + Reset)
- - If there are any Pokémon in Box 1, release them so that Box 1 is empty. (alternatively, Poke Transfer whatever is in Box 1)
- == 5. Farming procedure ==
- Now that the code has been loaded into box items (and some unused memory directly before box items), you can now perform the mass farming setup!
- - If this is the first time doing the setup, exit and re-enter the center.
- - Have 5 or 6 Pokémon in the party (required for setup).
- - Acquire LWAHeX code for the Pokémon wanted: (Website: https://niedzejkob.github.io/vcfarming/).
- - Have the first five Pokémon in the party named as the LWAHeX code.
- - Example:
- - Naming the first five Pokémon as the following code.
- - xhm!t/nuAH
- - OOOO?Yt/vc
- - oud?xy
- - [Nickname of Pokémon]
- - GF
- - Will give a:
- - L100 Shiny Mew
- - Hyper Beam, Earthquake, Swords Dance, Softboiled
- - Adamant Nature
- - TID: 22796 | OT: GF
- - Nickname: [Whatever name you gave, although it's reset upon transfer specifically for Mew]
- - Be in Viridian Center
- - Scroll downwards to the TM40 x198 in item underflow, and toss 192 from the stack to get TM40 x6
- - Swap the TM40 x6 with a w sm x66 a few items above.
- - Talk to the Cable Club lady (the game is saved upon talking)
- - If the textbox creates an unpleasant screeching sound, then this means the setup has not failed.
- - To double check, reset the game and open the Party menu. If the 6th Pokémon in the party is the Pokémon wanted, and it has the correct nickname, TID, OT and moves, then the setup has not failed. Open the "Release" menu in the current box. If the box is filled with twenty of the Pokémon wanted, then the setup has worked!
- - For stat resetting efficiency, you can Home Menu once you hear the unpleasant sound from the Cable Club lady, and go to Poke Transporter to transport your Pokémon.
- Special thanks:
- - Progreon, who gave me the format to efficiently encode the nickname data into the raw bytes. (For anyone interested, it's the hex value of the first character multipled by 2 plus the hex value of the second character).
- - Dabomstew and Gifvex, who came up with the exploit to use text pointer manipulation to use arbitrary code execution. Gifvex also helped find me working pointers which pointed to bag items and box items.
- - Dabomstew, for creating a giant list which indicates the items in item underflow based on each map. (http://pastebin.com/raw/T5gHcAtb)
- - Everyone involved in the pokered disassembly, for making it much easier to create the setup. Without this, this would have been much more harder (and more inefficient) to create the setup. (https://github.com/pret/pokered)
- - ExtraTricky, for motivating me to create this setup.
- ===
- Catch order is the order to nickname Pokémon when catching them.
- Box order is the order in which the Pokémon appear in the box (when verifying nicknames).
- Since O3DS has a terrible select button position, there are two sets of nicknames that work the same. One set emphasizes readibility, while the other set tries to reduce using the select button as much as possible (to change upper/lowercase).
- ; catch order, good select button
- -C-sFzPyj-
- f?bzzUsyyr
- yzj?Kz-ck?
- tyUze? mKz
- e?amKzzxj?
- Kzk-OzzmPy
- i?Ozzrrmml
- OzzPfyy-Kz
- ezzP-ccJi?
- fy-:Kzi?Oz
- Kzi?Ozzrez
- l--OezzSw-
- Zy-;MzKzzv
- k-Ozm?gzza
- lzZyt-KyKz
- LzZy-SSpw-
- Lzm?ezZy X
- uz xNyyb T
- qyyTuyyEIz
- vzzanzkzzW
- ; end boxmon naming 1
- -Szy J I (8 characters)
- ===
- ; box order, good select button
- vzzanzkzzW
- qyyTuyyEIz
- uz xNyyb T
- Lzm?ezZy X
- LzZy-SSpw-
- lzZyt-KyKz
- k-Ozm?gzza
- Zy-;MzKzzv
- l--OezzSw-
- Kzi?Ozzrez
- fy-:Kzi?Oz
- ezzP-ccJi?
- OzzPfyy-Kz
- i?Ozzrrmml
- Kzk-OzzmPy
- e?amKzzxj?
- tyUze? mKz
- yzj?Kz-ck?
- f?bzzUsyyr
- -C-sFzPyj-
- ; end boxmon naming 1
- -Szy J I (8 characters)
- ===
- ; catch order, bad select button
- -C♂(VZ:[j-
- [,D♀J,U,W♀
- (♀j?h -cd,
- V, -;,JYX]
- ;,D?X](♀j?
- X]k-l ty(c
- i?l vzlyfz
- )]G♀H,-NX]
- G♀G♀?:X]i?
- H,-:X]i?l (10th character is a space)
- X]i?l vzez
- l-q,ezgyn♀
- C?-;Z]X]Z♀
- k-l f,gzza
- N♀C?-DX[X]
- Y]C?-S(]-J
- Y]m?ezak♂x
- W♀OZ([O♀ T
- S,H♀W,A,YZ
- X♀P,P♀M♀K,
- ; end boxmon naming 1
- -S), J I (8 characters)
- ===
- ; box order, bad select button
- X♀P,P♀M♀K,
- S,H♀W,A,YZ
- W♀OZ([O♀ T
- Y]m?ezak♂x
- Y]C?-S(]-J
- N♀C?-DX[X]
- k-l f,gzza
- C?-;Z]X]Z♀
- l-q,ezgyn♀
- X]i?l vzez
- H,-:X]i?l (10th character is a space)
- G♀G♀?:X]i?
- )]G♀H,-NX]
- i?l vzlyfz
- X]k-l ty(c
- ;,D?X](♀j?
- V, -;,JYX]
- (♀j?h -cd,
- [,D♀J,U,W♀
- -C♂(VZ:[j-
- ; end boxmon naming 1
- -S), J I (8 characters)
Add Comment
Please, Sign In to add comment