Comment modifier la caméra dans Pokémon X et Y avec Cheat Engine
Vous avez déjà rêvé de manipuler la caméra de Pokémon X/Y comme si vous étiez l'un des développeurs de Game Freak qui ont créé le jeu ? Dans ce tutoriel, vous apprendrez à zoomer et dézoomer à votre guise, à changer l'angle sous lequel la caméra vous filme et, au passage, à découvrir des détails du jeu que vous n'aviez jamais remarqués, comme la façon dont votre personnage se reflète dans les miroirs (comme celui de votre maison).
Dans ce guide, je vous explique pas à pas comment trouver l'adresse mémoire de la caméra et tout ce que vous pouvez modifier avec. Pour cela, vous devrez jouer sur un émulateur PC (Citra, Azahar...) et télécharger le programme Cheat Engine, ou bien jouer sur une 3DS avec CTRPF installé pour pouvoir rechercher des valeurs en mémoire. Je vous recommande la première option dès que possible, car elle est plus complète et offre plus d'options de recherche, mais si vous le faites sur 3DS, pas de souci : je vous explique aussi comment faire (même si la méthode est un peu plus longue).
Comment trouver l'adresse de la caméra sur émulateur (PC)
Configurer Cheat Engine
Si c'est la première fois que vous utilisez Cheat Engine, vous devez activer quelques réglages avant de commencer. Si vous sautez cette étape, le programme n'analysera pas la mémoire de l'émulateur et aucun résultat n'apparaîtra dans vos recherches.
- Téléchargez et installez Cheat Engine depuis son site officiel.
- Ouvrez Cheat Engine et allez dans Edit → Settings.
- Dans le menu de gauche, ouvrez Scan Settings.
- Dans la section Scan the following memory region types, cochez les trois cases : MEM_PRIVATE, MEM_IMAGE et MEM_MAPPED (cette dernière est celle qui inclut la mémoire de l'émulateur).
- Cliquez sur OK pour enregistrer les modifications.

Trouver la valeur de la caméra
Une fois Cheat Engine configuré, vous pouvez commencer à chercher la valeur de la caméra. La première chose à faire est de sélectionner l'émulateur que vous avez ouvert, pour que le programme puisse lire sa mémoire. Pour cela, cliquez sur File-> Open Process (en haut à gauche) ou sur l'icône de l'écran avec une loupe et sélectionnez l'émulateur que vous utilisez (dans mon cas Citra), comme vous pouvez le voir sur l'image.

Ensuite, allez dans une ville ou un village du jeu et, dans Value Type, sélectionnez Array of byte. Collez ensuite l'array d'octets du tableau :
| Emplacement | Array of byte à rechercher | Zoom d'origine (float) | Octets du zoom |
|---|---|---|---|
| Caméra normale (la plupart des lieux) | CD CC 70 43 00 00 00 00 33 33 A3 40 00 00 00 00 00 00 00 00 0F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 54 B1 21 08 64 B2 21 08 08 44 22 08 | 240.8000031 | CD CC 70 43 |
Cet array fonctionne pour la caméra normale, celle qu'utilise la grande majorité des lieux du jeu. Elle ne change que dans des endroits spéciaux avec une caméra dynamique (par exemple, dans certaines zones de quelques routes), où cet array ne renvoie aucun résultat car la valeur est différente. Pour l'instant, nous avons trouvé les valeurs suivantes pour ces lieux :
Une fois l'array collé, cliquez sur First Scan. Comme vous le verrez, un seul résultat apparaît.

Vous pouvez aussi utiliser la méthode de la partie 3DS (recherche par float), mais je ne vous la recommande pas : elle est plus longue, et avec l'array vous trouvez l'adresse du premier coup. Attention toutefois : si vous changez de lieu, même si la caméra garde la même valeur, vous devrez refaire la recherche avec New Scan, car les adresses mémoire sont dynamiques et changent selon l'endroit où vous vous trouvez.
Comment trouver l'adresse de la caméra sur 3DS (CTRPF)
Sur 3DS, le procédé est très similaire, mais avec la recherche en mémoire de CTRPF. Allez où vous voulez et cherchez la valeur de la caméra ; dans mon cas, je retourne à Bourg Croquis. Réglez le Value Type sur float et cherchez 240.8000031. Pas mal de résultats vont apparaître (une vingtaine), vous devrez donc les modifier un par un jusqu'à trouver celui qui change la caméra. En général, le bon résultat se trouve à une adresse qui commence par 08 (08xxxxxx), alors essayez celles-là en premier. Dans mon cas, c'est la deuxième des deux adresses 08xxxxxx qui apparaissent, mais chez vous cela peut varier.

Comment modifier le zoom de la caméra
Une fois l'adresse trouvée, cliquez sur le résultat (il doit rester surligné en bleu) et appuyez sur CTRL+B, ou faites un clic droit → Browse this memory region. Vous accéderez ainsi à l'éditeur de mémoire, où vous pourrez modifier les valeurs.

La valeur qui contrôle le zoom de la caméra est 240.8000031 (type float), soit 43 70 CC CD en hexadécimal (dans les lieux avec une caméra dynamique, la valeur est différente). Cependant, en mémoire, elle est stockée avec les octets dans l'ordre inverse (format Little Endian), c'est pourquoi n'importe quel éditeur de mémoire l'affichera inversée : CD CC 70 43. Pour la modifier dans Cheat Engine, double-cliquez sur le premier octet (CD) et un menu déroulant s'ouvrira. Changez le type de 1 byte à Float et vous verrez la valeur au format float, bien plus facile à comprendre et à modifier que les octets.

Sur 3DS, comme vous avez cherché le float, vous pouvez modifier la valeur directement depuis les résultats de la recherche, sans passer par l'éditeur de mémoire. Je vous conseille tout de même d'utiliser l'éditeur de mémoire, car il vous permettra plus tard de modifier d'autres valeurs. Dans ce cas, en mémoire, vous verrez la valeur telle quelle (CD CC 70 43). Pour la remplacer, sélectionnez le premier octet, appuyez sur X, choisissez Converter et saisissez la nouvelle valeur dans le champ Float ; elle sera convertie automatiquement en hexadécimal. N'oubliez pas d'inverser ces octets (Little Endian) avant de les écrire en mémoire.

Modifiez-la et vous verrez l'effet immédiatement : si vous mettez une valeur plus élevée, la caméra s'éloigne ; si vous en mettez une plus basse, elle se rapproche. Dans cet exemple, la caméra est réglée sur 600 (44 16 00 00 en hexadécimal, qui s'écrit 00 00 16 44 en Little Endian), et comme vous pouvez le voir, le champ de vision est beaucoup plus large.

D'ailleurs, si vous préférez l'utiliser directement comme code, sans devoir chercher sa valeur en mémoire à chaque fois, vous trouverez des codes qui modifient la caméra dans tous les lieux sans caméra dynamique (intérieurs compris) dans mon article sur les codes de triche Pokémon X et Y.
Ce que vous pouvez modifier d'autre
Une fois l'adresse trouvée, vous ne contrôlez pas seulement le zoom. Autour, il y a d'autres valeurs qui modifient la caméra de façons très différentes :

- Zoom :
CD CC 70 43(240.8000031). - Angle vertical :
C3 F5 22 C2(-40.74000168). Avec une valeur plus basse (comme -88.74), la caméra pivote jusqu'à donner une vue du dessus. Si vous descendez sous -90.74, la caméra s'inverse. - Rotation latérale : en augmentant la valeur, la caméra tourne vers la gauche, et en la diminuant, vers la droite.
- Déplacement sur l'axe Y : une valeur plus élevée monte la caméra et une valeur plus basse la descend.
- Plage stéréoscopique : la plage de distances dans laquelle vos yeux fusionnent les deux images de la 3D pour créer une sensation de profondeur.
- Plan stéréoscopique : la surface imaginaire sur laquelle tous les objets sont perçus à la même distance.
- FOVY (champ de vision vertical) : ce que vous pouvez voir de haut en bas sans bouger la tête. Cherchez-le avec
92 0A 06 3F(1057360530) ou avec92 0A 06 3F 44 55 00 00 E8 00 00 00 1C BB 69 14(0.5235987902). - Mode de suivi : détermine si la caméra suit le personnage. 00 = elle le suit ; 01 = elle ne le suit pas.
Exemple : caméra vue du dessus
Avec l'angle vertical à -87.74, vous obtenez une caméra vue du dessus ; à -90.74, vous atteignez la limite, et en dessous de cette valeur, la caméra s'inverse.


Vous pouvez aussi obtenir une caméra à la troisième personne en réglant, par exemple, un angle de -12.74.

Plus de tutoriels et de codes de triche Pokémon
Si ce tutoriel vous a plu, voici où continuer sur le site :
Laisser un commentaire