Experience Underflow Glitch
Bienvenue dans un monde parallèle où la logique de la montée de niveau n'a plus de sens. Un monde où on passe du niveau 1 au niveau 100 en un point d'expérience, où on peut monter jusqu'au niveau 255 puis retomber au niveau 0... Wait what ?
Et bah oui, je vais vous expliquer comment ceci est possible.
En effet, l'Old Man Glitch permet de rencontrer et de capturer des Pokémon de niveau supérieur à 100. Et bien il est possible de pousser ce niveau jusqu'à 255 en lui faisant bouffer une masse de Super Bonbons (ça ne marche pas avec le gain d'expérience, ça le fera repasser à 100 de cette manière).
Sauf que... Refiler un Super Bonbon à un Pok' 255 le fait retomber à... ZEEEEROOOOO ! Et oui, en informatique, on code en bits (en puissances de 2), et le niveau est codé sur 8 bits (256 donc). Sauf qu'il s'agit d'entiers non signés, donc positifs ou nul, et à ce moment-là, 256 = 0, et c'est tout à fait logique ! Et du coup, on peut appliquer pour certains monstres le glitch suivant qui est... *roulement de tambour factice et inutile si vous avez des yeux*
Des conditions ? Bien sûr !
- Une version Rouge, Verte, Bleue, Jaune, Or, Argent ou Cristal
- Un Action Replay, le Ditto Glitch ou le Leveling past 100 Glitch pour avoir une bestiole niveau 0 ou 1...
- Mais pas n'importe quelle bestiole ! Il faut que celle-ci fasse partie du groupe d'expérience de croissance Parabolique (par famille: la totalité des starters, Abra, Caratroc, Célébi, Chétiflor , Cornèbre, Fantominus, Farfuret, Granivol, Machoc, Mew, Mystherbe, Nidoran mâle et femelle, Ptitard, Racaillou, Roucool, Scorplane, Tournegrain, Wattouat)
Démarrons par les conséquences du glitch, j'aime bien faire les choses à l'envers.
C'est très simple: si l'un de ces Pok' au niveau 0 ou 1 gagne moins de 140 ou 54 points d'expérience (respectivement), il passe directement au niveau 100, comme ça, pouf !
Cool, non ? Certes, mais la vraie question est... Pourquoi ? Et c'est d'ailleurs pour ça que j'en parle, sinon ça n'aurait aucun sens et j'aurai mon cul ailleurs que sur ma chaise devant mon bureau et... Pardon, je m'égare. Parlons-en, des causes !
Tout vient de la formule de base de la courbe parabolique qui est la suivante :
Si on fait le calcul au niveau 0 et 1, on tombe sur une expérience qui est de -140 et -54. En théorie. Car le jeu n'utilise que des entiers non signés pour l'expérience (donc positifs et 0). De plus, l'expérience est codée sur 3 octets de données (24 bits donc), ce qui donne une valeur pouvant aller de 0 à 16 777 216.
Du coup, que deviennent -140 et -54 ? Et bien dans le monde informatique, une telle donnée prend la forme d'une boucle, où on peut dire 0 – 1 = 16 777 216, et c'est toujours logique!
Par conséquent, une valeur de -140 correspond à 16 777 076 et une valeur de -54 correspond à 16 777 162.
Oui oui, une bestiole à la courbe parabolique de niveau 0 ou 1 aura presque 17 millions de points d'expérience !
Au final, si ce monstre obtient moins de 54 points d'expérience (moins de 140 pour un niveau nul), le compteur d'expérience retiendra une valeur entre 16 777 076 pour 0 ou 16 777 162 pour 1 et 16 777 216, soit une valeur BEAUCOUP plus haute que les 1 059 860 points requis, provoquant la montée instantanée au niveau 100 (entraînant un autre glitch en 1G mais on verra ça plus tard).
Et si on XP au-dessus du montant que j'ai précisé ? Et bien la boucle est bouclée, retour à la normale, une XP positive non buguée, il s'est rien passé et c'était inutile de faire tout ce bordel.
Et ceci est la SEULE raison pour laquelle il n'existe pas de Pokémon de niveau inférieur à 2 en 1G et 2G (en 3G aussi mais ils ont corrigé le souci) et que les Œufs de la 2G éclosent au niveau 5.
Voilà, ça, c'est fait. Je vous invite à utiliser ce glitch à vos risques et périls pendant que je vais me siroter une bouteille de Coca. Vous comprenez, je vais pas vous dire que je bois... Ah merde.
Par Daizaku