Ditto Trick

Version : R/B/J

Ce glitch permet tout simplement d'acquérir n'importe quel Pokémon sur votre version de première génération, a l'infini et sans aucun recours à un appareil de triche, où a des échanges.
Rédacteurs : Imakuni, Little-boss et Krys3000
This glitch is also available in English at our partner Glitch City Labs: click here

Nous venons de voir l'Old Man Trick qui permet d'avoir quelques Pokémon seulement mais à très haut niveau. Ici, nous allons voir un deuxième glitch permettant d'obtenir n'importe quel Pokémon et qui peut être utilisé autant de fois que nécessaire dans une partie. Il est donc beaucoup plus puissant que l'Old Man Trick, mais les Pokémon rencontrés ne le seront qu'à faible niveau (maximum 7). Ca n'est donc pas encore le jackpot mais c'est quand même un des glitches les plus utilisés !

Vous devez savoir que ce glitch est ce qui a lancé un grand nombre de personnes sur le chemin de la glitchologie : Le groupe Trust lui-même, concepteurs de ce que vous êtes en train de lire, a été fondé a la découverte de ceci, en 2004. Les gens l'utilisaient pour avoir Mew, mais peu savaient alors qu'on peut l'utiliser pour n'importe quel Pokémon ! Vous connaissez donc probablement l'essentiel du glitch que vous pourrez retrouver sur les sites principaux de Pokémon (ceci est toutefois une version un peu modifiée).

Pendant longtemps, ce glitch a souffert de limitations techniques, car il fallait avoir plusieurs dresseurs non-combattus pour le réaliser. Petit à petit, ces limitations se sont réduites jusqu'à sa forme ultime, 10 ans plus tard, pour lequel pas un seul dresseur n'est nécessaire.

Comme pour le Old Man Trick, vous trouverez en fin de page une section visant à expliquer le fonctionnement du glitch !

Préparatifs

Vous aurez besoin pour ce glitch :

  • Un Pokémon avec Vol
  • Avoir accès à des Metamorph sauvages
  • Deux, un, ou aucun dresseur non-combattu selon la variante utilisée (voir plus bas)

Etape I : Le choix du Pokémon

Dans le Old Man Trick, pour choisir votre Pokémon, vous aviez besoin de connaître son Identifiant, et c'est le cas aussi pour le Ditto Trick. Cette fois, nous allons surtout utiliser la conversion en Décimal de cet Identifiant, et pour connaître celle-ci, veuillez visiter cette page et noter la valeur. Par exemple, la valeur Décimale de l'Identifiant de Mew, $15, est 21.

Ce glitch ne permet pas non plus de rencontrer MissingNo. sous sa forme pixel dans Rouge et Bleue. Mais comme il fonctionne sur Jaune, vous pouvez l'utiliser pour les capturer dans cette version. Dans tous les cas, les trois formes de MissingNo. qui ont l'apparence du Squelette de Ptéra (Identifiant $B7, soit 183 en Décimal), du Squelette de Kabutops (Identifiant $B6, soit 182 en Décimal) et du Spectre (Identifiant $B8, soit 184 en Décimal), peuvent être utilisées sans problèmes.

Une fois la conversion décimale de votre Identifiant mémorisé, prenez un de vos Pokémon (il peut s'agir de celui qui a Vol) et débrouillez-vous pour monter son niveau de Spécial à la valeur de ce nombre en combattant et montant de niveau ou encore en consommant des Calcium (le Spécial utilisé pour ce glitch est modulo 256. Cela veut dire qu'après 255, ça revient à 0. N'hésitez donc pas à faire le tour si besoin est : 255 = 255, 256 = 0, 257 = 1, 258 = 2, etc.). Par exemple, pour un Mew, montez votre Pokémon à un Spécial de 21. Mettez ce Pokémon dans votre équipe, et passez a l'étape suivante.

Etape II : La manœuvre "Dresseur-Vol"

Il y a des dresseurs dans le jeu qui sont dit "à longue portée" car ils sont capables de vous voir et de vous défier de l'autre bout de l'écran et non pas seulement à trois pas de distance comme les autres. Ces dresseurs ont une vitesse de réponse très lente, cela signifie qu'au moment où vous croisez leur regard, vous pouvez faire une action supplémentaire avant qu'il ne vous défient (actionner le menu Start par exemple).

Avant que l'on découvre la variante sans dresseur, le glitch tournait essentiellement autour de cette possibilité (qui, encore aujourd'hui, rend le glitch beaucoup plus facile), à tel point qu'on le nomme encore parfois Trainer-Fly Glitch ou plus justement, Trainer Escape Glitch ! C'est pour cette raison que nous commencerons cette page par le glitch classique que vous pourrez appliquer si un de ces dresseurs n'a pas été battu dans votre partie.

Voici une liste non-exhaustive de ces dresseurs à longue portée. Ce sont des relevés que nous avons pu observer, évidemment, il y en a d'autres, et toute contribution est la bienvenue.

Route 8 :
Le croupier le plus près de l'entrée du tunnel souterrain
Route 11 :
- Le gamin au sud.
- Le gamin dans le coin supérieur
Route 12 :
Le 2ème pêcheur que vous rencontrez au sud de Lavanville.
Route 17 :
Le 2ème Motard
Route 19 :
- Le nageur regardant vers le haut d'un groupe de 4 dresseurs.
- Le canon regardant vers la droite d'un groupe de 4 dresseurs.
- Le nageur parlant de ce qui est au-delà de l'horizon.
Route 20 :
- Le nageur dans le coin supérieur.
- Le canon qui vous parle de son petit ami.
Route 21 :
Il y a un pont du côté gauche avec 2 pêcheurs et 2 nageurs un peu au sud. Les deux nageurs sont utilisables.
Route 24 :
Le dresseur JR (mâle) sur la bande de terre à gauche du pont pépite.

Si vous avez encore deux dresseurs (dont un à longue portée)

Placez-vous près du dresseur à longue portée. Sauvegardez, par mesure de sécurité, puis avancez jusqu'à ce qu'il vous défie (vous verrez le point d'exclamation), en appuyant immédiatement sur START ! Il n'aura pas le temps de vous défier et attendra que vous fermiez le menu, ce que vous n'allez pas faire. Fuyez le dresseur avec Vol (ou Téléport, Tunnel, ou une corde sortie si possible). Vous pourrez de nouveau utiliser ce dresseur pour refaire le trick à l'avenir, car le combat n'a jamais eu lieu.

Une fois arrivé peu importe où, vous constatez ne plus avoir accès au menu Start. Si vous souhaitez pouvoir y accéder de nouveau pour surfer ou autre, vous pouvez toujours aller au PC le plus proche à pied, changer de boite (provoquant une sauvegarde), éteindre la console et la rallumer. En rechargeant votre partie, le trick est toujours enclenché... mais vous pourrez utiliser le menu Start. Attention toutefois, si vous faites ça, servez-vous du menu parce que sinon cette opération déclenchera le text box ID mismatching décrit plus bas !

Allez combattre le deuxième dresseur. Il doit se déplacer pour vous affronter, sinon, ça va planter. Perdez le combat afin de pouvoir réutiliser ce dresseur une prochaine fois (si vous gagnez, ça marche quand même, bien sûr, mais le dresseur ne pourra plus être combattu). Vous pouvez désormais passer à l'étape III.

Si vous avez encore un dresseur à longue portée, mais pas d'autres dresseurs

Commencez de la même façon. Pour cette méthode, vous devrez absolument effectuer la sauvegarde via le PC et redémarrer. Au rallumage du jeu, poussez un rocher avec FORCE. Il y en a un auquel vous pouvez facilement accéder dans la maison du Gardien du Parc, à Parmanie. Sinon, allez dans une grotte qui en possède. Une fois le rocher poussé, passez directement à l'étape III.

Si vous ne souhaitez pas ou ne pouvez pas pousser un rocher, il y a une autre méthode un peu plus longue. Allez affronter la Ligue Pokémon après avoir sauvegardé et redémarré par le PC (vous ne pourrez pas parler à Olga sinon). Si vous n'avez pas encore battu Pierre à Argenta (ce qui est relativement improbable) vous pouvez perdre directement pour ne pas perdre trop de temps et aller à Argenta pour tenter de quitter la ville en direction du Mont Sélénite, sur la Route 3. Un homme vous rappellera alors pour vous emmener à l'arène d'Argenta. Vous pouvez ensuite continuer le glitch.

Si vous avez battu Pierre, la troisième et dernière solution est de battre la Ligue dans sa totalité, Champion compris, et de passer à l'étape III dès la fin du générique !

Si vous n'avez plus qu'un (ou plusieurs) dresseurs normaux

Si vous n'avez plus de dresseur à longue portée, il est possible d'effectuer le glitch uniquement avec un seul dresseur normal. Malheureusement, il y a un inconvénient de taille, car pour fuir un dresseur normal, vous devez rencontrer un Pokémon sauvage EXACTEMENT au moment où vous croisez le regard de celui-ci, ce qui peut nécessiter... pas mal d'essais.

Si vous y arrivez toutefois, perdez contre ce Pokémon sauvage (il est donc plus efficace de n'avoir qu'un seul Pokémon, et empoisonné) pour revenir au dernier Centre Pokémon visité. Vous verrez brièvement le point d'exclamation du dresseur. Le mieux pour cette technique c'est de rencontrer le Pokémon dans la case juste devant le dresseur, car cela vous permet d'éviter d'avoir à faire un second combat ! Vous pouvez alors passer directement à l'étape III.
En revanche, si vous effectuez cette technique à deux ou trois cases de distance du dresseur, vous aurez accès au menu Start mais vous devrez quand même passer par la case combat, contre un autre dresseur normal ou bien le rocher ou la Ligue comme décrit dans la sous-partie précédente.

Si vous n'avez plus DU TOUT de dresseurs

Pour ceux d'entre vous qui sont de tels bourrins qu'ils passent leur temps à chercher le moindre dresseur qui traîne dans un coin pour lui éclater la tête avant de poursuivre le jeu (comme moi ^^) il vous reste une ultime possibilité, qui est évidemment la plus laborieuse. Vous pouvez bien sûr jouir de cette possibilité même s'il vous reste des dresseurs, mais c'est un sacré temps perdu !

Vous devez effectuer un autre glitch, l'item underflow glitch que vous n'avez pas encore lu si vous lisez les pages de ce site dans l'ordre. Si vous êtes dans ce cas vous pouvez sauter directement à cette page, et vous référer à la section qui permet de déclencher le ditto trick sans dresseur ; mais comme vous aurez besoin d'autres glitches pour le comprendre, je vous conseille vivement de continuer la lecture de notre site et de laisser ça pour plus tard. Passez ensuite par un save/reset avec le PC et la technique du rocher poussé, ou bien la ligue, pour compenser le second dresseur normalement nécessaire, avant de passer à l'étape III.

Etape III : Configurer le Pokémon choisi

Le glitch va en fait faire apparaître le Pokémon dont l'Identifiant, une fois converti en décimal, donne la valeur du Spécial du dernier Pokémon combattu (par exemple, avec un spécial de 21, c'est bien le Pokémon d'Identifiant $15, Mew, qui apparaîtra). Dans un premier temps, nous avions donc établi une liste de tous les dresseurs, avec les Pokémon qu'ils font affronter (via le spécial de leur dernier Pokémon). Mais cette technique est plutôt limitée alors que vous pouvez utiliser des Pokémon sauvages ! Toutefois, il est impossible de connaitre le spécial d'un Pokémon sauvage... sauf si celui-ci est un Metamorph, car lorsqu'il utilise Morphing, il copie les caractéristiques de votre Pokémon !

Affrontez donc un Metamorph et laissez-le faire Morphing sur le Pokémon ayant la bonne valeur de spécial préparé à l'avance, puis mettez-le K.O. (ou perdez, ça n'a pas d'importance). Vous ne devez plus affronter ni dresseur ni Pokémon à partir de maintenant.
A ce niveau, sachez que le Pokémon rencontré par le trick sera au niveau 7. Si vous voulez augmenter ce niveau, ou le baissez, vous devrez influer sur le niveau de FOR (attaque) du Pokémon adverse. Si vous faites six fois l'attaque Rugissement, par exemple, vous baisserez le niveau du Pokémon rencontré à l'étape IV, au niveau 1.

/!\ Détour intéressant : Si vous le souhaitez, vous pouvez jeter un œil à l'Experience underflow glitch, qui permet de monter certains Pokémon au niveau 100, car le Ditto Trick fournit un point d'accès pour ça. Les autres sont évoqués dans des glitches plus avancés que vous trouverez dans les pages suivantes.

Note : Si vous parlez à un PNJ proposant un échange après avoir réalisé l'étape 2, même sans faire l'échange, le Pokémon généré ne sera plus en fonction du spécial, mais sera le Pokémon dont l'Identifiant équivaut à celui du 5ème caractère du surnom du Pokémon proposé, et ayant pour niveau la conversion en décimal de l'Identifiant du 6ème caractère de celui-ci. Il faut prendre soin de ne pas rencontrer de dresseurs ou de Pokémon sauvages après. Voici une liste des Pokémon obtenus avec ces dresseurs (merci à thelinekioubeur pour son aide) :

    Version Rouge/Bleu
  • Route 2 - Abra pour Mr.Mime (MARCEL): Ronflex, niveau 139
  • Route 5 - Nidoran♂ pour Nidoran♀ (FABI): Missingno. (Identifiant $50), niveau 80
  • Route 11 - Nidorino pour Nidorina (BIBICHE): Nosféralto, niveau 135
  • Route 18 - Flagadoss pour Excelangue (GLAVIOTEUR): Grotadmorv, niveau 142
  • Azuria - Ptitard pour Lippoutou (NINI): Missingno. (Identifiant $50), niveau 80
  • Carmin sur Mer - Piafabec pour Canarticho (JULIO): Mélodelfe, niveau 80
  • Cramois'Île - Raichu pour Electrode (KOURJUS): Missingno. (Identifiant $89), niveau 148
  • Cramois'Île - Mimitoss pour Saquedeneu (BIGOUDI): Abra, niveau 131
  • Cramois'Île - Ponyta pour Otarie (BIBI) Missingno. (Identifiant $50), niveau 80

    Version Jaune
  • Route 2 - Mélofée pour Mr.Mime (TAPACENBAL): Nosféralto, niveau 132
  • Route 5 - Osselet pour Machopeur (LEMASTAR): Missingno. (Identifiant $92), niveau 147
  • Route 11 - Excelangue pour Triopikeur (BIGLEUX): Ronflex, niveau 148
  • Route 18 - Saqueudeneu pour Parasect (JOLATEIGNE): Spectrum, niveau 132
  • Labo de Cramois'ïle - Akwakwak pour Rhinoféros (JUMANJO): Électrode, niveau 137
  • Labo de Cramois'ïle - Caninos pour Lamantine (BRUNO): Mélodelfe, niveau 80
  • Labo de Cramois'ïle - Kangourex pour Grotadmorv (CRADINGUE): Grotadmorv, niveau 141

Etape IV : Obtenir le Pokémon voulu

Le Metamorph vaincu, retournez près du secteur du dresseur que vous avez évité à l'étape II (ou sur la Route 24 si vous avez suivi les instructions de l'item underflow glitch). Avant de rentrer dans la zone en question, ouvrez et fermez le menu Start. A votre premier pas dans celle-ci, le menu s'ouvre alors tout seul, appuyez sur B (si vous voulez voler, vous pouvez, vous combattrez le Pokémon après le Vol). Votre Pokémon apparaîtra au niveau choisi ! C'est le moment de ne pas avoir oublié d'acheter des balls !

Veuillez noter, et c'est très important, que le menu Start ne s'ouvrira pas si vous avez parlé à quelqu'un ou lu un panneau, par exemple, entre le moment où vous l'avez ouvert pour la dernière fois et celui ou vous entrez dans la zone. A la place, le jeu chargera la boite de dialogue ayant le même numéro dans la mémoire que celle-ci dans cette zone précise. Le souci, c'est que si cette boite n'existe pas, vous aurez ce qu'on appelle un text box ID mismatching : il renverra la mention "ERROR" précédée du numéro en question, et cela peut buguer le jeu. Pire encore, si le numéro en question correspond au dialogue d'un dresseur non-combattu, le jeu va se mettre à laguer à fond et il n'y a pas de remède facile connu à ce problème connu sous le nom de Walking Lag Glitch ! La variante la plus connue de ce glitch est la fameuse mention "O ERROR" que l'on peut obtenir sur la Route 23. Une autre est la Trick Zone de Pokémon Jaune, obtenue en faisant le glitch sur la Route 9 après avoir lu le panneau devant l'arène d'Azuria, et qui corrompt certains sprites. Le mieux est donc de toujours ouvrir/fermer le menu Start juste avant de rentrer dans la zone !

Utilités annexes de ce glitch

Faire disparaitre Ronflex pour zapper une partie du jeu :

Merci à thelinekioubeur pour avoir signalé ceci
Si vous effectuez le Ditto Trick et combattez comme deuxième dresseur un dresseur de la Route 12 (au sud de Lavanville, où se trouve normalement Ronflex) en revenant sur cette route celui-ci ne s'y trouve plus et vous pourrez passer sans avoir besoin de la faire la tour Pokémon. Enfin presque, car en fait il s'y trouve encore, et vous pouvez toujours le réveiller. Simplement, son sprite a disparu et vous pouvez passer au travers. Pratique !

MISE A JOUR : Pour information, de récentes recherches ont mené a mieux comprendre ce phénomène et comment l'utiliser avec d'autres PNJ et en speedrun. On en discute sur le forum !

Second Pikachu sur Jaune

Merci à thelinekioubeur pour avoir signalé ceci
Comme vous le savez certainement, il est normalement impossible de trouver des Pikachu sauvages dans la nature sur cette version, étant donné que Pikachu est le starter. Cependant, en utilisant le Ditto Trick avec un spécial de 84, il est possible d'en capturer d'autres. Chaque Pikachu capturé sur Pokémon jaune aura le même comportement que votre starter, c'est-à-dire qu'il vous suivra, qu'il aura une valeur de bonheur, etc. Dans le cas où vous auriez plusieurs de ces Pikachu dans votre équipe, seul le premier en partant du haut sera pris en compte.

Explications techniques

Le Ditto Trick est un peu plus complexe que le Old Man Trick, mais il n'est pas vraiment compliqué. Pensez qu'on parle ici d'un jeu Game Boy, et par conséquent, il est nécessaire d'économiser de la place au maximum. Il y a donc des scripts qui sont utilisés (comme des sous-programmes), pour permettre l'utilisation d'une même adresse mémoire pour des choses différentes dans des conditions différentes. Pour chaque zone du jeu, vous avez donc une adresse mémoire qui peut prendre la valeur 0 ou 1. La valeur 0 lance le sous-programme de base, utilisé pour les déplacements du personnage dans la map, alors que la valeur 1 lance le sous-programme de préparation à un combat de dresseur. Pour chacun de ces sous-programmes, un certain nombre d'autres adresses mémoires sont utilisées pour gérer des fonctions spécifiques à ceux-ci.

Pour être un peu plus précis, lorsque vous croisez le regard d'un dresseur, la préparation du combat commence : l'Identifiant du dresseur est provisoirement stocké dans l'adresse mémoire $CD2D (que l'on appelle "instant encounter", rencontre instantanée). Puis, le sous-programme gérera le déplacement, l'affichage de la boîte de dialogue du dresseur, et dès sa fermeture, le démarrage du combat contre le dresseur dont l'Identifiant est stocké dans l'instant encounter.

Le reste du combat est géré par le sous-programme de base (tout simplement parce qu'un combat de Pokémon et de dresseur c'est géré de la même façon, donc le combat en lui-même ne peut pas être exclusif au script du combat de dresseur). L'adresse instant encounter est alors vidée, et réutilisée pour autre chose, en l'occurence, le taux de spécial du Pokémon adverse actif (et ne s'efface pas jusqu'à la rencontre avec un autre Pokémon) ! Le reste coule de source : en fuyant le dresseur, vous bloquez la zone dans le sous-programme de préparation de combat. En arrivant ailleurs, vous n'avez plus accès au menu Start et ne pouvez pas parler aux gens, car le jeu s'attend à ce qu'un dresseur vienne vers vous et affiche sa boite de dialogue. C'est la raison pour laquelle, si le second dresseur ne se déplace pas, ça plante, et d'ailleurs, avec la méthode des dresseurs normaux, si vous fuyez juste devant le dresseur, vous aurez logiquement accès au menu Start !

Après avoir fait déplacer et parler, puis combattu un dresseur, le jeu reprend son fonctionnement normal. Mais la zone que vous avez fui est toujours bloquée dans l'autre sous-programme. Lorsque vous y retournez, comme les boites de dialogues sont de nouveau disponibles suite au combat précédent, le jeu affiche celle qui correspond au numéro de la dernière boite en mémoire (c'est pour celà qu'on s'assure que ce soit le menu Start). Lorsque vous fermez celui-ci, le sous-programme termine son office ; il démarre le combat contre le "dresseur" dans l'instant encounter... sauf que bien évidemment, ce n'est plus du tout le dresseur fui qui s'y trouve puisque entre temps, cette adresse a servi au sous-programme de base pour stocker le Spécial du dernier Pokémon actif rencontré, qui s'y trouve toujours ! Et comme les dresseurs et les Pokémon partagent leur liste d'Identifiants, c'est comme ça que le glitch fonctionne :)

Il existe une autre adresse mémoire, $CD2E, qui gère le seuil de FOR du Pokémon actif adverse dans le sous-programme de base. Par défaut, ce seuil est à 7, et à chaque fois que vous réduisez la FOR ennemie avec une attaque, il descend d'une unité. Vous pouvez donc le faire descendre au maximum 6 fois, pour lui faire prendre la valeur 1 (l'adversaire aura alors perdu 7/8ème de sa FOR). Dans le sous-programme de préparation du combat de dresseur, cette adresse détermine l'équipe de celui-ci. Tous les nageurs, tous les canons et tous les pêcheurs, ont en effet le même Identifiant et c'est cette valeur qui détermine quelle équipe (le "roster") il possède.

Si vous effectuez le Ditto Trick pour affronter un dresseur, influer sur le niveau de FOR du Pokémon changera en effet l'équipe du dresseur. Si vous affrontez un Pokémon, la valeur est lue en tant que niveau ; et c'est pour ça qu'il est à 7 et que vous pouvez le réduire en affectant la Force du dernier Pokémon combattu.


Page Précédente : Old Man Trick
Page suivante : Glitch City RAM Manipulation