|
[TUTO] Faire Des Cheats Codes Wii, WiiWare et Virt...- ForumTopic: [TUTO] Faire Des Cheats Codes Wii, WiiWare et Virtual Console 2/2par crapulecorp le 03/04/12 à 01:37:23 (il y a 12 ans 33 semaines 6 jours 8 heures 18 minutes) 20 réponses, vu 5266 fois[TUTO] Faire Des Cheats Codes Wii, WiiWare et Virtual Console 2/2--------------------- 2 Passons à la pratique pour chaque type de codes les plus courants 2-1 Un code simple RAM WRITE : Nous allons prendre l’exemple du jeu Super Mario All Stars [SVMP01] Pal et chercher le codes des vies infinies. Ces vieux jeux ont certaines particularités, dans notre cas quand a l’écran 05 vies en fait le vrai nombre de vies est de 04. Car pour le jeu quand il reste une vie a l’écran il reste en réalité 0 vies car après il y a game over. Donc l’écran m’indique que je dispose de 5 vies. Je recherche donc dans la zone 80(1) de la mémoire en 8 bits(2) (car 05 vies) puis dans Specific Value(3) je rentre pour une valeur equal(4) 04(5) et valide sur search(6). Il y a donc 28197 possibilités de codes donc je doit continuer je perds une vie. Je rentre 03(1) puis valide sur refine(2) pour continuer ma recherche et diminuer le nombre de possibilités de codes. J’obtient 11 codes possible. Je continue en perdant une vie et rentre 02(1) et valide sur refine(2) j’obtiens 2 codes. Je continue en perdant une vie et rente 01(1) et valide sur refine(2) et voila j'obtiens l'adresse du code recherché. Pour tester si c’est le bon je fais un clique droit sur l’adresse dans les résultats(1) et fait un poke(2). L’adresse s’ajoute sur le module poke(1) je rentre 9 en valeurs et je valide sur poke(2).Super le code fonctionne. Je vais donc le finaliser pour pouvoir l’utiliser de manière permanente. Je vais dans le module GCT de Gecko.NET et clic droit je créer un nouveau code et rentre sa description(1). Puis de 80462842 j’applique le codetype Wiird pour un RAM WRITE. Donc dans notre exemple 80462842 c’est une adresse en 80 et pour une valeurs en 8 bits. Le code deviens 00462842 et pour avoir 99 vies (en hexadécimal = 63) Le code final deviens 00462842 00000063(2).Ensuite je l’active en cochant la case a côté du code(3) et je valide en cliquant sur Send codes(4). Et voila j’ai tout le temps 100 vies. 2-2 Un exemple de code en Pointer Il s’agit du jeu Need for Speed(TM) ProStreet [RNPX69] Pal Nous allons rechercher le code Race Points x99999. Dans la zone 80(1) de la mémoire de la Wii avec une valeur en 32 bits(2) (00099999). - Dans le premier tournoi du jeu lors de ma première recherche mon score était de 8034 points (00001F62) puis de 15754 points (00003D8A). Je trouve l’adresse du code désiré : 80E74C7C(3). Je vais dans le module Pointer(1) de Gecko.NET je rentre l’adresse dans la case First Pointer(2) et clique sur Dump 80(3) (vu que c dans la zone 80 de la mémoire de la Wii). Et j’enregistre le premier Dump(4). - Dans un deuxième tournoi je refais la même recherche et trouve l’adresse pour le deuxième tournoi ma première recherche était de 6702 points (00001A2E) puis de 12714 points (000031AA) Je trouve l’adresse du code désiré : 80E7254C De retour dans le module Pointer(1) de Gecko.NET je rentre l’adresse Second Pointer(2) et clique sur Dump 80(3)mon dump se fini et je lance la recherche du pointer sur Search(4). Et on m’indique Use : (80FC6C3C + 1C ) in Your pointer code(5). Donc je prends le codetype Wiird des Pointers : 48000000 8XXXXXXX DE000000 80008180 14YYYYYY ZZZZZZZZ E0000000 80008000 Dans notre cas 8XXXXXXX c’est notre adresse 80FC6C3C 14YYYYYY c’est le + 1C 1400001C ZZZZZZZZ c’est la valeur désiré 0001869F(= 99 999) Donc le code finalisé est : Race Points x99999 [Crapulecorp] 48000000 80FC6C3C DE000000 80008180 1400001C 0001869F E0000000 80008000 Voila des qu’on rentre dans un tournois on a déjà le score maximum et ce sans avoir fait une seule épreuve. 2-3 Un exemple de code en ASM : Il s'agit du jeux Le Chat Potté [SSBP78] Pal. Je cherche le cheat code pour avoir le Score Maximum. Je cherche sur la zone 80(1) de la mémoire de la Wii et donc une valeur en 32 bits(2) (une valeur a 8 chiffres . 8 bits = XX. 16bits = XXXX. 32 bits = XXXXXXXX.) Ma première recherche était 000001F4 = 500 la deuxième 00000BB8 = 3000. Au bout de deux essais je trouve l'adresse du code recherché.(3) Donc vu que les adresses du code changent soit en changeant de stages ou autres je vais chercher l'adresse principale du Score. Je vais donc dans le module Breakpoint(1) et je choisi Write(2) sur mon adresse 8135E060(3) et je valide sur Set(4). Le breakpoint se déclenchera quand mon score va augmenter ou baisser. Mon score augmente et donc le breakpoint se déclenche et m'indique que l'adresse principale du score est: 806A2170 et les instructions sont Stw r0,44(r31)(5) Je vais modifier les instructions pour que des que le score augmente il soit aussi tôt au maximum : Mon adresse est toujours 806A2170, mais les instructions vont devenir : lis r0,15 charge immédiatement 15 a mon adresse 806A2170 ori r0,r0,16959 charge aussi immédiatement 16959 a mon adresse 806A2170 Stw r0,44(r31) toujours laisser les instructions d'origine. Notes : Les valeurs dans l'ASM sont en Décimal, pour mettre en Hexadécimal il faut mettre un 0x devant sa valeurs (exemple : 0x63 = 99, 0x03E7 = 999) J’utilise ASM to Wiird converter, qui va donc convertir de l’ASM en codetype wiird. Cette application est présente dans l'archive de Wiird 0.9.3 ou Gecko.NET 0.66.8. - Je rentre mon adresse 806A2170(1) - Je rentre les nouvelles instructions(2) : lis r0,15 ori r0,r0,16959 Stw r0,44(r31) - Et je clique sur la fleche droite(3) Et mon code en ASM est fin prêt.(4) If Increase Max Points [Crapulecorp] C26A2170 00000002 3C00000F 6000423F 901F002C 00000000 Et voila dés que le score augmentera il sera aussitôt au maximum. 2-4 Un autre exemple intéressant de code en ASM : Ici il s’agit du jeu Cabela's Dangerous Hunts 2011 [SCDP52] Pal. Nous allons rechercher un No Reload Code Donc je recherche dans la zone 80 et 90 de la zone mémoire de la Wii. Une valeur en 8 bits vu qu il y a 3 balles dans le chargeur. Je commence ma recherche avec la valeur 03 je tire une balle, puis je cherche avec 02, puis 01. Je trouve mon adresse je vais sur le module breakpoint. J’utilise un Write sur l'adresse et je valide sur Set. Je tire une balle et mon breakpoint se déclenche et me montre l’adresse principale des munitions. 803B3F68 et les instructions sont Stw r0,32(r30) Je vais dans le module Disassembly(1) et juste au dessus de l’adresse 803B3F68(2) il y a : 803B7F64(3) et les instructions sont subi r0,r4,1. (enlève 1 balle a chaque tir) Je vais donc modifier les instructions en addi r0,r4,0(1) pour qu’aucunes balles ne soit enlevé a chaque tir et je valide en cliquant sur Assemble(2). La valeur deviens 38040000 (addi r0,r4,0)(3), c'est une valeur en 32 bits et vu que l’adresse se situe dans la zone 80 de la mémoire de la Wii c’est un codetype RAM WRITE en 04. Le code final deviens donc : No Reload/Unlimited Ammo [Crapulecorp] 043B3F64 38040000 Et voila vous pouvez tirer sans avoir à recharger avec toutes les armes disponible dans le jeu. Conclusion J’espère avoir été le plus clair possible. Je ne peu pas tout traiter donc j'ai du me limiter au plus courant. Un grand merci a vous d'avoir lu mon premier tuto. Ce tuto ce termine et je ne peut que féliciter tous ceux qui ont permis a l'USB Gecko d'exister ainsi que Wiird 0.9.3 et Gecko.NET 0.66.8 Egalement la communauté Wiird : Merci a Nuke, dcx2, GMO, Thomas83Lin, patedj et Bully@Wiiplaza, car sans eux je n'en serai pas là. Et finalement un grand merci a la communauté Wii-info. Dernière édition le 20/07/15 à 19:26:33 par crapulecorp. Pages: 1 Messages:
Pages: 1 Ajouter commentaire: Créez un compte ou identifiez vous pour poster un commentaire. Pour votre téléphone, Jailbreak iPhone et Jailbreak iPad. - Hack PS3 - Hacker sa WiiU - Hacker PS Vita - Rage Comics, troll face - Retrouvez chaque jour des image drole sur internet grâce à LOLTube. - Meme Internet |
398 connectés (0 membre, 398 anonymes) | © 2007-2015 Attila |