NPC collision bypassing glitch: Difference between revisions

From Glitch City Wiki
Jump to navigation Jump to search
Content added Content deleted
>Torchickens
>Bbbbbbbbba
No edit summary
Line 5: Line 5:


==Analysis==
==Analysis==
[https://forums.glitchcity.info/index.php?topic=8659.0 According to Bbbbbbbbba] from the forums, the glitch can be recreated if one of the following criteria is met:
[https://forums.glitchcity.info/index.php?topic=8659.0 According to Bbbbbbbbba] from the forums, the glitch can be recreated if the following criteria are met:


1. The game is saved at "exactly at the frame when the walking NPC was ready to move, but hadn't decided in which direction yet.", and then the game is saved and reset.
1. A text box pops up "exactly at the frame when the walking NPC was ready to move, but hadn't decided in which direction yet."


2. If the Start menu is opened, at the same time as 1., and that this action obscures the sprite.
2. The text box obscures the sprite that would be in the way of the walking NPC.


3. The walking NPC has lower ID than the other sprite.
It is possible to recreate the glitch on an emulator by observing the correct memory address at wSpriteStateData2 (represented by $C2x8) for the given NPC{{clarify}}. This address controls when a walking NPC is going to make their next step. If $C2x8 is 0x01, opening the Start menu will change this value to 0x00. From there, saving the game<!--and resetting?--> or obscuring the sprite with the Start menu and closing the Start menu, may replicate the glitch.

When the text box is closed, the walking NPC would be updated before the other sprite becomes visible again, triggering this glitch. The most convenient text box to trigger this glitch is the Start menu, but other text boxes, such as the PC interface, can also be used.

This glitch can be also triggered by saving the game when the other sprite is obscured, and resetting; indeed, it was first reproduced from a save file. This is also the only way to use the saving interface (which covers more area on the screen than just the Start menu) or the box-changing interface (which covers the entire screen) to obscure the sprite.

This glitch is rare because of the strict timing on opening the text box, which depends on the random walking delay of NPCs. It is possible to recreate the glitch on an emulator by observing the correct memory address at wSpriteStateData2 (represented by $C2x8) for the walking NPC (for example, $C228 for the walking NPC in the Cerulean City Pokémon Center) This address can easily be identified, because whenever it goes down to 0x00, the walking NPC will make their next step. The timing to press the button that opens the text box depends on the type of the text box:
* For the Start menu, the Start button should be pressed when $C2x8 is 0x01. It will have decreased to 0x00 when the Start menu is actually open.
* For the PC, the A button should be pressed on the frame $C2x8 becomes 0x00.
From there, either simply closing the text box, or saving and resetting, may replicate the glitch.


{{clr}}
{{clr}}

Revision as of 16:57, 22 February 2019

An NPC behind the Cable Club in Cerulean City Pokémon Center.

The NPC collision bypassing glitches describe glitches in Pokémon Red and Blue in which an NPC walks through another NPC or object.

This glitch was documented by Roelof and recorded by ChickasaurusGL, in which an NPC would walk through through the Cable Club lady.

Analysis

According to Bbbbbbbbba from the forums, the glitch can be recreated if the following criteria are met:

1. A text box pops up "exactly at the frame when the walking NPC was ready to move, but hadn't decided in which direction yet."

2. The text box obscures the sprite that would be in the way of the walking NPC.

3. The walking NPC has lower ID than the other sprite.

When the text box is closed, the walking NPC would be updated before the other sprite becomes visible again, triggering this glitch. The most convenient text box to trigger this glitch is the Start menu, but other text boxes, such as the PC interface, can also be used.

This glitch can be also triggered by saving the game when the other sprite is obscured, and resetting; indeed, it was first reproduced from a save file. This is also the only way to use the saving interface (which covers more area on the screen than just the Start menu) or the box-changing interface (which covers the entire screen) to obscure the sprite.

This glitch is rare because of the strict timing on opening the text box, which depends on the random walking delay of NPCs. It is possible to recreate the glitch on an emulator by observing the correct memory address at wSpriteStateData2 (represented by $C2x8) for the walking NPC (for example, $C228 for the walking NPC in the Cerulean City Pokémon Center) This address can easily be identified, because whenever it goes down to 0x00, the walking NPC will make their next step. The timing to press the button that opens the text box depends on the type of the text box:

  • For the Start menu, the Start button should be pressed when $C2x8 is 0x01. It will have decreased to 0x00 when the Start menu is actually open.
  • For the PC, the A button should be pressed on the frame $C2x8 becomes 0x00.

From there, either simply closing the text box, or saving and resetting, may replicate the glitch.


Youtube video

YouTube video by ChickasaurusGL