Rom Hack & Fan Game

Comment modifier le Pokémon que Timmy attrape ?

Ce tutoriel est valable pour la version Émeraude française uniquement.

Une très grande partie d'entre vous ont certainement déjà essayé de faire une Hack-Rom de Pokémon Emeraude. Et vous avez sûrement déjà modifié les combats contre Timmy en remplaçant son Tarsal par un Pokémon bien cheaté histoire de donner à ce gamin un peu plus de hype.
Seulement, l'illogisme reste : le premier Pokémon que vous le voyez attraper reste Tarsal. Je vais vous apprendre aujourd'hui comment modifier ce combat sur une rom FR !

Pré-requis

  • Advanced Pokémon Sprite Editor (juste pour connaître le numéro du Pokémon)
  • Une calculatrice pouvant passer en mode "programmeur" (celle de Windows par exemple)
  • Un éditeur hexadécimal
  • De la concentration (sans déconner ?)

La théorie

Pour commencer, je vais vous expliquer comment le script fonctionne. C'est un script ASM, un "special". Il est donc nécessaire de passer par l'hexadécimal pour le modifier. Si vous suivez mes instructions à la lettre, c'est à la portée de n'importe quel glandu.
Le script se trouve à l'offset B0884 sur la rom FR et se présente comme ceci :

'---------------  #org 0xB0884  warp6 0x21 0x49 0x0 0x2205 0xF7B7  removecoins 0xE8FB

La valeur hexadécimale qui va renvoyer à Tarsal est C4 mais n'est pas affichée ici, c'est pourquoi nous allons visualiser l'offset en héxadécimal :

0x00B0884   C421 4900 0522 B7F7 B5FB E8F7

Comme vous pouvez remarquer sur le script ci-dessus, C4 se trouve être la première valeur de l'offset.
"Pourquoi C4 renvoie à Tarsal ?" me demanderiez-vous ? Eh bien, c'est parce qu'il faut multiplier C4 par deux puis le convertir en décimal, ce qui donne 392, le numéro du fameux Tarsal dans l'ordre des Pokémon, en comptant tous les Pokémon "? ? ? ? ? ? ? ? ? ?" entre Célébi et Arcko. (visibles sur Advanced Pokémon Sprite Editor)
Nous allons donc nous servir de ce calcul pour le remplacer par le Pokémon de notre choix.

La pratique

Dans cet exemple, nous remplacerons Tarsal par Spinda (au pif). Ouvrez Advanced Pokémon Sprite Editor. Choisissez d'abord le ".ini" correspondant à votre rom (Emeraude FR). Chargez ensuite votre rom. Dans "Species name", choisissez votre Pokémon (ici Spinda).

Trouver le Pokémon désiré dans Advance Pokemon Sprite Editor.

Vous pouvez donc constater dans "Species number" que le nombre correspondant à Spinda est 308 alors que son numéro dans le Pokédex national est le 327. Notez le nombre de votre Pokémon et fermez ce logiciel.

Passons au calcul ! On va inverser l'équation pour trouver la valeur par laquelle il faudra remplacer le C4 correspondant à Tarsal. Ouvrez votre calculatrice en mode "Programmeur". (ici, celle fournie avec Windows : Affichage > Programmeur)

Calculatrice Windows en mode Programmeur

À gauche, cliquez sur "Déc" si elle est dans un autre mode de calcul, puis tapez le nombre correspondant à votre Pokémon (ici, 308 pour Spinda).
Divisez ce nombre par 2 et cliquez sur "Hex" pour convertir le résultat en hexadécimal. Vous obtiendrez donc un nombre composé de deux caractère. (ici, 9A)

On a presque fini ! Ouvrez maintenant votre éditeur hexadécimal (personnellement, j'utilise RHack, téléchargeable sur SourceForge).
Ouvrez votre rom à l'aide de celui-ci et allez à la ligne correspondant à l'offset B0884.

Chercher l'offset du Tarsal pour modifier la valeur.

À présent, remplacez la valeur C4 par celle que vous avez obtenue grâce au calcul précédent. Vous avez juste à cliquer dessus et taper votre valeur.

Modifier la valeur du Pokémon et la remplacer par celle voulue.

Vous pouvez aussi modifier son niveau en remplaçant la valeur 05 de l'offset B0888 par un nombre entre 1 et 100 que vous aurez préalablement converti en hexadécimal.
Une fois que c'est fait, enregistrez votre rom, fermez les différents logiciels et sortez une bière du frigo : c'est fini !

Timmy va capturer un Spinda !

Attention cependant à ne pas choisir un Pokémon invincible par le Zigzaton comme un type Spectre ou un Pokémon trop puissant pour lui.

Par Julink
Merci à Link et Arnikum Plus

Par Loris