1 2
6 7 8
12 13
GoddessMaria
She/Her
Reviewer, Experienced player (868)
Joined: 5/29/2009
Posts: 519
Location: Hell...
The main problem and hold up is the glitch setup route at this point. I'm not sure how to proceed for the exact setup that is fastest and the one that does understand it deeply, I've not heard from him in a bit so I'm stuck... Here's the last WIP: Link to video
Current projects: failing at life
Experienced player (804)
Joined: 2/5/2012
Posts: 1814
Location: Brasil
how much faster are you so far?and who is the person you refer to?
I want all good TAS inside TASvideos, it's my motto. TAS i'm interested: Megaman series, specially the RPGs! Where is the mmbn1 all chips TAS we deserve? Where is the Command Mission TAS? i'm slowly moving away from TASing fighting games for speed, maybe it's time to start finding some entertainment value in TASing.
GoddessMaria
She/Her
Reviewer, Experienced player (868)
Joined: 5/29/2009
Posts: 519
Location: Hell...
At the end of this WIP, it is 2568 frames ahead. As for the person whom I've been referring to, it is Metarkrai.
Current projects: failing at life
Joined: 1/6/2012
Posts: 51
Location: France
After some work on speedrun routes and more uses of Pomeg Glitch, the TAS route for a 3-star / 4-star run of Emerald is clearer. 3-star consists of beating League, obtaining 7 Gold Symbols, and obtaining 5 paintings, as I don't know if filling the regional Pokédex would be entertaining in a TAS. EDIT : I made a pastebin of a reworked route http://pastebin.com/q6sbycRb I'm leaving that old route here as it could still help. Here, the route would look like this : -- Use the global route for the any% TAS. - Start with a SID of 0xXYYY, X being 0,1,2,3,8,9,A or B. (YYY being anything) - Set a specific hour at the beginning. - During the Pomeg Glitch corruption, maintain Up a bit longer to corrupt Bag Item quanties. (to quickly make money) - Obtain an invisible Bad Egg with that corruption. (a corrupted empty slot) - Beat League. - Choose Latias as a roamer. - Fly at Mauville, and go to the Berry Master's house to obtain a Belue Berry. Pick up 2-3 Berries in the garden too. ~League needs to be beaten to obtain that Berry. 3-4 Berries are needed to restaure Berry Pouch. - Fly at Ever Grande. -a) Surf towards Lilycove to unlock its Fly location. Make a detour through Route 129 to encounter a Lv 27 Wailord (1%, 1/6) with a Corruption Type of 3 (1/6) and a "good" PID (the 8th hexadecimal character of its PID must have a specific value out of 8 possible, 1/2). (Total : 1/7200) Fly to Lilycove. (the Wailmer barrier is still here) -a) Surf towards Mossdeep. Obtain Super Rod at Moosdeep. Surf towards Lilycove to unlock its Fly location. Before flying to Mossdeep, fish a Lv 27 Wailmer (30%, 1/6) with a Corruption Type of 3 (1/6) and a "good" PID (the 8th hexadecimal character of its PID must have a specific value out of 8 possible, 1/2). (Total : 1/240) Fly to Lilycove. (the Wailmer barrier is still here) ~A Pokémon with a Corruption Type of 3 and 16.486 Exp is required. Pokémon with a Fluctuating exp curve require the less experience to do this (Lv27 + 346 exp) (Other exp groups require 740 exp or more to get to 16.486 exp) A Corruption Type of 3 is needed to obtain an OHKO Glitch Move from Experience. This is one of the fastest ways to obtain a Glitch Move. And 0x4066 is the fastest OHKO Glitch Move on US Emerald. This strategy is here in case manipulating for a convenient Wailord is too tedious. I haven't searched yet if there are easy battles to gain 346 Exp. Else, Wailmer/Wailord will be deposited at Day Care. - Collect 2 Heart Scales and a PP Up. (Lilycove) - Sell a duplicated item to buy some HP Ups (6), 5 Iron and 1 Fluffy Tail at the Mall. - Obtain Pokeblock Case in the Contest Hall. - Make a Pokéblock with one of the picked berries, and one with the Belue berry. ~ I don't know which blender (1/2/3 NPC) is the fastest, but 3 NPC blender would be optimal for Belue Berry. The Pokéblock with the picked Berry must have some Spicy(Beauty). - Go in Route 121 towards Safari Zone. Meet Latias in the way. ~Latias needs to be met to obtain a Watmel Berry using the "LATIAS" word. - Enter Safari Zone. - In the beginning Zone, catch a Wobbuffet (10%) with Corruption Type 7 (1/12) and a "good" PID (the 7th hexadecimal character of its PID must have a specific value out of 4 possible, 1/4)(the 8th hexadecimal character of its PID must have a specific value out of 8 possible, 1/2). (Total : 1/960) ~This Wobbuffet will become the Pokémon that will beat contests. Corruption Type 7 was required to manipulate Ribbons with PP Bonuses and Friendship and Species with EVs. The combination of Contest moves that will be used can be directly made with Regice/Registeel/Regirock, or with Meditite/Poliwrath + Explosion/Destiny Bond. Poliwrath is the fastest one to obtain with EV manipulation. And catching a Wobbuffet is the fastest way to obtain a Pokémon knowing Explosion/Destiny Bond. - Fly at Slateport and buy X Energy Roots. - Go to Battle Frontier. Go to Battle Tower. Give PP Up to Pokémon A, a Heart Scale to Pokémon B. Clone Pokémon A and Pokémon B. (2 PP Ups, 3 Heart Scales) Clone Pokémon A and Pokémon A. (4 PP Ups, 3 Heart Scales) Clone Pokémon A and Pokémon A. (6 PP Ups, 3 Heart Scales) Withdraw the PP Ups and Heart Scales. - Fly at Mauville, and go to the Berry Master's house to obtain a Watmel Berry. ~The clock must be past midnight in order to get a second berry from the Berrymaster's wife. And Latias needs to be met in order to use the "LATIAS" word for a Watmel Berry. - Give Wailmer/lord the Exp they need, and deposit them in PC. Put Astonish/Water Gun as 1st Move. (Astonish will give Pelipper, Water Gun Golduck) - Give 6 PP Ups to Wobbuffet. 1 for Move 1, 2 for Move 3, 3 for Move 4. - Give the Pokéblock from the picked Berry to Wobbuffet. ~ He will gain some Beauty, which will be needed to get a high levelled Poliwrath in order to learn Mind Reader (Lv 51) and Submission (Lv 0). - Make Wobbuffet fight a Marill at Route 117/102. (2 HP Evs) ~Route 117 if Wailmer/lord were taken from Day Care. - Put Wobbuffet in 3rd party slot or higher. - Make a wild battle to decrease Wobbuffet's Friendship to 0. Switch to let Wobbuffet take a hit. Use an Energy Root on Wobbuffet and take another hit after that. (-10 Friendship) Repeat until Wobbuffet hits 0 Friendship. Flee. - Give Wobbuffet 6 HP Ups and 5 Iron, then deposit it in PC. (62 HP EVs, 55 Friendship) (Iron is only here for Friendship) ~If a step cycle happens between the last fight and the way to PC, they can be delayed before the fight. (opening Bag to take another Energy Root would be slower) - Put Wobbuffet in Box 2 Slot 19 and Wailmer/lord in Box 2 Slot 24. ~A Double Corruption will be performed on these 2 Pokémon. As the PC Pokémon corruption from Pomeg Glitch is mainly 5-periodic, and as this corruption starts from Box 2 Slot 24, this placement will corrupt these 2 Pokémon in the least time (least amount of Up pushes). A Double Corruption is required for Wobbuffet because Ribbons and Level - Perform a Decaswitch to have a party with : Castform Bad Egg, Invisible Bad Egg ~Invisible Bad Eggs can be switched with the last alive Party Pokémon. Thus, you end up with a party full of KO/Egg/Bad Egg, and that contains more than 2 Pokémon, which will allow to set up a Pomeg Glitch without relying on Pomeg Berries anymore. - Perform a Pomeg Glitch data corruption to corrupt Wailmer/lord and Wobbuffet once. Use a Fluffy Tail to flee. ~This first corruption will corrupt either the TID (ID, SID couple), or the PID of these Pokémon. The condition on the leftmost hexadecimal character of SID and PID is needed in order to corrupt PID and TID with this setup. (else, a corruption initiator would be needed) - Perform a second Pomeg Glitch data corruption to corrupt Wailmer/lord and Wobbuffet. Black out to the Pokémon Center. ~Wailmer/lord will become a Lv 100 Pokémon knowing Fake Tears/Air Cutter and Glitch Move 0x4066. That Pokémon will either be Pelipper or Golduck. (due to 1st Move) (Pelipper/Golduck will be chosen depending on their cry lenght) Wobbuffet will become a Poliwrath at Lv 100 (due to Beauty and Coolness) with some Contest stats (due to its IVs), knowing Destiny Bond, and with all Hyper ribbons (due to PP Bonuses and Friendship). - Fly at Fallarbor. Make Poliwrath learn Submission and Mind Reader. (leave Counter to Poliwrath) Make Golduck/Pelipper learn Hydro Pump, and put 0x4066 in first slot. -- Fly to Battle Frontier and beat all 7 Battle Frontier buildings with this Golduck/Pelipper. ~Battle Factory still needs to be beaten without any tricks as changing your winning streak it too tedious (requires other Glitch Pokémon to also restaure trainer name and other things), and as you can't easily change your 3 Pokémon party. (The only way is to change the number of the previously selected Pokémon, then corrupt the receptionist's script to be taken to the Factory with the previously selected Pokémon) Battle Pike will consist on avoiding every battle, except the Leader. Hydro Pump is required to get through Shuckle (Silver) and Steelix (Gold). Battle Tower : All Sturdy/Shedinja fights will be avoided. The OHKO Move will take care of everything. If Golduck/Pelipper knows Air Cutter, Shedinja can be taken care of. (and it would be a fast Pokémon to kill) Battle Arena : The OHKO Move will take care of everything, except Leader's Shedinja. (Silver) If Pelipper/Golduck doesn't know Air Cutter, Poliwrath can kill Shedinja with Counter. Battle Pyramid : All trainers will be avoided, except the Leader. OHKO Move will take care of his Pokémon. Battle Dome : OHKO Move will take care of everything. An Instant Flee Glitch Move might be faster here, so a 3rd Pokémon could be caught and Double Corrupted in order to have an IFG ready for that area. [Test] Battle Palace : OHKO Move will take care of everything. Having Hydro Pump on Pelipper/Golduck would be an hindrance to get a series of 3 OHKO Glitch Move choices. Moves are separated into 3 categories (Offensive, Defensive, Sneaky, O,D,S) depending on their targets (and the effect for some cases, I don't remember well). The chance to use a Move on one of these categories depends on the Pokémon's nature. (there's also a specific case when the Pokémon's HP is below 50%) Here, the chance to use 0x4066 would be : 0x4066, Hydro Pump, Air Cutter (1) 0x4066, Hydro Pump, Fake Tears (2) (1) (0x4066 chance) = 1/3*( (O chance) + 1/2*(D chance) + 1/2*(S chance) ) = 1/6 + 1/6*(O chance) (2) (0x4066 chance) = 1/2*( (O chance) + 1/2*(D chance) ) = 1/2*(O chance) + 1/4*(D chance) If we removed Hydro Pump and Air Cutter/Fake Tears at Lilycove, we would have : 0x4066 (3) (3) (0x4066 chance) = (O chance) + 1/2*( (D chance) + (S chance) ) = 1/2 + 1/2*(O chance) Which is 3 times higher than in case (1) The time taken to get to the move eraser would be too important to compare to more waiting frames in order to get a battle with 3 consecutive 0x4066 uses (and no Focus Band activation), but manipulating the battles would be easier. - Once the 7 Gold Symbols are obtained, Fly to Lilycove and enter the Contest Hall. - Blend the Watmel Berry. ~I don't know which blender is the fastest one (1/2/3 NPC) but, 3 NPC would be optimal for Watmel Berry. - Give Pokeblocks from Belue and Watmel to Poliwrath. Thanks to his ribbons, Poliwrath can directly enter Master class contests. He needs to win with a final score higher than 800 to trigger the painting event. Here, the combo : Mind Reader (3) - Submission (6*2) - Mind Reader (3) - Submission (6*2) - Destiny Bond (8) will be used. The amount of hearts it gives is : Cool (40), Beauty (38), Cute (38), Smart (41), Tough (38). Ovations can add few more hearts in Cool and Smart contests, but they shouldn't be required. The downside of this combination is that being startled on Submission makes you lose a whole lot of hearts (generally a dozen), which isn't affordable. Without any Contest stats, 40 hearts are required to obtain a final score of 800. (Final score = 20*Hearts + Voting score) Thus, Contest stats are required to decrease the requires amount of hearts to obtain a score of 800. The base Contest Stats of Poliwrath should be : ~66 / ~10 / 0 / 0 / 0 / 0, as Cool and Beauty are affecter by the IVs (up to 255 and 63). The Belue + Watmel Pokeblock combination is the most optimized one to decrease the amount of required Hearts in all 5 categories. With 1 Belue and 1 Watmel Pokéblock, the amount of required hearts becomes : Cool (33), Beauty (35), Cute (35), Smart (36), Tough (34). By doing all the Lilycove stuff before the League in order to bring Wobbuffet to the Hall of Fame (killing it + performing Decaswitch), Poliwrath would have an additional 128 Smartness. With League Ribbon, 1 Watmel, and 1 Belue Pokéblock, the amount of required hearts becomes : Cool (33), Beauty (35), Cute (32), Smart (30), Tough (31). With League Ribbon and no Pokéblocks, the amount of required hearts becomes : Cool (37), Beauty (38), Cute (37), Smart (34), Tough (36). Thus, depending on the ability to manipulate the opponents Pokémon as well as the moves they choose (some categories have many Pokémon that use troubling moves), it could be possible to skip Belue and Watmel Pokéblocks with the League Ribbon. This would required to not take any heart loss on Beauty and Cute (and maybe Tough). And obtaining the 5 paintings would be the end of the run, who could end on the trainer card. (as it would be the fastest required time to obtain 3 Trainer stars). But I don't really know if the Battle Frontier part will be that nice to watch, because it will mainly consist of skipping battles or using an OHKO Glitch Move. (there is a lot of manipulation involved, but the result doesn't show it) Anyways, the route is mainly completed, and only small time savers need to be tested/discussed. Using other Pomeg Glitch techniques would require to catch other Pokémon and Double Corrupt them, which wouldn't be worth the time. Also, the research about Pomeg Glitch starts to hit the edges. Apart from Arbitrary Code Execution (who would have many uses, but not in this run), the ways to make Pomeg Glitch/Glitch things interact with the game have been tested in many ways, and there are not many things left to test or get. ACE still hasn't been verified, but it could normally be doable using Glitch Moves animations, and PC Pokémon data + PC Items to write the code. As I was kind of quick about Corruption Types, here is a link with tables that describes them, along with their correspondance with a Pokémon's PID : http://www.petit-fichier.fr/2016/02/15/precisions-sur-les-sous-structures-de-la-gen-iii-en/precisions-sur-les-sous-structures-de-la-gen-iii-en.html
Skilled player (1744)
Joined: 9/17/2009
Posts: 4986
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
I have no idea what parts of the route even meant, but how possible would it to make a very rough run that visualizes this? Also, you mentioned you could dupe items using the pomeg glitch for money early on. Would that be faster to dupe PP UP/heart scales as well like this, or does later glitching need those pokemon to be duped as well?
Joined: 1/6/2012
Posts: 51
Location: France
jlun2 wrote:
I have no idea what parts of the route even meant, but how possible would it to make a very rough run that visualizes this? Also, you mentioned you could dupe items using the pomeg glitch for money early on. Would that be faster to dupe PP UP/heart scales as well like this, or does later glitching need those pokemon to be duped as well?
Oh yeah, you're right, PP Ups and Heart Scales could be duplicated. Since 3 clonings are required to get 6 PP Ups and 3 Heart Scales, doing 1 Pomeg Glitch would be faster. In general, the duplication is only used to affect some items in order to sell them and make som cash, as forcing a duplication on a certain item takes more setup. But here, by depositing an Heart Scale into PC, leaving a PP Up into the Bag (with a certain position), and by having a certain position of RAM values, it could be possible to corrupt both of them. The first duplication would also become useless and would not be done. Thus, the trip to Lilycove would be done before entering Victory Road. The duplication of PP Up and Heart Scales would be done before going into Lilycove's mart, using the freshly caught Wailmer/lord and a Decaswitch in order to keep the same party. I will change that later on, thanks. If you have troubles figuring what I meant at some parts, feel free to ask me, because I'm not always clear in my explanations. I tried to write reasons/necessities behind most of the choices (or why other choices don't work), but that lenghtens the post. I also didn't go on some principles of things like Pokémon Corruption or others, as I do it oftenly on other areas and as only tiny parts of it are needed here (the RNG manipulation to obtain interesting PID makes most of the work, the rest being about training the Pokémon and corrupting it). The principle of the run is to perform Pomeg Glitch a first time to obtain an Instant Flee Glitch Move, in order to beat the League. Some items must be collected for later, and some cash is required to buy EV boosters that are pricey. Then, one Pokémon is caught in order to obtain an OHKO Glitch Move to take care of Battle Frontier, and another Pokémon is caught in order to obtain a Pokémon with some ribbons and a move combination that can beat Master class contests as easily as possible. Discussions on the pokemonspeedruns topic about a 4-star run really helped for that part, because I already knew what were the easiest Pokémon to obtain for Battle Frontier and Contests in a speedrun, and how to obtain them. In the speedrun, 3 Pokémon are needed for Battle Frontier in order to take care of some annoying Pokémon and random buildings (mainly Battle Palace). But here, luck manipulation being on our side, a single Glitch Move takes care of nearly everything. And if using an Instant Flee Glitch Move proves to be faster in Battle Dome, a third Pokémon will be caught in order to obtain another Instant Flee Glitch Move. (A Smeargle could also be caught and Sketch the IFG the Bad Egg knows, but I don't know yet if that would be faster or not). Most of the details I gave in my post were mainly about doing all the required sub-tasks to get the whole run working, and about doing them as fast as possible. EDIT : Here is the pastebin http://pastebin.com/q6sbycRb I included the PP Up and Heart Scale duplication, as it saves time. (A fight + Item duplication takes ~35-40 seconds, whereas cloning takes ~50 seconds. Even with small time losses due to 1-2 more Fly uses and movements in the first case, an Item duplication is faster than 3 clonings) I also moved the Lilycove section before League, in order to make Wobbuffet gain the League Ribbon. Thus, if it is possible to make Master class contests without being startled once, Belue and Watmel Pokéblocks will be skipped. I also tried to make things easier to read.[/u]
GoddessMaria
She/Her
Reviewer, Experienced player (868)
Joined: 5/29/2009
Posts: 519
Location: Hell...
It looks like a neat route, but the work that will have to go into it... x-x
Current projects: failing at life
Joined: 1/6/2012
Posts: 51
Location: France
GoddessMaria15 wrote:
It looks like a neat route, but the work that will have to go into it... x-x
Yeah, manipulating Battle Frontier fights and areas to find an optimal combination will be tough. Skipping parts of it ended up being unuseful, as you need too many Glitch Pokémon for a tiny change (you need the Silver symbol to have the Gold Symbol fight, and you need multiple Glitch Pokémon to restaure things like trainer name, access to PC, party,..) I made an archive with saves that contain the Pokémon that will be used for Battle Frontier and Contests (copies of them with the main characteristics). http://www.petit-fichier.fr/2016/03/29/3star-emerald-testing/3star-emerald-testing.zip - Poliwrath hasn't eaten Pokéblocks yet, so it can be tested with and without them. (The Belue and Watmel Pokéblocks are already done) - I also included an Invisible Bad Egg for Decaswitch, a Pidgey with an IFG Move that can be seen (it is easier to deal with it), and I left all the Pokémon required for the 3Star Speedrun (Tortank, Blissey, Smeargle,Dragonair,..) - You also have a lua script I use to quickly obtain data about PC/party Pokémon. It isn't optimized but it does the trick. - Contest opponents are chosen right after you press A to select your Pokémon. This makes opponents quite manipulable, which is really nice in order to attempt contests without any startling. - The moves a Pokémon chooses seem to mainly depend on its position, the amount of turns, if he has a combo (or something like that). But sometimes a Pokémon can change the move he wants to use in a certain situation (turn, order, amount of hearts,..). - As Pokémon that have the same heart score are randomly ordered (like a speed tie), the order of some Pokémon on a turn can be manipulated on a previous turn. - Nervousness RNG is determined after you choose your move, so it is easily manipulable. I would like to perform contests without any startling on Poliwrath. Thus, he would gain 38 hearts and have a total score over 800 without needing Watmel and Belue Pokéblocks. (And he would also win most of the time, unless a Pokémon mimics his score or wins 1-2 big ovations) Upokecenter has the only list I could find of Emerald contest Pokémon, but it is incomplete and doesn't include Master class Pokémon http://upcarchive.playker.info/0/upokecenter/content/pokemon-emerald-contest-trainers.html. Flawless victory achieved in Cuteness with Slaking, Skitty, Pichu. Flawless victory in Beauty against Skitty, Pichu, Electrode. Near flawless victory in Toughness against Wobbuffet, Sableye, Luvdisc. Pichu, Porygon, Electrode, Wobbuffet, Slaking are good to go. Luvdisc, Altaria can work. Bellossom, Jynx, Natu, Loudred are a no go. EDIT : I achieved a victory (along with the painting) in all categories without Pokéblocks. Thus, I'll edit the route to remove them. The amount of hearts Poliwrath can gain in each category is : Cool (40), Beauty (38), Cute (38), Smart (41), Tough (38). The amount of points they give is : (800 required) Cool (800), Beauty (760), Cute (760), Smart (820), Tough (760). Thus, Poliwrath needs a Voting score of 40 or more in Beauty, Cuteness, and Toughness. Having the League Ribbon on Wobbuffet gives 128 Smartness on Poliwrath, which gives 64 Voting score points on Cuteness and Toughness. (it doesn't take much time to kill Wobbuffet and include it to the party, compared to blending a berry and eating a Pokeblock) Having certain SpAtk and SpDef IVs on Wobbuffet will give enough Coolness and Beauty on Poliwrath to obtain a Beauty Voting Score of 40 or more. Most of the cases are successful (I listed them and I'll detail them in the pastebin). The chances to have IVs that work are 13/16, so they shouldn't be a hindrance to the manipulations.
Experienced player (804)
Joined: 2/5/2012
Posts: 1814
Location: Brasil
how far better you are from the opponents has a difference or just barely winning the contests has the same speed?
I want all good TAS inside TASvideos, it's my motto. TAS i'm interested: Megaman series, specially the RPGs! Where is the mmbn1 all chips TAS we deserve? Where is the Command Mission TAS? i'm slowly moving away from TASing fighting games for speed, maybe it's time to start finding some entertainment value in TASing.
Joined: 1/6/2012
Posts: 51
Location: France
grassini wrote:
how far better you are from the opponents has a difference or just barely winning the contests has the same speed?
The contests end up with an animation to compare the score of everyone. It starts by attributing the voting score, and then attributes the Heart Score. (each Pokémon is given a certain amount of stars/hearts, and these stars/hearts fill their score bar by a certain amount) Having a higher Heart score than needed would make a small time loss as your Pokémon would have more "tiny hearts" that fill his score bar. Thus, ovations on Coolness and Smartness must be avoided. Ovations are easily avoided as Poliwrath blocks appeal with Mind Reader, and they are the only way Poliwrath has to gain more hearts during the contest. Losing 2 hearts with a startling on Mind Readed could be possible, but I don't know if that would reduce the amount of "tiny hearts" given at the end of the contest. (Getting startled on Submission makes Poliwrath lose too many hearts) I updated the pastebin regarding Poliwrath contest stats, as Belue and Watmel Pokeblocks won't be used anymore. I also made some changes to make the Item Duplication faster. Fly will be used 1-2 more times, but skipping 1 wild battle, having 1 less Pokémon for Hall of Fame, and reducing PC/Bag openings make it worth. For the coming weeks, I will try to work on making a list of Contest Pokémon to use, test what kind of moves could be faster, and see some more things about Battle Frontier facilities. The fights with Shuckle, Steelix, and Shedinja have been worked out too. (Golduck's Hydro Pump 2HKO Shuckle and Steelix, and he needs Focus Band to survive Steelix's Earthquake. Golduck would also have Air Cutter from Wailmer, which would take care of Shedinja). Upokecenter page about Battle Frontier facilities (and lists of potential opponents depending on the win streak) : http://upcarchive.playker.info/0/upokecenter/content/pokemon-emerald-in-depth-guides.html The amount of potential opponents on a good amount of win streak values isn't that important. Thus, manipulating the opponents in order to have the fastest ones to kill won't be that tedious for most of the battles.
Skilled player (1744)
Joined: 9/17/2009
Posts: 4986
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Looking back, I just realized not only is there only 4 stars for Emerald, but it's filling the Hoenn pokedex for the star rather than all 350? available. While that's 200ish, not all of them need to be glitched through. The ones that do seem to be: http://bulbapedia.bulbagarden.net/wiki/Pok%C3%A9mon_Emerald_Version#Missing_Pok.C3.A9mon And the other starters/Lati@s. I'm not sure of 2 things: 1. How different would the route be 2. Given that you need time to setup the glitch, would it be faster to catch certain pokemon instead of mass register them at the pokedex? Btw, is it possible to use the Pomeg glitch to glitch a pokemon's max HP into always 0, for easier Pomeg glitching later on? Edit: Also, since you don't need to actually own the pokemon, just have it as "caught", are all the flags for that nearby and accessible with Pomeg glitching? That would save a lot of time, and make a 4 star run more...."feasible"?
Fortranm
He/Him
Editor, Experienced player (880)
Joined: 10/19/2013
Posts: 1122
I thought the method of ACE for this game was found around 2 years ago? Is the ACE unable to make you have 4 stars on Trainer Card right away yet?
Joined: 1/6/2012
Posts: 51
Location: France
jlun2 wrote:
Looking back, I just realized not only is there only 4 stars for Emerald, but it's filling the Hoenn pokedex for the star rather than all 350? available. While that's 200ish, not all of them need to be glitched through. The ones that do seem to be: http://bulbapedia.bulbagarden.net/wiki/Pok%C3%A9mon_Emerald_Version#Missing_Pok.C3.A9mon And the other starters/Lati@s. I'm not sure of 2 things: 1. How different would the route be 2. Given that you need time to setup the glitch, would it be faster to catch certain pokemon instead of mass register them at the pokedex?
Well, routing the Hoenn Dex completion should be easier on TAS than on a speedrun, as it is easier to determine how much time obtaining a certain Pokémon takes (mainly for wild Pokémon because you can't force them to appear). Even if nearly all Pokémon are in Emerald, obtaining the Dex entry of a good amount of them takes its time (level evolution, trade evolution, making a new game, solving a puzzle first, going at the depths of a cave, finding an evolution stone, making Pokeblocks, hacthing Eggs,..) Thus, to know if they have to be obtained with Pomeg Glitch or not, we need to compare the time it would take to obtain them normally, and the time it would take with the 2 possible Glitch methods. The 2 possible mehtods are : - Use a Glitch Move to set a trainer battle to a wild battle, then steal the Pokémon. It ends the battle, but it provides a good amount of Pokémon. As trainer Pokémon don't have the same ID/SID than us, they become Bad Eggs when stolen (the game changes their ID/SID to ours, which completely changes the encryption key of the rest of the data and also gives them an invalid checksum). - Use Pomeg Glitch data corruption to corrupt PC Pokémon and obtain the desired Pokémon. You need to obtain a Pokémon with a certain corruption type (it mainly needs to have its Growth substructure read on its EVs substructure), train it to give it EVs in HP and Atk corresponding to the identifiant of the desired Pokémon, then use a corruption to corrupt that Pokémon into an Egg of the desired Pokémon. Here, if a wild Pokémon is corrupted, the Egg would hatch in 1 Egg Cycle (255-256 steps at most). You can't use a Double Corruption because it doesn't give you the Dex Entry (whereas hatching the Egg does). A Pokémon with a Corruption Type of 6,7,8 would work. (No one is better than others here) The obtained Pokémon would be at Lv 5, which wouldn't be that useful for evolutionary lines (and thus, you would need to obtain every member of the family through corruptions). And here in TAS, up to 10 Pokémon can be corrupted at a time. (It would be 5 in normal cases because a corruption initiator would be required, but here I can work out a way to make successful corruptions without any corruption initiator). The EV training of the dummy Pokémon will be mainly done once. After that, you would clone that dummy 9 times, make 2-3 more battles, and have 10 dummies with differents EVs modulo 10. Then, you would only need to give them some Pomeg Berries (Kelpsy Berry sometimes) in order to obtain the amount of EVs you would like. As there are unobtainable Pokémon like Gorebyss or Huntail, and as the Regis, Rayquaza, Groudon,.. take time to be found, you gain time by making mass breeding for these Pokémon. (The initial EV training can even be skipped with a roaming Latias with a corruption Type of 6 (EVs read on Growth), as you would directly obtain a Pokémon with 1 Atk EV and 151 HP EVs) By also obtaining a Glitch Pokémon to clone faster, it would be faster to clone the dummy in order to obtain multiple Eggs at once. Master Ball can easily be obtained on the Pokémon that would know the Glitch Move to change the battle type. After that, Master Ball and Rare Candies would be duplicated like PP Ups and Heart Scales. (The route would be changed to duplicate PP Ups and Pomeg Berries, and Heart Scales would be cloned using the fast cloning glitch Pokémon). Thus, 3 more Pokémon would need to be caught : - 1 Pokémon with Attacks read on EVs and Growth read on Attacks that would learn an OHKO Glitch Move and a Glitch Move that turns battles into wild battles. He would also have Pound in order to get a Master Ball from him. (Wishmur) - 1 Latias with Corruption Type 6 and other specificities that would be Double Corrupted in order to obtain a dummy for all the corruptions. - 1 Pokémon with Growth read on EVs in order to obtain a cloning Glitch Pokémon and an Instant Pomeg Glitch Pokémon. And more cool things would happen, but I'm out of time now to describe them. ^^'
jlun2 wrote:
Btw, is it possible to use the Pomeg glitch to glitch a pokemon's max HP into always 0, for easier Pomeg glitching later on?
No, but there are two fast ways to perform a Pomeg Glitch : - Using Decaswitch. (https://www.youtube.com/watch?v=HhHlANrnOCI at 10:50) - Using Instant Pomeg Glitch (https://www.youtube.com/watch?v=BNvi05UH9zk at 1:13:33) Instant Pomeg Glitch would take no time to corrupt PC Pokémon. As the stats of a Party Pokémon are stored after its Pokémon data, there are no current method allowing you to change them without modyfying the values before it, which is why you can't put a Pokémon's Max HP to 0 easily.
jlun2 wrote:
Edit: Also, since you don't need to actually own the pokemon, just have it as "caught", are all the flags for that nearby and accessible with Pomeg glitching? That would save a lot of time, and make a 4 star run more...."feasible"?
These flags are numerous and gathered tightly, whereas Pomeg Glitch data corruption is very "light" (it can only happen on 3 specific bits on the leftmost byte of a double-word). There are also 3-4 areas that manage Dex entries (to prevent from easy corruption), and you really can't do a thing with this unless with ACE. But if you want, you can easily wipe out all the Pokédex entries with a single Glitch Pokémon. Getting the 4th star doesn't change the route so much, as catching Pokémon and things would be mainly separated from the other actions (except some Pokémon in areas that would be on our way, but that's it). You would only buy and take other items, and catch 1-2 other Pokémon for corruptions, and then start to catch massively once the required Glitch Moves are obtained. I'm a bit in a haste for now, but I'll write down more things about the requirements I have in mind. (I even put Master Ball as requirements as I didn't see that it wasn't needed at all, my bad.) 4Stars was my main goal after any%, because Emerald is the first version to introduce the nurses that give you respect when your trainer card is completed.
Fortranm
He/Him
Editor, Experienced player (880)
Joined: 10/19/2013
Posts: 1122
Just saw the part where you talked about ACE. Sorry that I didn't read the whole thing first. How different is normal Pomeg glitch from ACE then? Is it possible to get the Fly location for Battle Frontier through RAM corruption similar to how you get to Ever Grande City? It's probably better to end the run at HoF.
Joined: 1/6/2012
Posts: 51
Location: France
After some plannings, here is the current plan I have for 4Star perparations in terms of Pokémon to corrupt : - Lv 27 Wailmer. (Fish at Mossdeep with Super Rod) Leftmost PID character of 0,1,2,3,8,9,A,B. Corruption Type of 3. (PID congruent to 10,11,20,21 mod 24) Growth read on Attacks. Attacks read on Growth. Needs 16.468 Exp. (+346 Exp at Day Care) Will be cloned once. The clone will hold Durin Berry. Once corrupted, gives a Lv 100 Golduck with OHKO Glitch Move 0x4066 for Battle Frontier. The corrupted clone will give a Golduck with OHKO Glitch Move 0x4066 and Sketch for Trainer stealing. - Wobbuffet. (Safari Zone, starting area) Leftmost PID character of 0,1,2,3,8,9,A,B. Second leftmost PID character of 5,7,D,F. "Good" SpAtk and SpDef IVs. (see Notes here : http://pastebin.com/q6sbycRb ) Corruption Type of 7. Growth read on EVs. Moves read on Moves. Miscellanous read on Growth. Needs 62 EVs to obtain a Poliwrath. Needs some Coolness/Beauty to have a Lv 100 Poliwrath. (for Move Relearner) Needs 55 Friendship and specific PP Bonuses to obtain all Hyper ribbons. Needs Destiny Bond. (Hence Wobbuffet) Once corrupted, gives a Lv 100 Poliwrath with direct access to every Master contest, and Destiny Bond (for Mind Reader, Submission, Destiny Bond moveset). - Lv 10 Wingull. (Surf between Ever Grande and Mossdeep) Leftmost PID character of 0,1,2,3,8,9,A,B. Second leftmost PID character of 5,7,D,F. EVs substructure as second substructure. (for corruption initiator) Corruption Type of 3/6. Attacks read on Growth. Needs 1.066 Exp. (+66 at Day Care) Will be cloned 2-4 times. Will need to eat some Pokeblocks to have speific Beauty and Feel. (3 Durin, 1 Pamtre / 3 Durin, 2 Cornn or 6 Chesto) Some clones will be used as corruption initiators. Once corrupted, he will know Change Battle Type Move 0x042A, which will be sketched by Golduck n°2. - Roamer Latios. Leftmost PID character of 4,5,6,7,C,D,E,F. Second Leftmost PID character of 4,6,B,D. Corruption Type of 8 and "specific" substructure order (PID congruent to 16,17 mod 24) Growth read on EVs. EVs read on Growth. Will need 64-127 Speed EVs. (70 Speed EVs with 7 Carbos) Will need non-zero HP Evs. (10 HP with 1 HP Up) Will need to be caught with a Premier/Timer/Repeat/Luxury/Nest Ball. (Premier Ball will be used) Its TID will be corrupted normally, while its PID will be corrupted using the Corruption initiator. Will become a Caterpie with 1 Atk and 152 HP EVs. That Caterpie will be EV trained and cloned and EV trained to obtain an Instant Pomeg Glitch Pokémon, as well as a Cloning Glitch Pokémon. These 2 Glitch Pokémon need to be obtained through a Double Corruption because they can't be hatched. It will then be used to obtain Pokémon for Dex entries. Order of Pokémon corruptions : a) Double Corruption Wailmer -> Golduck with OHKO and Hydro Pump for Battle Frontier Wobbuffet -> Poliwrath for Contests Wailmer + Durin -> Golduck with OHKO Move and Sketch Wingull -> ? with Change Battle Type Move. Latios (TID) -> Egg Caterpie with 1 Atk and 152 HP Evs. (Only add Latios for the TID corruption) b) Latios PID corruption Latios + Wingull (PID) -> Caterpie with 1 Atk and 152 HP Evs. c) Double Corruption Caterpie (31,166) + Wingull (TID) -> Instant Pomeg Glitch Pokémon (Add Wingull for the TID corruption) Caterpie (30, 138) + Wingull (TID) -> Cloning Glitch Pokémon (Add Wingull for the TID corruption) - I tried to make a procedure that would work once inserted in the route, but some parts may change a bit. There are many tiny things required (mainly second PID character, and things for Latios) for manipulations because I wanted to use corruption initiators the least amount of time (each use requires to clone it). But if they end up heavying the manipulations too much, they can be removed. The corruption initiator would then be used a few more times on the first corruptions. (Cloning at Battle Tower takes ~50s, thus I don't want to use it many times. I also don't want to need a corruption initiator for every Caterpie corruption for Dex entries.) They will be inserted later on in the route (when things will be cleared a bit about them, and about the choices of Pokémon to corrupt/not corrupt). - As for Hoenn Dex Completion, I had already started listing the Dex entries that would require specific methods or other things here : http://pastebin.com/vvKFDa5z ("Pokedex Completion" section) The choices to obtain these Pokémon are outdated for multiple reasons, but it still indicates Pokémon to steal, to fish, and to evolve (with the required amount of levels indicated).
Fortranm wrote:
Just saw the part where you talked about ACE. Sorry that I didn't read the whole thing first. How different is normal Pomeg glitch from ACE then? Is it possible to get the Fly location for Battle Frontier through RAM corruption similar to how you get to Ever Grande City? It's probably better to end the run at HoF.
Pomeg Glitch is only a RAM data corruption. You are corrupting few bits of some double-words at specific adresses, and with manipulation of Emerald's DMA (Dynamic Memory Adresses), these bit corruptions can end up on ineresting values. But that data corruption is really light, you can't manipulate a string of 2-3 bits (or anything longer than that) with it. (See it as a single bit corruption on a targetted double-word, that bit having a preset location in the double-word) Having the Ever Grande Fly Location flag on a corruptible bit is pure chance, you can't squeeze more useful fly locations from that. (same thing for many values like Badges, Symbols, Items,...) Don't worry, I know that I have the bad habit of writing too much stuff in my posts, I won't force you to read everything. ;) ACE could be possible thanks to Pomeg Glitch (using Glitch Move animations), but it hasn't been thoroughly tested yet. The only piece of information I have on it come from glitchcity's thread on Pomeg Glitch : http://forums.glitchcity.info/index.php/topic,6868.msg199627.html#msg199627 Wack0 already listed interesting pointers of Glitch Move animations, so only tests were needed to see what kind of instructions could be done with these. But there haven't been any updates on that matter, and I don't have the knowledge to test it myself. However, if ACE proved to be doable, I know where commands would be stored, and how to wirte them : with PC Pokemon data (strings of 8-10 bytes), PC Items (~179 bytes), Battle Bag Items (20 bytes for each Bag, Lv 50 and Open Lv). In that kind of run, ACE wouldn't be great to watch. On one hand, you would make a heavy RAM data manipulation to get all Dex entries, all Symbols, and all contest paintings, skipping some interesting mechanics (but in the idea of having the fastest possible strategy, it's conceivable) On the other hand, being able to write all these commands in an optimal time would be rather tedious, because you would have to go for esoteric Pokemon manipulation in order to make your code faster than with the "stable" (easy to perform) procedure, especially on a run where you skipped most of the late game. I really don't know how long a command to give all Gold Symbols + all Paintings would be, so it may be shorter than what I imagine. Setting all Pokedex entries could also require short commands (setting a lot of 0xFF on 3-4 different areas). And thus, only few Pokémon would be needed to write these commands, and using ACE would be quite fast. But I can't jump on conclusions for this, I lack the knowledge to do so. The other Pomeg Glitch uses are more of my taste, but they also have the same issue with TAS : manipulating Pokémons in order to skip regular methods (like using in-game traded Pokémon for Double Corruptions) is tougher to plan.
ISSOtm
He/Him
Joined: 4/10/2016
Posts: 10
Location: Pallet Town
Hello, I'm from the Pokémon Glitch community, and one of our most known members (TheZZAZZGlitch) just found a better ACE method for Pokémon Emerald. Here is a link to the video he made : Link to video This is just a heads up for research, we are currently working on creating a safe method of generating correct payloads.
"THOU SHALL NOT PASS !" Rival's effect, Gandalf.
Skilled player (1744)
Joined: 9/17/2009
Posts: 4986
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Nice! Give how it needs tons of items, I wonder how long it would take for a credits glitch.
ISSOtm
He/Him
Joined: 4/10/2016
Posts: 10
Location: Pallet Town
In this video he uses the usual bag, but Metarkrai is planning to use the Fight Bag (the one you have in the Battle Pyramid) instead, where all item IDs are consecutive (and the IDs are quite easy to manipulate according to him). I'll keep this thread updated with our research.
"THOU SHALL NOT PASS !" Rival's effect, Gandalf.
Joined: 1/6/2012
Posts: 51
Location: France
jlun2 wrote:
Nice! Give how it needs tons of items, I wonder how long it would take for a credits glitch.
For a TAS, you would need to obtain a Pokémon whose data makes a teleport code towards Hall of Fame, as well as a Glitch Move with an animation pointer on PC Pokémon. I don't really know how feasible obtaining such a Pokémon would be, as you can alter the Pokémon's data by swapping its moves, making it learn a Tm/Hm, giving it some EVs,... (things that don't take too much time). From what TheZZAZZ wrote, the code to change the map to Hall of Fame requires 6 double-words / 12 words, which is equivalent to 2 substructures on a Pokémon's data. I don't think we would be able to manipulate 2 whole substructures that well (in every substructure, there are values that are hard/impossible to manipulate). Thus, multiple Pokémon could be used to write a code, but another code would be needed (with jumps). I don't really know how much longer that other code would be, but it would probably require 3-4 Pokémon. Given the time to generate these Pokémon, change their data a bit, obtain the required Glitch Move, up to 9 minutes could be saved from the current TAS.
Skilled player (1744)
Joined: 9/17/2009
Posts: 4986
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Is it possible to skip the hall of fame and jump to the credits directly?
ISSOtm
He/Him
Joined: 4/10/2016
Posts: 10
Location: Pallet Town
Almost certainly.
"THOU SHALL NOT PASS !" Rival's effect, Gandalf.
Joined: 1/6/2012
Posts: 51
Location: France
Oh yeah, why not. I didn't think about it. The required code would be shorter and could maybe be made with 1-2 Pokémon only.
ISSOtm
He/Him
Joined: 4/10/2016
Posts: 10
Location: Pallet Town
We should try just jumping to the credits routine (although I bet something will go wrong), that'd mean bankswtiching (does it exist on GBA ?) then jumping. I also bet the game contains a routine that switches banks then jumps to wherever you told it to. Othewise, something like this : mov register, credits_bank mov register2, credits_address push register2 b bankswitch ; if it's a routine, it'll pop the credits address to the program conuter, then job's done !
"THOU SHALL NOT PASS !" Rival's effect, Gandalf.
AntyMew
It/Its
Encoder, Player (35)
Joined: 10/22/2014
Posts: 425
Metarkrai wrote:
Oh yeah, why not. I didn't think about it. The required code would be shorter and could maybe be made with 1-2 Pokémon only.
Not necessarily. HoF warp is doable with much less code than what ZZAZZ has shown. I've got code that should work in RTA (if only I could get a damn 0x65C) in 7 nicknames by reading the PC instead of using a bunch of clumsy adc instructions. All it requires is that the 5th party slot is empty
0E003300	b	      #0x2FFAC	         ; ****uE v
0E0332AC	movs		r11,#0xB10	       ; “D…ouE v
0E06325C	adcs	   r10,r15,#0x3B80	  ; z.EnuE v
0E09320C	ldr	    r12,[r10,#0xE0]!	 ; lF/quE v
0E0C31BC	str	    r11,[r10]!	       ;  …9quE v
0E0F316C	sbc	    r11,r12,#0xB10	   ; “DRnuE v
0E12311C	str	    r11,[r10,#0x3C0]!	; F‘9q
0E123120	swigt	  #0xDFDF	          ; kk U
Just a Mew! 〜 It/She ΘΔ 〜
Joined: 1/6/2012
Posts: 51
Location: France
Anty-Lemon wrote:
HoF warp is doable with much less code than what ZZAZZ has shown. I've got code that should work in RTA (if only I could get a damn 0x65C) in 7 nicknames by reading the PC instead of using a bunch of clumsy adc instructions. All it requires is that the 5th party slot is empty
The 0x65C you want, is it a Move ID or a value you'd like to form using a nickname ? Would your method also use Glitch Move with animation pointers on saved data, or would you use a pointer to the nickname of a PC Pokémon (in RAM) ? Would it be possible to program longer jumps (mainly towards PC Items) using nicknames, or would the amount of characters limit the jumps too much ? If you could use all possible values for every byte of your instructions (instead of only values from characters), would that reduce the amount of required nicknames for such a corruption ? (or for a corruption that would set a specific flag, or change a specific byte) 0x1 Also, as credits seem to be triggered by the command special 0x113 (accordig to XSE), would it be easier to directly trigger that command/thing instead of performing a teleport towards HoF ?
1 2
6 7 8
12 13