Fermer2
dd-Le 31/03/2012 à 19:27
Salut

Y'a un truc que j'ai toujours voulu apprendre à faire : modifier une rom de jeu pour tricher, désactiver l'instruction qui désincrémente le nombre de vies ou de points de vie.

Y'en a ici qui savent faire ça et qui pourraient m'expliquer ? Ou qui connaissent des tutos ?
Les seuls info que je trouve sont pour modifier le texte ou les éléments graphiques, jamais le code.


Je devine comment faire : utiliser un debugger qui va montrer le code ASM du jeu, puis trouver à quel endroit ça retire 1 au nombre de vies, noter l'emplacement de cette instruction, ouvrir la rom dans un éditeur hexadecimal et remplacer l'instruction par un NOP. C'est ça n'est-ce pas ?


Donc voilà ce que j'ai fait :

J'ai trouvé un ému megadrive doté d'un debugger : Gens. J'ai donc lancé Bart vs Space Mutants, j'ai mis Bart en collision avec un ennemi, et j'ai lancé le debugger avant que ça retire un point de vie.

J'ai cherché comment on fait une soustraction en ASM 68000 et apparemment ce que je cherche est un SBCD ou un SUB. (Je ne connais que très peu l'ASM et encore moins l'ASM 68000.)

Je sais que le jeu va tester s'il y a une collision entre la hitbox du joueur et celle d'un ennemi, et s'il la trouve, retirer le point de vie.

J'aurai aimé qu'il y ait une fonction "pas à pas", qui laisserait le processeur executer chaque instruction une par une, ainsi j'aurai pu surveiller en prenant des screenshots, afin de trouver quelle instuction retire le point de vie. Mais pas de "pas à pas", et l'écran du debugger remplace celui du jeu donc je ne peux pas bien surveiller les points de vie...
Bref, ce n'est donc pas comme ça que je dois m'y prendre...


Quelqu'un peut m'éclairer svp ?