Hack'n'Trash : Les bases du ROM-Hacking 6G
Hey, mais on est le 20 ! Et le 20, c'est le jour du Hack'n'Trash ! Wouhou ! Alors la dernière fois, c'était les linkers 3DS, nous avons parlé de triche sur 3DS aussi. Mmmh... Allez, ROM-Hacking 3DS ! Ce sujet traîne depuis un petit moment dans les votes, et comme il est ex-aequo avec un autre sujet plus jeune, priorité aux anciens.
Le ROM-Hacking sur 3DS s'est ouvert au public l'été dernier lorsque la Team V0iD a offert à la communauté un outil de décryptage des jeux. Libérant toutes les données des jeux (images, textes, modèles), les ROM-Hackers ont sauté sur l'occasion pour commencer à exprimer leur créativité, ou alors traduire des jeux que vous ne verrez probablement jamais dans nos contrées.
Les limites du ROM-Hacking
Je vais éviter de vous faire perdre votre temps, si vous voulez essayer votre Hack-ROM, vous devrez posséder un linker compatible, comme la Gateway.
Ensuite, le matériel nécessaire au décryptage du jeu (ne vous inquiétez pas, j'en parle plus bas) n'est pas compatible avec les dernières mises à jour. Au-delà des versions 9.2.0, il est aujourd'hui impossible de décrypter vos ROM.
Décrypter tu dis ?
Oui, exactement. C'est la première étape, indispensable si vous voulez modifier votre jeu, et ce peu importe le jeu. Asia81 (A.K.A. Mizoré sur notre forum) a fait d'excellents tutoriels à ce propos, aussi bien chez nous, que sur GBATemp. Suivant le tutoriel, vous avez le choix entre trois options : 3DS Multi Decryptor, Decrypt9 ou rxTools. Le premier était principalement compatible avec les consoles entre 4.1.0 et 7.2.0 puisque ça nécessitait une Gateway (oui, encore une fois... ils sont partout), et génère des fichiers XORPAD. Je vous laisse voir le tutoriel local (qui sera bientôt mis à jour) pour savoir ce que c'est et quoi faire avec. Le deuxième a surtout été créé pour les développeurs de Citra, et génère ces XORPAD sur des consoles plus récentes, notamment en 9.2.0. Et le dernier, celui que nous recommandons, fonctionnant sur les consoles de 4.1.0 à 9.2.0 (New3DS comprises), ne génère plus de XORPAD mais décrypte directement la ROM de l'intérieur. Le résultat sera donc une ROM exploitable sans bidouille fastidieuse. Et pour utiliser celui-là, direction les USA.
So easy... (avatar de Roxas75, créateur de rxTools)
Cette partie étant malgré tout utlra importante, je ne vais pas m'attarder dessus puisque le vrai sujet arrive tout de suite. Vous avez tout ce qu'il faut pour savoir si vous pouvez décrypter un jeu, et comment le faire. Je vous laisse juger de vos compétences (ou votre incompétence, ça dépend).
Notez aussi que la suite de cet article traitera principalement du contenu du fichier RomFS de la ROM. Ce fichier contient les données utilisées par le jeu, comme le texte, les images, les modèles ou les musiques.
On peut modifier quoi ?!
Tout, du moment que vous savez où chercher. Mais aujourd'hui, je m'adresse aux débutants qui auront pu décrypter leur jeu, alors je vais vous présenter les deux principaux outils de ROM-Hacking dédiés à X/Y/Rubis Oméga/Saphir Alpha.
La majorité des données intéressantes se trouve dans le dossier /a/ qui contient une multitude de sous-dossiers numérotés. Au bout du chemin, des fichiers numérotés sans extension, appelés GARC. Ce sont des archives contenant les fichiers à modifier. Vous pouvez connaître le contenu des fichiers GARC grâce aux listes suivantes : X Y, Rubis Oméga Saphir Alpha. Un bon conseil, avant de modifier quoi que ce soit, faites une copie des originaux quelque part, au cas où.
pk3DS, le couteau-suisse du ROM-Hacking 6G
Commençons par les données simples. pk3DS est un logiciel multiusage qui vous permettra de modifier beaucoup de choses. C'est l’œuvre de Kaphotics, associé aux outils de SciresM, KazoWAR et Huntereb. Ces quatres personnes vous ont concocté un outil sans pareil, spécialement pour les versions 3DS. Pokémon sauvages, dresseurs, évolutions et Méga-Évolutions, dialogues, presque tout y passe. Je ne pense pas dire de connerie en affirmant qu'aujourd'hui, les ROM-Hackers GBA n'ont pas encore un tel logiciel, alors que c'est sur cette console qu'on trouve le plus de Hack-ROM.
Pour utiliser pk3DS, créez un dossier, et nommez-le à votre guise (nom du projet, nom du jeu original, peu importe). Dans ce dossier, créez-en deux autres : /romfs/ et /exe/. Dans /romfs/, mettez-y le contenu du fichier RomFS que vous avez extrait. Dans /exe/, placez les fichiers extraits de ExeFS, puis renommez code.bin en .code.bin (avec un point au tout début). Lorsque vous aurez fini, pensez à retirer le point au début du nom du fichier pour pouvoir compiler la nouvelle ROM sans embûche. Ouvrez le dossier /à votre guise/ avec le bouton Open Dir du logiciel, et vous êtes partis pour des heures de modification.
Il chargera les données modifiables et vous pourrez ensuite effectuer vos modifications, en cliquant sur les boutons de votre choix. Il a aussi une fonctionnalité Randomizer qui devrait plaire aux adeptes du Randomizer Nuzlocke Challenge. Cette dernière va secouer les puces du jeu aléatoirement pour diversifier l'expérience de jeu, et éventuellement augmenter la difficulté.
Ohana3DS, le haut de gamme pour les pauvres
Vous en rêviez, ils l'ont fait !
La question qui vient à l'esprit lorsqu'on parle de ROM-Hacking sur 3DS, c'est : comment modifier les modèles 3D ? Et bien Ohana3DS est là pour vous y aider concernant nos jeux favoris. Outil développé par gdKchan et Reisyukaku, il vient là vous présenter les modèles des jeux, ainsi que leurs textures, parmi d'autres choses. Vous pouvez aussi profiter de ce logiciel pour extraire vos fichiers GARC depuis le menu Container à choisir sur la gauche.
Ohana3DS va vous fournir les éléments nécessaires à l'export des textures et des modèles dans des formats communs à divers outils. Pour les textures, un bête PNG sera exporté ; pour les modèles, vous aurez le droit à de l'OBJ ou du SMD, tous deux compatibles avec l'excellent Blender.
Si vous souhaitez modifier les textures, je vous laisse consulter notre tutoriel, sorti il y a maintenant plus de 2 mois. Et pour les modèles, je ne peux pas vous aider, je suis une merde, donc allez voir chez Zozor.
- Tu as bien grandi Flora...
- Brice, mes yeux sont plus haut.
Pour tester...
...vous allez devoir compresser vos nouveaux GARC. Suivez les consignes de notre tutoriel, ou passez par Ohana3DS pour le faire. Ensuite, compilez le nouveau RomFS à mettre dans le jeu, pour que les modifications soient prises en compte. Et compilez votre nouvelle ROM avec les outils fournis par Asia81 sur GBATemp. Et vous voilà prêt à tester votre jeu personnalisé. Mettez la ROM sur le support compatible de votre choix (Gateway, pour sûr) et démarrez-le. Si ça plante, vous avez raté, sinon à vous de jouer !
Quelques petites notes avant de terminer :
- évitez de trop grossir la taille des fichiers, vous pourriez ne pas réussir à compiler votre ROM correctement et devrez vous passer de certaines modifications. Ce serait dommage...
- vous ne réussirez pas forcément du premier coup, n'abandonnez pas. Je parle surtout pour le décryptage et la compilation du jeu qui sont certainement les étapes les plus difficiles.
- ne jouez pas en ligne avec vos Hack-ROM, ou seulement contre des joueurs qui ont la même si vous ne pouvez pas vous en passer.
Vas-y Mega, moi je voulais un tuto détaillé !
Bah non, avant de lire des tutoriels précis que vous suiverez bêtement, il vaut mieux que vous sachiez à quoi vous en tenir. Mais maintenant que le sujet est posé, on pourra s'amuser sur des trucs précis. Ou peut-être même newser plus souvent sur le ROM-Hacking 6G, qui sait... En tout cas, j'espère que ça aidera les moins informés à comprendre les bases du ROM-Hacking sur 3DS, et comblera les lacunes d'autres.
N'hésitez pas à passer dans la section ROM-Hacking de notre forum pour poser vos questions. Et si un nouvel article sur le sujet vous intéresse, pensez à voter pour dans les commentaires. Tout autre sujet technique lié à Pokémon est aussi éligible. Sur ce, je vous laisse, Émeraude Delta m'attend.
Sources : GBATemp.net, Project Pokémon, rxTools.net, GitHub, YouTube
Le petit MegaRobert
- Décrypter : je vous laisse lire sa définition chez la rousse.
- Randomizer : procédé qui mélange aléatoirement les données d'un jeu par catégorie, pour changer complétement les rencontres sauvages par exemple.
- Nuzlocke Challenge : le mode Hardcore vu par les joueurs, avec des règles très strictes qui peuvent amener à abandonner la partie.
- Compiler : construire un logiciel, ou un jeu dans notre cas, à partir d'une multitude de fichiers, pour le rendre utilisable par tous.