Tweaking Trick : Téléportation

Versions : D/P/Pl/OHG/ASS

Ce glitch permet entre autres de capturer les Pokémon Arceus, Darkrai, Shaymin et Giratina, sans action replay, sur D/P. Il permet également de voler sur les maps où de se "téléporter" et de sauter des zones entières du jeu.
Rédacteurs : Furfande, BUGLITCH et Krys3000
Tuteur : BUGLITCH
Remerciements au forum HallOfOrigin (Auburneye et Commandolam en particulier), à Pelican, Alesck4, Nico182, Cryo, Aera, ainsi qu'à l'ancienne et la nouvelle équipe des tweakers dans leur globalité.
This glitch is not yet available in English language at our partner Glitch City Labs. Please check back later!

L'équipe de PRAMA tiens à préciser que toutes les bases de cette techniques ont été développées exclusivement pour PRAMA par les tweakers volontaires du forum qui ont travaillé sur le glitch il y a des années, tels que Effray, imFrozZ, Ankeraout, mais également Nax et BUGLITCH aujourd'hui membres de l'équipe. Cette page a été écrite par Ankeraout que nous remercions vivement.

La téléportation, comme son nom l'indique, permet de se téléporter à certains endroits du jeu, et plus souvent à certaines localisations appelées interior, qui correspondent à un bâtiment. Cette technique liée au Tweaking Trick ne permet donc pas d'atteindre des zones externes du jeu. Sans vous en rendre compte, lorsque vous faites par exemple le chemin pour capturer Shaymin ou Darkrai, vous effectuez des téléportations. Sur cette page, vous trouverez le mode d'emploi de la téléportation ainsi qu'un logiciel permettant d'obtenir les instructions précises exactes pour atteindre une map voulue. Pour ceux d'entre vous que ça intéresse, une partie "explications techniques" à la fin vous permettra de comprendre comment fonctionne le trick...

Fonctionnement manuel de la téléportation

Depuis 2015, plus personne ne s'amuse à déterminer manuellement le chemin de téléportation. Si vous le souhaitez vous pouvez donc directement passer à la section suivante. Pour votre information, voici comment on détermine manuellement les pas à faire pour atteindre votre map.

Pour utiliser la téléportation, vous avez besoin d'un point d'entrée dans la void. Vous aurez également besoin du tableau des localisations et des numéros de matrices, développé par l'équipe des tweakers du forum PRAMA, pour savoir où la téléportation va vous mener. Dans la troisième colonne du tableau se trouvent les ID des maps du jeu. Ce sont ces ID que nous utiliserons pour nous téléporter : en allant à la ligne du tableau correspondante à cet ID, vous pourrez ainsi voir dans la première colonne du tableau ou la téléportation va vous mener.

La première étape consiste donc à localiser dans le tableau votre point d'entrée dans la void. Si par exemple vous entrez par Pokémontre S.A., le chemin classique de la capture des Pokémon (c'est alors votre centerpiece, comme expliqué dans notre section d'explications), vous irez à la ligne 8, car "RC de la Pokémontre S.A." a pour ID de localisation 8. Comme vous pouvez le voir, cela devrait vous mener au Centre Commercial de Voilaroc.

Une fois à votre point de départ, entrez dans une void et montez au Nord. Lorsque vous arriverez à la localisation souhaitée, normalement juste après le Pré Floraville (dans le cas de la Pokémontre, ce sera donc Voilaroc), faites la suite de boutons X, A, B, B, cette fameuse manœuvre qui consiste à ouvrir le menu START puis un menu et de les refermer. Si vous tombez dans un double écran noir, inutile de retenter de vous téléporter à cet endroit, ça ne marche pas dans votre jeu. Si vous aviez sauvegardé à cet endroit, vous auriez perdu votre sauvegarde. Si vous voyez toujours votre personnage, tout va bien : sauvegardez votre partie et redémarrez la console.

Si vous descendez jusqu'à tomber sur un mur invisible et faites un nouveau XABB, vous serez arrivé à votre destination. Mais vous pouvez aussi continuer la manœuvre : il vous suffit de faire un pas vers le bas et un pas vers le haut pour arriver à la nouvelle localisation correspondant au numéro de la matrice de la localisation actuelle (rappelez vous, dans le tableau !). Dans notre exemple, depuis le Centre Commercial, vous arrivez à la Ligue Pokémon (ID 141)... Vous pouvez refaire la téléportation autant de fois que vous voulez, mais sachez qu'il arrive que vous tombiez dans une boucle infinie, ou bien sur une localisation qui plante la console.

Sachez que cette technique ne fonctionne que pour certaines localisations. Après avoir réussi un XABB, si vous arrivez à progresser dans le mur du bâtiment, vous pourrez rentrer dedans, mais si ça n'est pas le cas, vous devrez vous re-téléporter vers une autre localisation.

Le meilleur ami du téléporteur : Phoebe

Vous vous souvenez de quand je vous disais d'aller chercher dans le tableau à chaque fois ? C'est long et parfois on se trompe. Or, j'ai une très bonne nouvelle pour vous : vous n'aurez plus à le faire. La PRAMA dev team a créé pour vous le logiciel Phoebe, qui vous donne tout seul tous les chemins possibles pour arriver à une localisation donnée.

Présentation


Légende :

  1. Carte de Sinnoh
  2. Liste des localisations
  3. Liste des chemins possibles
  4. Choix du mode détaillé
  5. Liste des instructions à suivre

Mode d'emploi

Ce logiciel vous classe dans l'ordre du plus court au plus long tous les chemins possibles. Pour utiliser Phoebe, vous pouvez d'abord cliquer sur une ville sur la carte pour restreindre la liste des localisations aux localisations de cette ville. Dans cet exemple, j'ai cliqué sur Unionpolis pour avoir la Poffinerie. Ensuite, dans la liste des localisations, choisissez votre destination. Par défaut, la liste des instructions n'affiche que la liste des localisations dans lesquelles vous aurez à vous téléporter. Par contre, si vous activez le mode détaillé, cette liste se transformera en un tutoriel personnalisé pour chaque chemin, que vous devrez suivre à la lettre pour arriver où vous voulez. Sur cette image, il est activé.

Téléchargement

Télécharger Phoebe (.exe pour Windows, .jar pour Linux/Mac)

En cas de besoin d'informations ou de bug report, n'hésitez pas à visiter le forum !

Explications techniques

Pour ceux d'entre vous qui voudraient développer le sujet, cette partie explique comment fonctionne la téléportation. Certains des concepts abordés ici sont déjà expliqués dans la page d'explications techniques du Tweaking Trick, mais il est nécessaire de les expliquer pour bien comprendre !

La centerpiece

La centerpiece, c'est en fait votre point de départ dans la void, c'est la localisation qui est chargée. Elle ne peut changer que lors d'un save/reset. Par exemple, lorsque vous partez de Pokémontre S.A. pour faire 430 pas vers le Nord, même si la localisation affichée est Féli-Cité, la localisation chargée par le jeu est et restera Pokémontre S.A. tant que vous n'aurez pas sauvegardé la partie et redémarré le jeu. Cela signifie que si vous décidez de redescendre de 430 pas, vous retomberez sur la Pokémontre quoi qu'il arrive. Cependant lorsque vous relancez le jeu, la localisation Féli-Cité est chargée à la place de Pokémontre S.A., et votre centerpiece devient ainsi Féli-Cité, ce qui veut dire que si vous redescendez, vous arriverez à Féli-Cité. En réalité, ce Féli-Cité-là correspond à Sinnoh car c'est un Féli-Cité dit exterior. Toute sauvegarde dans une localisation extérieure vous mènera à ce que l'on appelle Sinnoh, qui est si on veut la localisation générale de toutes les villes.

Le découpage des maps

Avant d'aborder des choses concrètes comme la représentation des données dans la RAM, nous devons aborder le découpage des maps du jeu.

Il faut savoir qu'absolument toutes les maps du jeu sont découpées en carrés de 32x32 cases, que l'on appelle des chunks. Chaque chunk a un numéro de localisation et une map qui lui sont propres. Prenons l'exemple de la map des Colonnes Lances. Il s'agit d'une salle immense, qui fait une taille de 64x64 blocs. Cette salle a donc des dimensions de 2 chunks en largeur et de 2 chunks en hauteur. Pour illustrer mes propos, je prends l'exemple du chunk Nord-Ouest des Colonnes Lances :


Voici le quart Nord-Ouest de la map des Colonnes Lances. Sachez que le reste de la map est contenu dans les 3 autres chunks, et lorsque vous jouez, vous n'y voyez que du feu ! C'est d'ailleurs un des principes du Tweaking Glitch qui a pour but de charger un chunk à la place d'un autre.

La mémoire du jeu

Dans la mémoire du jeu, les localisations sont normalement inscrites dans un endroit dans la mémoire qui leur est bien réservé (aux alentours de l'adresse 0x02290000). Dans le cas des Colonnes Lances, voici ce que ça donnerait dans la RAM :

AdresseValeur
0x02290000220
0x02290002220
0x02290004220
0x02290006220

Vous avez ici le contenu de la matrice des localisations dans la mémoire du jeu lorsque vous êtes aux Colonnes Lances ! Dans le jeu, cela est représenté avec une matrice de 2x2 comme ceci :

0x2290000
(220)
0x2290002
(220)
0x2290004
(220)
0x2290006
(220)

Pour amener un exemple à toute cette théorie, je vous propose un exemple très concret : une "capture" de la RAM du jeu. Ne soyez pas choqués par la notation des chiffres, ils sont représentés ici en hexadécimal par groupes de 2 octets.


Légende :
XXXX : Taille de la matrice des maps/localisations
XXXX : ID de la matrice
XXXX : ID des localisations (contenu de la matrice)

Vous pouvez voir sur cette capture de la RAM que la matrice a une taille de 2x2 (chaque dimension est codée sur un octet, ici en 0x02290144 : 2 de large, et en 0x02290145 : 2 de haut), que l'ID de la matrice est 22 (qui correspond à l'ID de la matrice des Colonnes Lances), et que la matrice est remplie de 0x00DC, qui se traduisent en 220 si on passe en décimal. On retrouve donc bien tous les éléments dont je parlais avant. Considérez que les données non-surlignées ne nous intéressent pas dans le cas de la téléportation. Ces données sont les données de la centerpiece, c'est à dire que même si je décide de remonter dans la void en partant des Colonnes Lances, ces données ne changeront pas et si je décide de revenir à mon point de départ j'arriverai toujours quoi qu'il arrive aux Colonnes Lances.

Et la téléportation dans tout ça ?

Lorsqu'on veut se téléporter en fait, on veut changer ces valeurs dans la RAM. Si par exemple on voulait se téléporter à Pokémontre S.A., on voudrait une matrice de 1x1, avec un ID qui vaudrait 0x008D, et une matrice contenant comme seule valeur 0x0008. Lorsqu'on fait un save/reset dans la void, c'est ce qu'on fait, car le jeu sauvegarde la localisation dans laquelle vous vous trouvez actuellement et non la centerpiece ! Du coup, au redémarrage du jeu, les données chargées seront les données de la localisation dans laquelle vous vous trouviez, et cette dernière devient ainsi votre centerpiece. Cela signifie que lorsque vous retournerez à votre point de départ, vous ne tomberez plus sur votre ancienne centerpiece, mais sur la localisation dans laquelle vous avez sauvegardé et redémarré le jeu. Vous vous êtes donc téléportés !


Page Précédente : Tweaking Trick
Page suivante : Mimic Trick