[Résolu][Cristal] Problème Bad Clone Trick

Vous ne comprenez pas un glitch ou un code, ou n'arrivez pas à l'appliquer ? Pas de souci, venez ici, on vous aidera ! Enfin, on essaiera.
Avatar du membre
Buglitch
Webmaster
Messages : 469
Enregistré le : sam. 22 sept. 2012 21:38
Localisation : La ville de Perma en Italie
Contact :

Re: [Cristal] Problème Bad Clone Trick

Message par Buglitch » lun. 4 avr. 2016 22:14

Ah oui excuse moi !
C'est de ma faute, je me suis incrusté comme ça. Je me barre je te laisse ton Girafarig.
XeR a écrit :Buglitch, un homme, un humour, une légende.

Code : Tout sélectionner

+---------+---------+---------+---------+
|         | Normal  | Glitch  |   A.R   |
+---------+---------+---------+---------+
| Legit   |   Oui   |   Non   |   Non   |
+---------+---------+---------+---------+
| Triche  |   Non   |   Non   |   Oui   |
+---------+---------+---------+---------+
:dvo:

Avatar du membre
Krys3000
Fondateur
Messages : 1564
Enregistré le : lun. 28 mai 2012 21:02
Contact :

Re: [Cristal] Problème Bad Clone Trick

Message par Krys3000 » lun. 4 avr. 2016 22:49

Bien, alors, j'ai enfin pu me repencher sur ce glitch. Désolé, ça a été un peu long. En fait c'était tout simple, mais je n'ai plus travaillé sur le Bad Clone Trick depuis 7-8 ans, j'étais un peu rouillé :mrgreen:

Pour comprendre pourquoi ça ne marche pas, il faut bien comprendre comment le glitch fonctionne. Quand tu obtiens un oeuf, le Pokémon qui va en sortir possédera les attaques de base de son espèce, puis une attaque héritée de ses parents. Dans la mémoire du jeu, les adresses mémoires d'un Pokémon donné sont organisées comme suit :

IDH du Pokémon (ce que tu veux changer) - un autre truc - attaque 1 - attaque 2 - attaque 3 - attaque 4.

La plupart des Pokémon, comme Farfuret, ont deux attaques de base. L'attaque héritée sera donc placée en 3ème position, et il y a donc très exactement 4 adresses entre l'IDH du Pokémon à naître et l'attaque héritée dont l'IDH correspond au Pokémon voulu.

Ce que fait le Bad Clone Trick, c'est décaler les valeurs de ces adresses mémoires. Quand tu vas stocker 4 Pokémon + ton Oeuf dans la boite glitchée, puis retirer le tout, la valeur de l'attaque 3 se retrouve affectée à l'adresse de l'IDH du Pokémon à naître. Dans le cas de Farfuret transmettant Baston (IDH FB), le Pokémon obtenu est donc, comme tu le sais, Celebi, qui dispose du même IDH.

Le truc c'est que les Marcacrin n'ont qu'une seule attaque de base. Du coup, Ténacité est bien transmise, mais en deuxième position et non pas en troisième. En conséquence, quand tu réalises ton glitch, l'IDH de l'attaque 3 du Marcacrin à naître étant 00 (puisque qu'il n'a pas d'attaque 3), tu obtiens le Pokémon glitch d'IDH 00 :P

Pour corriger le problème, rien de plus simple, il suffit de décaler un peu moins. Effectue l'astuce en plaçant seulement 3 Pokémon dans la boite glitchée et ça marchera parfaitement bien ! :D
Tu peux utiliser cette variante à chaque fois que tu es dans le cas d'un Pokémon ayant une seule attaque de base - information qu'on peut facilement obtenir sur poképedia ou autre site, par exemple. Merci de nous avoir signalé cette lacune au passage, dans le cadre de la rénovation de notre section 2G nous ne manquerons pas de le préciser :)
Image
:bép: Head admin de PRAMA :dvo:
“Anti-intellectualism has been a constant thread winding its way through our political and cultural life, nurtured by the false notion that democracy means that 'my ignorance is just as good as your knowledge.'” - Isaac Asimov

Cleobel
Nouveau glitchologue
Messages : 15
Enregistré le : mer. 10 oct. 2012 18:48

Re: [Cristal] Problème Bad Clone Trick

Message par Cleobel » lun. 4 avr. 2016 23:23

Ça a parfaitement fonctionné (si ce n'est que Girafarig ne connaissait aucune attaque en sortant de l'oeuf, mais il m'a suffi d'utiliser une CT pour résoudre ce petit problème) ! Un tout grand merci pour ton aide ! :D
Modifié en dernier par Cleobel le lun. 4 avr. 2016 23:30, modifié 1 fois.

Avatar du membre
Buglitch
Webmaster
Messages : 469
Enregistré le : sam. 22 sept. 2012 21:38
Localisation : La ville de Perma en Italie
Contact :

Re: [Cristal] Problème Bad Clone Trick

Message par Buglitch » lun. 4 avr. 2016 23:26

De rien ;)
(Comment ça il parle pas de moi ?)
XeR a écrit :Buglitch, un homme, un humour, une légende.

Code : Tout sélectionner

+---------+---------+---------+---------+
|         | Normal  | Glitch  |   A.R   |
+---------+---------+---------+---------+
| Legit   |   Oui   |   Non   |   Non   |
+---------+---------+---------+---------+
| Triche  |   Non   |   Non   |   Oui   |
+---------+---------+---------+---------+
:dvo:

Avatar du membre
Krys3000
Fondateur
Messages : 1564
Enregistré le : lun. 28 mai 2012 21:02
Contact :

Re: [Cristal] Problème Bad Clone Trick

Message par Krys3000 » lun. 4 avr. 2016 23:41

Pas de souci Cleobel, on est là pour ça ;)
Image
:bép: Head admin de PRAMA :dvo:
“Anti-intellectualism has been a constant thread winding its way through our political and cultural life, nurtured by the false notion that democracy means that 'my ignorance is just as good as your knowledge.'” - Isaac Asimov

Avatar du membre
Haxel
Testeur PRAMA
Messages : 366
Enregistré le : dim. 2 déc. 2012 19:17
Contact :

Re: [Cristal] Problème Bad Clone Trick

Message par Haxel » mar. 5 avr. 2016 13:51

TU es la pour ça, nous on est la pour occuper les gens en disant des conneries le temps que tu répondes.
Pendant ce temps sur skype...
ISSOtm: question : c'est quoi le double écran noir ?
Haxel: quand les deux écrans sont noir
ISSOtm: même le touchpad ?
GG ISSO

Avatar du membre
Krys3000
Fondateur
Messages : 1564
Enregistré le : lun. 28 mai 2012 21:02
Contact :

Re: [Résolu][Cristal] Problème Bad Clone Trick

Message par Krys3000 » mar. 5 avr. 2016 18:39

Sauf quand ça devient trop technique, dans ce cas je vous laisse gérer. Tweaker, par exemple :hap:
Image
:bép: Head admin de PRAMA :dvo:
“Anti-intellectualism has been a constant thread winding its way through our political and cultural life, nurtured by the false notion that democracy means that 'my ignorance is just as good as your knowledge.'” - Isaac Asimov

Avatar du membre
Guerdi
Community manager
Messages : 567
Enregistré le : mar. 8 juil. 2014 23:09
Localisation : Quelque part dans le nuage du clavardage téléversé.
Contact :

Re: [Résolu][Cristal] Problème Bad Clone Trick

Message par Guerdi » mar. 5 avr. 2016 20:55

On voit où ça mène :noel:
Image
Ouais j'ai fais cette signature en 5 minutes.

mew3
Nouveau glitchologue
Messages : 7
Enregistré le : dim. 19 nov. 2017 12:53

Re: [Cristal] Problème Bad Clone Trick

Message par mew3 » dim. 19 nov. 2017 13:37

Krys3000 a écrit :Bien, alors, j'ai enfin pu me repencher sur ce glitch. Désolé, ça a été un peu long. En fait c'était tout simple, mais je n'ai plus travaillé sur le Bad Clone Trick depuis 7-8 ans, j'étais un peu rouillé :mrgreen:

Pour comprendre pourquoi ça ne marche pas, il faut bien comprendre comment le glitch fonctionne. Quand tu obtiens un oeuf, le Pokémon qui va en sortir possédera les attaques de base de son espèce, puis une attaque héritée de ses parents. Dans la mémoire du jeu, les adresses mémoires d'un Pokémon donné sont organisées comme suit :

IDH du Pokémon (ce que tu veux changer) - un autre truc - attaque 1 - attaque 2 - attaque 3 - attaque 4.

La plupart des Pokémon, comme Farfuret, ont deux attaques de base. L'attaque héritée sera donc placée en 3ème position, et il y a donc très exactement 4 adresses entre l'IDH du Pokémon à naître et l'attaque héritée dont l'IDH correspond au Pokémon voulu.

Ce que fait le Bad Clone Trick, c'est décaler les valeurs de ces adresses mémoires. Quand tu vas stocker 4 Pokémon + ton Oeuf dans la boite glitchée, puis retirer le tout, la valeur de l'attaque 3 se retrouve affectée à l'adresse de l'IDH du Pokémon à naître. Dans le cas de Farfuret transmettant Baston (IDH FB), le Pokémon obtenu est donc, comme tu le sais, Celebi, qui dispose du même IDH.

Le truc c'est que les Marcacrin n'ont qu'une seule attaque de base. Du coup, Ténacité est bien transmise, mais en deuxième position et non pas en troisième. En conséquence, quand tu réalises ton glitch, l'IDH de l'attaque 3 du Marcacrin à naître étant 00 (puisque qu'il n'a pas d'attaque 3), tu obtiens le Pokémon glitch d'IDH 00 :P

Pour corriger le problème, rien de plus simple, il suffit de décaler un peu moins. Effectue l'astuce en plaçant seulement 3 Pokémon dans la boite glitchée et ça marchera parfaitement bien ! :D
Tu peux utiliser cette variante à chaque fois que tu es dans le cas d'un Pokémon ayant une seule attaque de base - information qu'on peut facilement obtenir sur poképedia ou autre site, par exemple. Merci de nous avoir signalé cette lacune au passage, dans le cadre de la rénovation de notre section 2G nous ne manquerons pas de le préciser :)
Bonjour, je me permets de remonter ce topic car j'ai un problème similaire.

J'ai effectué le glitch dans ma version Cristal et tout s'est bien passé, et j'ai obtenu Célébi. Donc déjà un énorme merci pour votre travail, ça m'a permis de compléter un rêve d'enfant !

Maintenant j'essaie de faire le même glitch avec un oeuf de Corayon qui doit éclore avec Voile miroir en 2e attaque, pour obtenir un Raikou (j'ai désespéré de le rencontrer naturellement).
Mais il y a un problème : si je transfère seulement trois pokémon derrière l'oeuf, alors après quelques centaines de pas où l'oeuf était en situation "il fait du bruit il va éclore" il passe à "cet oeuf va certainement mettre beaucoup de temps à éclore" ! J'hésite à faire 20 480 pas (le nombre de pas pour éclore Raikou en général) pour vérifier si j'obtiens bien un Raikou, et je me demande s'il y a une explication !

Avant de donner plus de détails, une question : que voulez vous dire par « retirer le tout » (en gras dans votre post ci dessus) ? Faut-il retirer des pokémon du PC avant de faire éclore l’oeuf corrompu ? Une telle étape ne semble pas listée sur la page http://www.prama-initiative.com/index.p ... lone-trick

Quelques détails sur ce qu'il m'est arrivé exactement, ça peut être pertinent pour expliquer le cas présent : (DPSL signifie « déposer PKMN sans lettre »)

Dans les deux glitches :

- Je suis sur une version cartouche réelle de Cristal.
- J'ai utilisé comme Bad Clone un clone de l'Onix "Rocky" donné par OLIVE dans le jeu à Mauville. J'ai fait ce Bad Clone via la Game Boy Tower de Pokemon Stadium 2, il apparaissait bien comme femelle niv. 0 dans le PC, et après l’avoir donné puis repris à la pension il était bien devenu le pokémon glitch 000.
- J’ai utilisé comme 6 pokémon inutiles (les 5 à mettre derrière 000, et le sixième à DPSL devant 000) des clones parfaits du même Onix initial « Rocky », qui vérifient les conditions énoncées sur la page http://www.prama-initiative.com/index.p ... lone-trick

Dans le glitche Célébi (réussi) :

- J’ai utilisé un œuf de Farfuret qui devait éclore avec Baston en troisième attaque (de parents un Queulorior mâle avec juste Baston et un Farfuret femelle avec juste Baston)
- J’ai suivi les instructions : avoir une équipe contenant Bad Clone et 5 Sacrifices, donner/reprendre Bad Clone à la pension, mettre 000 en haut de l’équipe, DPSL un Sacrifice au dessus de 000, donner 000 à la pension, stocker les 2 premiers pokés, DPSL l’oeuf en haut de l’équipe, stocker les 4 pokés après l’oeuf
- A la fin j’avais un œuf sans lettre dans son nom (4 lettres initialement « OEUF », et 4 stockages ont chacun supprimé une lettre), qui a éclos en Célébi après environ autant de pas que le Farfuret initial devait éclore.
- Le célébi à éclos niveau 0 avec Danseflamme et Verrouillage, je lui ai donné un super bonbon qui l'a mis niveau 1 et ses 4 attaques naturelles ont effacé danseflamme et verrouillage, puis je l'ai mis en sécurité dans Pokémon Stadium 2 où il est devenu niveau 100 automatiquement.

Dans le glitche Raikou (échec) :

- J’ai utilisé un œuf de Corayon qui devait éclore avec Voile Miroir en DEUXIEME attaque (de parents un Corayon mâle et un femelle avec juste Voile Miroir)
- J’ai encore suivi les instructions (avec un nouveau bad clone, car j’avais naivement relaché 000 après le glitch de célébi sans me douter qu’il pourrait resservir) :
avoir une équipe contenant Bad Clone et 5 Sacrifices, donner/reprendre Bad Clone à la pension, mettre 000 en haut de l’équipe, DPSL un Sacrifice au dessus de 000, donner 000 à la pension, stocker les 2 premiers pokés, DPSL l’oeuf en haut de l’équipe, stocker les TROIS pokés après l’oeuf.
- A ce moment il reste dans mon équipe l’oeuf ayant comme nom « F » en première position et un pokémon corrompu (niv.0, gelé, d’autres bizarreries) en seconde position.
- L’oeuf corrompu était initialement de statut « fait du bruit » comme l’oeuf de Corayon initial, mais après plusieurs centaines de pas, le statut passe à « cet œuf va certainement mettre du temps à éclore ».

Je ne comprends pas pourquoi ça a marché pour le cas Marcacrin/Ténacité/Girafarig de Cleobel mais pas pour ce cas Corayon/Voile Miroir/Raikou.
Est-ce normal que le compte de pas restants pour faire éclore l’oeuf « resette » à sa valeur maximale de 20480 pas ?
(Peut-être que cela s’est aussi produit pour Cleobel mais que comme l’oeuf de Marcacrin ne prend que 5396 pas vous ne l’aviez pas remarqué ?)

Ah aussi, si je stocke 4 pokémon après l’oeuf, l’oeuf de nom « » éclot rapidement en le pokémon 000, comme prévu vu que Corayon n’avait pas de troisième attaque. Ca marche aussi si je relâche ou donne à la pension plutôt que stocker dans le PC, du moment que je fais ça pour les quatre pokés après l’oeuf.

Finalement en désespoir de cause j’ai utilisé la méthode suivante : depuis la configuration « Oeuf propre suivi de 4 pokés corrompus » j’ai DPSL l’oeuf dans une boite, puis DPSL le premier des 4 corrompus (ce qui a supprimé une lettre des noms de chacun des trois restants), puis DPSL à nouveau l’oeuf au sommet de l’équipe. C’est l’état actuel de ma sauvegarde, et si je stocke les trois pokés non-oeufs je me retrouve avec un œuf « ultra long à éclore » comme ci-dessus.

Enfin, l’oeuf semble bien contenir un Raikou, car en rencontrant par accident un pokémon sauvage dans les hautes herbes, l’oeuf « F » est arrivé en combat comme un Raikou glitché niveau 0 (j’ai éteint la console juste après).


Qu'en pensez vous ? Est-ce inévitable que le compteur de pas "resette" dans le cas d'un glitch "deuxième attaque", alors qu'il ne le faisait pas pour le glitch "troisième attaque" ?
Est-ce important que le nom de l'oeuf soit "F" et non pas " " ?



Toute aide est bienvenue, merci d’avance !

Avatar du membre
Krys3000
Fondateur
Messages : 1564
Enregistré le : lun. 28 mai 2012 21:02
Contact :

Re: [Résolu][Cristal] Problème Bad Clone Trick

Message par Krys3000 » dim. 19 nov. 2017 20:09

Salut, bienvenue sur PRAMA et félicitations pour Célébi !

Tout d'abord, il est normal qu'il y ait des différences fondamentales entre mon échange avec Cleobel et l'astuce actuelle proposée sur le site. A l'époque, le Bad Clone Trick ne se faisait pas du tout comme on le fait aujourd'hui :)

Pour répondre à ta question ensuite, malheureusement, c'est normal, en effet. Encore une fois, on va trouver la réponse dans la mémoire du jeu. Voici la zone de mémoire correspondant aux données du Pokémon 1.

Adresses -- Donnée contrôlée

DCDF -- Espèce
DCE0 -- Objet tenu
DCE1 -- Capacité 1
DCE2 -- Capacité 2
DCE3 -- Capacité 3
DCE4 -- Capacité 4
DCE5-DCE6 -- Numéro ID
DCE7-DCE9 -- Experience
DCEA-DCF3 -- Stat Exp. (PV, Attaque, Défense, Vitesse puis Spécial)
DCF4-DCF5 -- DV (Attaque/Défense puis Vitesse/Spécial)
DCF6-DCF9 -- PP des 4 attaques
DCFA -- Bonheur/Cycles avant éclosion
DCFB -- Compteur du Pokérus
DCFC-DCFD -- Données de capture
DCFE -- Niveau
DCFF -- Statut

Comme je le disais à Cleobel et comme on l'explique sur la page, le Bad Clone Trick consiste à décaler cette section de la mémoire vers le haut, afin de faire rentrer dans l'adresse de l'espèce du Pokémon, DCDF, la valeur inscrite dans DCE2 ou DCE3 (deuxième ou troisième attaque). Cela se fait maintenant en stockant 3 ou 4 Pokémon, pour décaler de 3 ou 4 adresses, selon l'attaque qui doit donner sa valeur à DCDF.

Maintenant, réfléchissons aux conséquences sur le reste des données du Pokémon en question. J'ai mis en gras l'adresse DCFA qui contrôle à la fois le Bonheur (pour un Pokémon) et les cycles avant éclosion (pour un Oeuf). La valeur qui va rentrer dans cette adresse si le glitch est effectué en décalant de 4 adresses est donc le niveau, qui est toujours, pour un oeuf, 5. Cela signifie que l'oeuf va éclore dans 5 cycles, soit 5*256 = 1280 pas.

Mais par contre, si le décalage n'est que de trois adresses, comme c'est le cas si tu cherches à placer la deuxième attaque dans DCDF, alors c'est la deuxième adresse contrôlant les données de capture qui va se retrouver dans DCFA... Ces données sont des traces de l'endroit où tu as capturé le Pokémon, ce qui permet à la voyante d'Irisia de te dire d'où il vient. Pour la petite histoire, ces adresses existaient déjà dans O/A bien que le personnage de la voyante n'y soit pas. Il s'agit probablement d'une fonctionnalité abandonnée à l'époque et intégrée finalement à Cristal, puisque aucune donnée n'est inscrite dans ces adresses dans O/A au moment de la capture.

Pour un oeuf, les données de capture sont... 00 00. Tu te dis peut-être que mettre un 0 comme nombre de cycles restants avant éclosion devrait provoquer son éclosion instantanée ? Ce serait facile d'accabler Game Freak mais il se trouve qu'ils ont manifestement simplement codé le jeu pour qu'un oeuf éclose quand DCFA est réduit de 1 et que le résultat est 00, sans penser qu'il était possible d'y inscrire 00 sans jamais passer par 01. Du coup, au bout de 256 pas pour lesquels "l’œuf va bientôt éclore" puisqu'il reste moins de 6 cycles, le jeu fait 0-1, et du coup underflow pour obtenir la plus forte valeur possible, FF (255 en hexadécimal). Et comme FF ne vaut pas 00, pas d'éclosion.

Tu as bien compris : ce n'est ni 1280 pas ni 20480 pas que tu vas devoir faire pour que Raikou éclose... mais bien 256*256 = 65536 ! :(

J'espère t'avoir aidé en tout cas, et bon courage avec ton œuf !
Image
:bép: Head admin de PRAMA :dvo:
“Anti-intellectualism has been a constant thread winding its way through our political and cultural life, nurtured by the false notion that democracy means that 'my ignorance is just as good as your knowledge.'” - Isaac Asimov

Répondre