Glitzer Popping: Difference between revisions

m
General grammar edits, also this article is big enough not to have a stub status, but I do agree it's incomplete. Notify me if any edits I made were incorrect.
m (General grammar edits, also this article is big enough not to have a stub status, but I do agree it's incomplete. Notify me if any edits I made were incorrect.)
Line 4: Line 4:
By scrolling past slot 255 and below in a player's party, it allows the player to corrupt Pokémon in the Pokémon Storage System's box 1 and 2. Most of the time these become Bad Eggs, which may have glitch moves with beneficial effects such as skipping battles.
By scrolling past slot 255 and below in a player's party, it allows the player to corrupt Pokémon in the Pokémon Storage System's box 1 and 2. Most of the time these become Bad Eggs, which may have glitch moves with beneficial effects such as skipping battles.


The glitch is notable as a means of producing a glitched hatchable [[Egg]]. The player can manipulate the Egg to contain any valid Pokémon and many [[glitch Pokémon]]. Additionally, using a technique known as "double corruption", one can create an unhatched Pokémon in the Pokémon Storage System with multiple characteristics (Item, Moves, Species, IVs, Origin,...) that he or she desires.
The glitch is notable as a means of producing a glitched [[Egg]] which can be hatched. The player can manipulate the Egg to contain any valid Pokémon and various [[glitch Pokémon]]. Additionally, using a technique known as "double corruption", one can create an unhatched Pokémon in the Pokémon Storage System with multiple characteristics (Item, Moves, Species, IVs, Origin, etc) that they desire.


In addition to Pokémon data, Glitzer Popping can corrupt [[Pokémon Day Care|Day Care]] data, [[Pokémon Contest|contest]] data, map data (NPCs with their location and script address), flag data (story, trainers, events), bag quantity data, PC item data, Battle Frontier data, Trainer data (name, ID, SID) and Secret Base items.
In addition to Pokémon data, Glitzer Popping can corrupt [[Pokémon Day Care|Day Care]] data, [[Pokémon Contest|contest]] data, map data (NPCs with their location and script address), flag data (story, trainers, events), bag quantity data, PC item data, Battle Frontier data, Trainer data (name, ID, SID) and Secret Base items.
Line 13: Line 13:
==Method==
==Method==
===Requirements===
===Requirements===
#A Pokémon who gained 1 or more health points with a single HP Up. That would mean it would lose 1 of more HP when fed a Pomeg Berry; for example a level 100 Pokémon with 10 HP EVs or more would lose two health points when fed the Pomeg Berry, but a high level Pokémon (Sky Pillar, Victory Road, Artisan Cave, Legendaries,..) can work for that.
#A Pokémon who gained 1 or more health points with a single HP Up. That would mean it would lose 1 of more HP when fed a Pomeg Berry; for example a level 100 Pokémon with 10 HP EVs or more would lose two health points when fed the Pomeg Berry, but a high level Pokémon (from [[Sky Pillar]], [[Victory Road (Hoenn)|Victory Road]], [[Artisan Cave]], any Legendary, etc) can work as well.
#At least three Pokémon, including a fainted one with Fly and another fainted Pokémon.
#At least three Pokémon, one of which needs to be a fainted Pokémon with the move {{m|Fly}}, and a different fainted Pokémon.
#A Pokémon with a suitable personality value that should preferably be [[Cloning glitches#Generation III|cloned]] multiple times. After the glitch, most of this Pokémon's data will be permuted depending on its personality value (e.g. EVs data becoming species data, species data becoming attacks data,..).
#A Pokémon with a suitable personality value that should preferably be [[Cloning glitches#Generation III|cloned]] multiple times. After the glitch, most of this Pokémon's data will be permuted depending on its personality value (e.g. EVs data becoming species data, species data becoming attacks data, etc).


The in-game trade Pokémon "Seasor" the {{p|Horsea}} and "Dots" the {{p|Seedot}} are ideal for the glitch because they work and always have the same personality values; 0x0000007F and 0x00000084 respectively. These Pokémon may be used to convert 'EVs into Growth' (see article [[Pokémon data substructures in Generation III]], with the Attack EV representing the most significant byte of the [[List of Pokémon by index number (Generation III)|Pokémon's index number]] and the HP EV representing the least significant byte (e.g. 151 HP EVs and 0 Attack EVs would result in a {{p|Mew}}).
The [[in-game trade]] Pokémon "Seasor" the {{p|Horsea}} and "Dots" the {{p|Seedot}} are ideal for the glitch because they work and always have the same personality values; 0x0000007F and 0x00000084 respectively. These Pokémon may be used to convert 'EVs into Growth' (see article [[Pokémon data substructures in Generation III]], with the Attack EV representing the most significant byte of the [[List of Pokémon by index number (Generation III)|Pokémon's index number]] and the HP EV representing the least significant byte (e.g. 151 HP EVs and 0 Attack EVs would result in a {{p|Mew}}).


Alternatively, a Pokémon with a personality value that would convert 'Attacks into Growth' could be used for an exploit such as converting a Pokémon with {{m|Beat Up}} (move ID 251) into a {{p|Celebi}}.
Alternatively, a Pokémon with a personality value that would convert 'Attacks into Growth' could be used for an exploit such as converting a Pokémon with {{m|Beat Up}} (move ID 251) into a {{p|Celebi}}.
Line 24: Line 24:
===Steps===
===Steps===
#Move the Pokémon with the suitable personality value to box 2 slot 23 or box 2 slot 24 of the Pokémon Storage System, and preferably 4  clones of the Pokémon obtained with a [[Cloning glitches#Generation III|cloning glitch]] to other places of the box. Though it is not required, it is recommended to place the clones two spaces apart from each other (e.g. in slots 23, 21, 19, 17, 15 of Box 2), and to maximize the success rate (which is low) a good "corruption initiator" (a Pokémon to "absorb" unfavourable corruptions) should be placed at positions one space left of the Pokémon (e.g. slots 22, 20, 18, 16 of Box 2). Pluses the in-game trade Plusle, with all of its moves erased except for {{m|Growl}} is an example of a good corruption initiator. Without a corruption initiator, it may take a very long time for the glitch to work; if at all.
#Move the Pokémon with the suitable personality value to box 2 slot 23 or box 2 slot 24 of the Pokémon Storage System, and preferably 4  clones of the Pokémon obtained with a [[Cloning glitches#Generation III|cloning glitch]] to other places of the box. Though it is not required, it is recommended to place the clones two spaces apart from each other (e.g. in slots 23, 21, 19, 17, 15 of Box 2), and to maximize the success rate (which is low) a good "corruption initiator" (a Pokémon to "absorb" unfavourable corruptions) should be placed at positions one space left of the Pokémon (e.g. slots 22, 20, 18, 16 of Box 2). Pluses the in-game trade Plusle, with all of its moves erased except for {{m|Growl}} is an example of a good corruption initiator. Without a corruption initiator, it may take a very long time for the glitch to work; if at all.
#Make a party with a fainted Pokémon, a fainted Pokémon with Fly, and the Pokémon that can lose HP with a Pomeg Berry.
#Fill the party with fainted Pokémon (one of which needs to know Fly), and a Pokémon that can lose HP with a Pomeg Berry.
#Decrease the HP of that Pokémon to 1, so that his HP can fall to 0 or below (underflow to 65535 or less) with a Pomeg Berry. A Banette with Curse and odd HP can come in handy to quickly decrease ths Pokémon's HP to 1.
#Decrease the HP of said Pokémon to 1, so that it's HP can fall to 0 or below (underflow to 65535 or less) with a Pomeg Berry. A Banette with Curse and odd HP can come in handy to quickly decrease the Pokémon's HP to 1.
#Once this party is made, the player may save the game here. If the glitch doesn't work the first time (quite likely), the player will be able to restart from this point.
#Once the process is complete, the player can save the game here. If the glitch doesn't work the first time (quite likely), the player will be able to restart from this point and try again.
#Enter a wild battle and flee.
#Initiate a wild battle and flee from it.
#Deposit the first fainted Pokémon in the Pokémon Storage System.
#Deposit the first fainted Pokémon in the Pokémon Storage System.
#Use the Pomeg Berry on the Pokémon at 1 HP. If it receives 0 HP nothing else needs to be done. If it receives 65535 HP or less, a healing item such as a Potion should be used to faint it. The player should now has two fainted Pokémon.
#Use the Pomeg Berry on the Pokémon with 1 HP. If it receives 0 HP, then nothing else needs to be done. Though if it receives 65535 HP or less, a healing item such as a Potion should be used to faint it. The player should now have two fainted Pokémon.
#Enter a wild Pokémon battle to send out a ??????????.
#Initiate another wild Pokémon battle to send out a ??????????.
#Open the Pokémon menu and view the summary of the first valid Pokémon in the party.
#Open the Pokémon menu and view the summary of the first valid Pokémon in the party.
#Scroll up. The more that the player scrolls up, beginning from "Cancel", the more Pokémon in the storage system are corrupted. The first slot up from Cancel may affect the data of the Pokémon in box 2 slot 23 in English Emerald. The corruption of storage box Pokémon ends at around slot 215 (affecting the Pokémon in box 1 slot 1).
#After viewing the summary, exit back to the party menu and scroll up. The more that the player scrolls up, beginning from "Cancel", the more Pokémon in the storage system are corrupted. The first slot up from Cancel may affect the data of the Pokémon in box 2 slot 23 in English Emerald. The corruption of storage box Pokémon ends at around slot 215 (affecting the Pokémon in box 1 slot 1).
#Exit the Pokémon battle and check Pokémon in the Pokémon Storage System. If there is a regular "Egg" rather than a Bad Egg, withdraw it and send it into battle to see if it converted into a different Pokémon. Sometimes a regular Egg will appear as the original Pokémon, this is normal and if no ideal Eggs appear the player is free to reset the game and try the glitch again.
#Exit the Pokémon battle and check Pokémon in the Pokémon Storage System. If there is a regular "Egg" rather than a Bad Egg, withdraw it and send it into battle to see if it converted into a different Pokémon. Sometimes a regular Egg will appear as the original Pokémon, this is normal and if no ideal Eggs appear, the player is free to reset the game and try the glitch again.
#Preferably hatch the Egg to obtain the converted Pokémon, which will be registered in the Pokédex.
#Hatch the Egg to obtain the converted Pokémon, which will be registered in the Pokédex.
#Preferably remove any unwanted Bad Eggs using the [https://www.youtube.com/watch?v=nESJ1KZMav8 inverse cloning glitch].
#Remove any unwanted Bad Eggs using the [https://www.youtube.com/watch?v=nESJ1KZMav8 inverse cloning glitch]. (Optional)


===Double corruption===
===Double corruption===
A double corruption allows the player to obtain the modified Pokémon in an Egg without hatching it. To cause a double corruption, the player should perform the usual steps to obtain a regular Egg, but leave the Egg in the storage system and corrupt it again. The Egg must not be picked up with the glove, or it will never corrupt again into the desired unhatched Pokémon (unless the Pokémon is specifically crafted to work around this; e.g. a "Dots" Egg that had Flash as the fourth move).
A double corruption allows the player to obtain the modified Pokémon in an Egg without hatching it. To cause a double corruption, the player should perform the usual steps to obtain a regular Egg, but leave the Egg in the storage system and corrupt it again. The Egg must not be picked up, or it will never corrupt into the desired unhatched Pokémon (unless the Pokémon is specifically crafted to work around this; e.g. a "Dots" Egg that had Flash as the fourth move).


Double corruption allows the player to obtain the Pokémon without going through hatching, which preserves the Held Item, EVs, Origin, Obedience, Ribbons, Experience, Contest Stats, PP Boosts,..
Double corruption allows the player to obtain the Pokémon without going through hatching, which preserves the Held Item, EVs, Origin, Obedience, Ribbons, Experience, Contest Stats, PP Boosts, etc. While a simple corruption slightly changes some of the Pokémon's values (Move 2 and Move 4 will always be Glitch Moves, for example), a double corruption leave the data intact (it will only permute the substructures), which allows a complete manipulation of said Pokémon's moves.
While a simple corruption slightly changes some of the Pokémon's value (Move 2 and Move 4 will always be Glitch Moves, for example), a double corruption leave the Pokémon's data intact (it only permutes the substructures), which also allows a complete manipulation of a Pokémon's moves.
Double Corruption is interesting to obtain Glitch Items, Glitch Pokémon that cannot be hatched, Glitch Moves, and many combinations (ex : a Lv 0 Magikarp with Sketch, Sketch, Hyper Beam, and caught in a Safari Ball)


The Eon Ticket, AuroraTicket and MysticTicket held by a storage box Pokémon alone cannot be taken and used to travel to an event island as the flag must also be set.
The Eon Ticket, AuroraTicket, and MysticTicket, if held by a storage box Pokémon, cannot be taken and used to travel to an event island, as the flag must also be set.


Some Key Items for Ruby/Sapphire/Emerald or FireRed/LeafGreen obtained this way can be traded and used during the main story to skip certain parts. (PokeFlute, Tea, Scope Sylph, Tm Cut, Rainbow Pass, Mach Bike & Acro Bike, Go-goggles,..)
Some Key Items for Ruby/Sapphire/Emerald or FireRed/LeafGreen obtained this way can be traded and used during the main story to skip certain parts. (PokeFlute, Tea, Scope Sylph, HM01 Cut, Rainbow Pass, Mach Bike & Acro Bike, Go-goggles, etc)


====Notes====
====Notes====
In order to perform the same glitch in Pokémon FireRed and LeafGreen, trade a Pokémon with 65535 HP or less there and perform the same basic steps (switching to the last Pokémon and depositing it, healing the Pokémon with 65535 HP or less to faint it).
In order to perform the same glitch in Pokémon FireRed and LeafGreen, a Pokémon with 65535 HP or less just be traded over there and the same basic steps should be performed (switching to the last Pokémon and depositing it, healing the Pokémon with 65535 HP or less to faint it).


{{p|Mew}} and {{p|Deoxys}} obtained from Horsea or Seedot with this glitch likely will not obey the player due to them not being met in a "[[fateful encounter]]".
{{p|Mew}} and {{p|Deoxys}} obtained from Horsea or Seedot with this glitch will not obey the player due to them not being met in a "[[fateful encounter]]". However, by catching multiple Smeargle with a certain personality value and giving them certain Moves, EVs, Contests stats, and performing double corruption on them, it is possible to obtain an obedient Mew or Deoxys from their original location.<ref>[http://pastebin.com/ur3UiNmA Pastebin with corruption details for obtaining obedient Mew and Deoxys]</ref>
However, by catching Smeargles with a certain personnality value, by giving them certain Moves, EVs, Contests stats, and by performing a double corruption on them, it is possible to obtain an obedient Mew or Deoxys from their original location.<ref>[http://pastebin.com/ur3UiNmA Pastebin with corruption details for obtaining obedient Mew and Deoxys]</ref>


It is possible to trigger Glitzer Popping with an Invisible Bad Egg (a corrupted empty slot produced with Glitzer Popping or with a Glitch Pokémon) instead of a Pokémon who gained 1 HP or more with HP Ups and whose current HP is at 1, making the procedure a bit easier to perform. This trick discovered by Voltage is called Decaswitch. <ref>[https://www.youtube.com/watch?v=QB67-pKKY3Q Performing Decaswitch]</ref>
It is also possible to trigger Glitzer Popping with an Invisible Bad Egg (a corrupted empty slot produced with Glitzer Popping or with a Glitch Pokémon) instead of a Pokémon who gained 1 HP or more with HP Ups and whose current HP is at 1, making the procedure a bit easier to perform. This trick discovered by Voltage is called Decaswitch. <ref>[https://www.youtube.com/watch?v=QB67-pKKY3Q Performing Decaswitch]</ref>


By making the journalist at Slateport Poké Fan Club read the species name of a certain Glitch Pokémon, it is possible to overwrite party Pokémon data and to have an empty slot in the party. This empty slot allows the player to perform Glitzer Popping just by opening the party from the start menu and by pressing Up. This third way to perform Glitzer Popping, called Instant Pomeg Glitch, is significantly faster from the two others. <ref>[http://pastebin.com/wsYtbzpG Perform Instant Pomeg Glitch]</ref>
By making the journalist at Slateport Poké Fan Club read the species name of a certain Glitch Pokémon, it is possible to overwrite party Pokémon data and to have an empty slot in the party. This empty slot allows the player to perform Glitzer Popping just by opening the party from the start menu and by pressing Up. This third way to perform Glitzer Popping, called Instant Pomeg Glitch, is significantly faster from the two others. <ref>[http://pastebin.com/wsYtbzpG Perform Instant Pomeg Glitch]</ref>
Line 60: Line 57:
Due to Pokémon Emerald and FireRed/LeafGreen's "dynamic memory allocation" (DMA) in which the location of memory addresses are randomized after performing tasks such as opening the Pokémon menu, the game won't always alter the correct bit in the target Pokémon's personality value and will leave the Pokémon corrupted in an unfavourable way. Corruption initiators are used so that the corruption initiator and not the Pokémon to be manipulated for a species, item or move may receive a corruption that would turn it into a Bad Egg. The glitch generally has a low success rate and should be repeated until the player receives the corruption they desire.
Due to Pokémon Emerald and FireRed/LeafGreen's "dynamic memory allocation" (DMA) in which the location of memory addresses are randomized after performing tasks such as opening the Pokémon menu, the game won't always alter the correct bit in the target Pokémon's personality value and will leave the Pokémon corrupted in an unfavourable way. Corruption initiators are used so that the corruption initiator and not the Pokémon to be manipulated for a species, item or move may receive a corruption that would turn it into a Bad Egg. The glitch generally has a low success rate and should be repeated until the player receives the corruption they desire.


The probability that the glitch corrupts a certain value or a certain PC Pokémon is generally of 1/32 or 0 (depending on the surrounding value and on the location of the value ). The success rate of Pokémon Corruption can be raised to 6/32 by using 5 clones and Corruption Initiators.
The probability that the glitch corrupts a certain value or a certain PC Pokémon is generally 1/32 or 0 (depending on the surrounding value and on the location of the value ). The success rate of Pokémon Corruption can be raised to 6/32 by using 5 clones and Corruption Initiators.


A Corruption Initiator ensures the good corruption of personnality values (and Trainer ID) whose hexadecimal value (in 32-bit format) have a leftmost character of 0,1,2,3,8,9,A,B or of 4,5,6,7,C,D,E,F. Thus, two different Corruption Initiators are required to cover every possible personnality values. Personnality values (and Trained ID) of in-game trade Pokémon in Emerald always have a leftmost hexadecimal character of 0. Thus, only one Corruption Initiator (in-game trade Plusle with Growl) is required to corrupt (or double corrupt) them. <ref>[https://www.youtube.com/watch?v=hBWkshUJv_8 Obtaining both corruption initiators]</ref>
A Corruption Initiator ensures the good corruption of personality values (and Trainer ID) whose hexadecimal value (in 32-bit format) have a leftmost character of 0,1,2,3,8,9,A,B or of 4,5,6,7,C,D,E,F. Thus, two different Corruption Initiators are required to cover every possible personality values. Personality values (and Trained ID) of in-game trade Pokémon in Emerald always have a leftmost hexadecimal character of 0. Thus, only one Corruption Initiator (in-game trade Plusle with Growl) is required to corrupt (or double corrupt) them. <ref>[https://www.youtube.com/watch?v=hBWkshUJv_8 Obtaining both corruption initiators]</ref>


While in-game trade Pokémon can be corrupted with the use of Corruption Initiators, this is not true for every possible Pokémon. A Pokémon can only have its personnality value corrupted if its data responds to a specific criteria. While it is easy to have a Pokémon that does not match this criteria, it is also easy to change some of its values to make it corruptible. <ref>[https://www.youtube.com/watch?v=65e-SKeE5Ec Specific criteria for Pokémon corruption]</ref>
While in-game trade Pokémon can be corrupted with the use of Corruption Initiators, this is not true for every possible Pokémon. A Pokémon can only have its personnality value corrupted if its data responds to a specific criteria. While it is easy to have a Pokémon that does not match this criteria, it is also easy to change some of its values to make it corruptible. <ref>[https://www.youtube.com/watch?v=65e-SKeE5Ec Specific criteria for Pokémon corruption]</ref>


Even though Pomeg Glitch can be transferred to Ruby and Sapphire, Glitzer Popping cannot be performed in these games because the game does not update the amount of party Pokémon when the player opens and closes the summary of a Party Pokémon (this step is necessary to access Pokémon beyond party slot 6).
Even though Pomeg Glitched Pokémon can be transferred to Ruby and Sapphire, Glitzer Popping cannot be performed in these games because the game does not update the amount of party Pokémon when the player opens and closes the summary of a Party Pokémon (this step is necessary to access Pokémon beyond party slot 6).


==Cause==
==Cause==
Line 74: Line 71:
The game counts 0 Pokémon (it counts Pokémon from first party slot until it finds an empty slot). This makes the party Pokémon selection pointer underflow, allowing it to select 256 party slots instead of 1-6. Selecting the "Quit" button moves the pointer to the 256th party slot.
The game counts 0 Pokémon (it counts Pokémon from first party slot until it finds an empty slot). This makes the party Pokémon selection pointer underflow, allowing it to select 256 party slots instead of 1-6. Selecting the "Quit" button moves the pointer to the 256th party slot.


When the player scrolls up from Quit, he or she is accessing Pokémon beyond slot 6. The first up press moves the selected Pokémon to party Pokémon 255, the second up press moves the selected Pokémon to party Pokémon 254, and so on.
When the player scrolls up from Quit, they are accessing Pokémon beyond slot 6. The first up press moves the selected Pokémon to party Pokémon 255, the second up press moves the selected Pokémon to party Pokémon 254, and so on.


Selecting Pokémon beyond slot 6 causes the game to select blocks of {{wp|Random-access memory|RAM data}} and treat them as party Pokémon data (with a size of 100 bytes). The 255th party slot ends up being over PC Pokemon data (around Box 2, Slot 23 for Emerald and Box 3, Slot 1 for FireRed/LeafGreen), and scrolling up will go over Day Care data, Pokémon Contest data, map data (NPCs with their location and script address), flag data (story, trainers, events), bag data, PC item data, Battle Frontier data, Trainer data (name, ID, SID...), and other data, in that order.
Selecting Pokémon beyond slot 6 causes the game to select blocks of {{wp|Random-access memory|RAM data}} and treat them as party Pokémon data (with a size of 100 bytes). The 255th party slot ends up being over PC Pokemon data (around Box 2, Slot 23 for Emerald and Box 3, Slot 1 for FireRed/LeafGreen), and scrolling up will go over Day Care data, Pokémon Contest data, map data (NPCs with their location and script address), flag data (story, trainers, events), bag data, PC item data, Battle Frontier data, Trainer data (name, ID, SID...), and other data, in that order.
Line 124: Line 121:


{{-}}
{{-}}
{{Stub|Glitch}}
{{Glitches}}<br/>
{{Glitches}}<br/>
{{Project Glitchdex notice|no}}
{{Project Glitchdex notice|no}}
483

edits