Glitch City Laboratories Archives

Glitch City Laboratories closed on 1 September 2020 (announcement). This is an archived copy of a thread from Glitch City Laboratories Forums.

You can join Glitch City Research Institute to ask questions or discuss current developments.

You may also download the archive of this forum in .tar.gz, .sql.gz, or .sqlite.gz formats.

Generation III Glitch Discussion

Shift/Set malfunction (Ruby/Sapphire/FireRed/LeafGreen/Emerald) - Page 1

Shift/Set malfunction (Ruby/Sapphire/FireRed/LeafGreen/Emerald)

Posted by: VaeporSage
Date: 2015-05-08 16:00:12
I've been meaning to make this thread for ages now. This is just an overview of most of the processes involved in the glitch, with lots of footage (some of which I've recently annotated to make clearer) and updated terminology which you're free to employ or change up. Ideally 'Shift/Set malfunction' (or whatever other name it should be assigned) and 'Pseudoclone' (likewise) would each form their own little Wiki pages, with a pinch of revision, proofreading and simplification here and there.

Hopefully you find at least some of this interesting. As glitch research goes, I've left it relatively unpublicised, and I'm certain there's so much more to find. After all, this is all the result of me piddling around on my GameBoy between the ages of 14 and 16 with little to no knowledge of the game's workings. Anyone with a clear understanding of the game's internal function could, in theory at least, have a field day with this one. :)

Shift/Set malfunction (Ruby/Sapphire/FireRed/LeafGreen/Emerald)

The Shift/Set malfunction is a glitch that occurs in the GBA games of Generation III. In the 'Battle Style' section of the Options menu, the 'Shift' option must be selected to perform this glitch. It is caused by the game's mismanagement of the event when the player's Pokémon faints at an irregular moment in time during battle. The malfunction allows the player to battle with various different kinds of glitch Pokémon without the use of a cheating device. As of yet, there are three documented means of triggering the effect: the Revive method, the Level-up method and the Volt/Water Absorb method.

After the player's Pokémon faints at an unusual point during the turn, and a new Pokémon is selected to be sent into battle, the game will display the Shift/Set message ([Trainer] is about to use [Pokémon]. Will [Player] change Pokémon?). The act of the player sending out a Pokémon is treated as though it were in fact the opponent who is switching in a new Pokémon.

Watch @ 6:05
https://youtu.be/vufS4iv5Ln0?t=6m5s

This additional sequence is notable as selecting 'Yes' and agreeing to choose a new Pokémon to be sent out erases the player's first choice. No further choice of Pokémon is necessary, as  the Shift/Set switch is optional. Thus, exiting the switch via 'Cancel' returns the player to the battle, without having chosen a Pokémon to battle with. Glitch Pokémon are then sent into battle, with Ruby/Sapphire, FireRed/LeafGreen and Emerald each containing their own unique types. Furthermore, the game will treat the glitch Pokémon slightly differently according to which method was used to trigger the Shift/Set malfunction.

The Revive method:

https://www.youtube.com/watch?v=AT29yzEGpvI

Watch @ 1:15
https://youtu.be/wCZFk83j554?t=1m15s

Requirements:
-A team of 2 or more Pokémon consisting of only fainted Pokémon and Eggs.
This can be achieved through use of the Pomeg glitch or via 'DecaSwitching'.

-A Revive, Max Revive or Revival Herb.

Method:
(1) Enter a battle and use your revival item on any Pokémon, except for the fainted Pokémon in the first slot.
(2) Select the revived Pokémon to send it into battle.
(3) Agree to switch into a new Pokémon.
(4) Cancel the switch.

The Level-up method:

https://www.youtube.com/watch?v=He4HakJUYss

Requirements:
-A Pokémon with a specific amount of HP in the first slot (explained in method).
-Another Pokémon that is able to battle.
-A Poison-healing item, a HP Up and a Pomeg berry

Method:
(1) Select a Pokémon that has sufficient EXP to level up after defeating one Pokémon, and which gains 2 or more HP from the use of a single HP Up.
(2) Before using a HP Up on the selected Pokémon, save the game, then have the selected Pokémon gain EXP in battle so that it levels up.
(3) Take note of how much HP was gained via level-up and reset the game.
(4) Your desired HP value is [65536 (amount of HP gained via level-up)]. That way, leveling up will raise the HP to 65536 (zero), fainting the selected Pokémon.
(5) Use a HP Up on the selected Pokémon to so have it gain 2+ HP.
(6) Reduce the selected Pokémon's health to 1 via Poison damage.
(7) Use a Pomeg berry, allowing the HP value to drop below 0. (0->65535->65534->65533, etc.)
(8) If necessary, apply further Poison damage so to reach the desired HP value.
(9) Heal the Poison.
(10) Place the selected Pokémon in the first slot of the party, and place any another Pokémon capable of battling in any other slot of the party.
(11) Enter a single battle against a trainer with 2 or more Pokémon.
(12) Have the selected Pokémon gain EXP. It will gain exactly the right quantity of health so that it faints.
(13) Choose a Pokémon from your party to send into battle.
(14) Agree to switch into a new Pokémon.
(15) Cancel the switch.


Volt & Water Absorb method:

https://www.youtube.com/watch?v=E0yl0LMtMLg

Requirements:
-A Pokémon with the ability Volt Absorb or Water Absorb, and a specific amount of HP (explained in method).
-Any other Pokémon that is able to battle.
-A Poison-healing item, a HP Up and a Pomeg berry.

Method:
(1) Select a Pokémon with the Ability Volt Absorb or Water Absorb, and which gains 2 or more HP from the use of a single HP Up.
(2) Before using a HP Up on the selected Pokémon, find the amount of HP it will gain through its ability either by testing it during battle, or by dividing its total HP by 4 and rounding down (e.g. A Pokémon with a total of 78 HP will give 19 HP).
(3) Your desired HP value is [65536 (amount of HP gained via Volt/Water Absorb)]. That way, activating the Ability will raise the HP to 65536 (zero), fainting the selected Pokémon.
(4) Use a HP Up on the selected Pokémon to so have it gain 2+ HP.
(5) Reduce the selected Pokémon's health to 1 via Poison damage.
(6) Use a Pomeg berry, allowing the HP value to drop below 0. (0->65535->65534->65533, etc.)
(7) If necessary, apply further Poison damage so to reach the desired HP value.
(8) Heal the Poison.
(9) Place the selected Pokémon in any slot of the party, and place any another Pokémon capable of battling in any other slot of the party.
(10) Enter a single battle against any trainer.
(11) Have the selected Pokémon gain HP via its Ability. It will gain exactly the right quantity of health so that it faints.
(12) Choose a Pokémon from your party to send into battle.
(13) Agree to switch into a new Pokémon.
(14) Cancel the switch.

Glitch Pokémon available via the Shift/Set malfunction:

Ruby/Sapphire:
All methods yield a shiny Bad EGG with the species of a Feraligatr, the Water typing, the Ability Torrent.

https://www.youtube.com/watch?v=SDdAs_d1G8Q

Watch @ 3:22
https://youtu.be/AT29yzEGpvI?t=3m22s

FireRed/LeafGreen:

All methods yield a glitch Pokémon of the 'B oE An' family. Depending on the method used, the Pokémon's name may vary. It is also rumoured that the Pokémon's name differs from player to player. Attempting to send out this glitch Pokémon will softlock the game with an unending animation.

https://www.youtube.com/watch?v=ELWGlBr_3Ps
https://www.youtube.com/watch?v=ZCQX5ntMME8

Watch @ 2:26
https://youtu.be/AT29yzEGpvI?t=2m26s
https://www.youtube.com/watch?v=NWzyfQ696QY

Emerald:
All methods yield a Pseudoclone, a glitch Pokémon which shares numerous characteristics with both of the first Pokémon sent out by both players at the start of the battle.

~~~~~

Pseudoclones

Pseudoclones are a type of glitch Pokémon available only in Emerald via the Shift/Set malfunction. They share many characteristics with the Pokémon that the player first sent out at the beginning of the battle (Parent 1) as well as with the opponent's first Pokémon (Parent 2).

https://www.youtube.com/watch?v=aWg2X2m0Nb8

Watch @ 0:51
https://youtu.be/He4HakJUYss?t=51s

Shared with the player's first Pokémon (Parent 1):
Moveset
Item
Typing*
Ability*
Actual Species (i.e. Visible via Transform)*
Calculative HP value**

Shared with the opponent's first Pokémon (Parent 2):
Displayed Species (On HP bar)
Battle sprite
Gender
Level
Maximum HP value**
Fainted/non-fainted status & current HP value***

*There are two classes of Pseudoclones: Azurill Pseudoclones and Gengar Pseudoclones. Azurill Pseudoclones carry the Ability Thick Fat and the Normal typing, while Gengar Pseudoclones carry the Ability Levitate and the Ghost/Poison typing. The class of the Pseudoclone is determined by the index number of its Parent 1. Celebi, and all Pokémon with lower index numbers (as far as Bulbasaur), produce a Gengar Pseudoclone. Treecko, and all Pokémon with higher index numbers (as far as Deoxys), produce an Azurill Pseudoclone.

**Ex: Pseudoclone with 0 HP and:
-Parent 1, max HP 40 (knows Recover)
-Parent 2, max HP 60.

Recover will restore health by 20 (instead of 30 as would otherwise be expected).

Ex: Pseudoclone with 0 HP and:
-Parent 1, max HP 90 (knows Recover)
-Parent 2, max HP 40

Recover will restore health by 45, increasing the total to 45/40.

***When the Pseudoclone is active, the opponent's first Pokémon will not be treated as fainted, and will be sent out once more after having been defeated previously.

Revive method: The Pseudoclone will be notably less stable, forcing it to be sent out twice in a turn and treating it as fainted if it attempts to attack (triggering a new Shift/Set malfunction). Via this method, the only way to proceed beyond this loop is to throw a Poké Ball, which allows the opponent to attack the player's Pseudoclone. On the player's following turn, the loop will continue (whereby the Pseudoclone must be re-chosen twice) unless the Pseudoclone had been hit by False Swipe, which renders it active with 1 HP remaining.

Level-up method: The Pseudoclone will be active (i.e. able to attack and not treated as fainted). However, as the opponent's first Pokémon (Parent 2) is fainted due to the requirement of the Parent 1 gaining EXP to trigger the Shift/Set malfunction, the Pseudoclone will be sent out with 0 HP. Damage inflicted onto the Pseudoclone while in this state will decrease its health value below 0, e.g. taking 5 damage will leave the Pseudoclone with 65,531 HP. As the Pseudoclone is active, the Parent 2 will no longer be treated as fainted. When sent out again, the Parent 2 will share the extra-maximum HP value of the Pseudoclone.

Volt & Water Absorb method: The Pseudoclone will be active. The Parent 2 remains active, and the Pseudoclone will be sent out with its same quantity of health.

When the player knocks out the opponent's final active Pokémon with a Pseudoclone through use of a draining move (Giga Drain, Leech Life, etc.), the game will send out a glitch Pokémon of the B ó ÁN family.

http://bulbapedia.bulbagarden.net/wiki/%C3%93%C3%8B_e_%C3%81i
https://www.youtube.com/watch?v=OjEE3TIOVMA

Re: Shift/Set malfunction (Ruby/Sapphire/FireRed/LeafGreen/Emerald)

Posted by: voltage
Date: 2015-05-08 16:16:34
I remember this! I think I'll play around with it soon.

Re: Shift/Set malfunction (Ruby/Sapphire/FireRed/LeafGreen/Emerald)

Posted by: Kain
Date: 2015-05-16 22:54:05
Eventually I'll play with this.