Yami Shop Glitch

Version : R/B/J

Ce glitch, qui pourrait se traduire par "magasin des ténèbres" ou "marché noir", permet d'acheter n'importe quel objet, notamment des objets glitch, dans un magasin classique.
Rédacteur : Tigali
Tuteur : Krys3000
This glitch is also available in English at our partner Glitch City Labs: click here

Préparation

Pour réaliser ce glitch, vous aurez besoin d'un objet glitché de catégorie "Unterminated Name", c'est à dire sans terminateur (marqueur de fin d'Identifiant 50) dans les 20 premiers caractères de son nom. La liste de ces objets peut se trouver dans notre Itemdex.

Méthode et effets

  1. Positionnez-vous dans une zone dans laquelle l'objet Unterminated Name ne fera pas planter le jeu. Les plus évidentes sont celles avec des arbres dans la partie basse de l'écran, telle que la position suivante, à Parmanie :

  2. Ouvrez le menu, et entrez dans un des onglets, n'importe lequel ; ceci afin de purger les données relatives à l'écran qui sont en cache, pour éviter un éventuel plantage après avoir tenté de vendre l'objet.
  3. Parlez à un vendeur et tentez de lui vendre votre objet Unterminated name. Parfois, cela échouera et vous reviendrez à l'écran de sélection ACHETER - VENDRE - QUITTER ; d'autres fois, cela fonctionnera.

A ce stade, le menu ACHETER deviendra corrompu, et de nombreux objets de toutes sortes pourront y être trouvés. La nature de ces objets dépendront des tuiles affichées à l'écran quand l'étape 1 a été effectuée. Parmi eux se trouvent des objets glitchés, des objets légitimes normalement achetables, et enfin des objets légitimes normalement impossibles à acheter (Pokédex, Colis de Chen, Master Ball...). Ces derniers auront toujours un prix de 0 !

Au delà de ça, quelques effets secondaires pourront se manifester : en fermant le menu, une rencontre avec un Pokémon (en version européenne, toujours un Chrysacier) pourra être déclenchée, la musique peut diminuer peu à peu et le personnage se mettre à marcher sur place indéfiniment.

Explications techniques

Les causes des phénomènes qui se produisent en tentant de sélectionner ou de vendre un objet au nom non terminé sont proches de celles qui rentrent en jeu lors d'une corruption utilisant une attaque Super Glitch : l'absence de marqueurs de fin va conduire un plus grand nombre de données que prévu à être traité, altérant les adresses situées immédiatement après.

À chaque fois qu'un objet est sélectionné dans l'inventaire ou que vous essayez de le vendre, l'adresse $CD6D ($CD68 en version japonaise) récupère son nom. Ce nom est ensuite copié à l'adresse $CF4B ($CF45 en version japonaise) jusqu'à ce qu'un terminateur d'Identifiant $50 soit lu et que la copie soit arrêtée. Si aucun de ces marqueurs n'est trouvé au delà du vingtième caractère, le jeu va commencer à copier les données des adresses postérieures. Or, la zone mémoire située immédiatement après est une copie en cache des tuiles affichées à l'écran. C'est à cause de cela que l'endroit où l'étape 1 a été effectuée est si important, et qu'une tuile d'Identifiant $50 doit y être présente (pour éviter un plantage dû à un trop grand nombre de données emmagasinées). Ainsi, plus cette tuile est située loin dans les adresses qui stockent l'écran en cache, plus la corruption est massive !

Ces données copiées seront évidemment bien plus importantes que prévu par le jeu et vont elles aussi se mettre à déborder sur les adresses postérieures à $CF4B. Le glitch s'enclenche quand la corruption atteint l'adresse $CF7B ($CF62 au Japon) qui contrôle le nombre d'objets vendus dans le magasin, et les adresses suivantes, qui identifient le premier objet vendu, puis le 2e, puis le 3e, etc.

Quant au Chrysacier qui peut vous attaquer, il est le résultat de la corruption de l'adresse $D059 ($D036 en version japonaise), qui contrôle la nature du Pokémon rencontré quand il s'agit d'un Pokémon sauvage, par le biais du glitch. Apparemment, en version européenne, la seule tuile pouvant corrompre cette adresse est une tuile de menu, d'Identifiant $7C, le même que Chrysacier...


Page Précédente : Item Underflow Glitch
Page suivante : Grass Surfing Glitch