Forum Pokémon Elément


Pokémon-Elément est un forum pokémon dédié à la stratégie, au shinyhunting et aux soluces. Ce site se démarque par ses innombrables astuces et outils qu'il propose. Vous trouverez également un RPG, des concours et une communauté chaleureuse.
 




Vous retrouverez sur cette page toutes les soluces et astuces dont le forum dispose, sur l'univers des jeux pokémon, toutes générations confondues
Vous aimez découvrir des astuces en tout genre sur Pokémon ? Découvrez sur cette page plusieurs anecdotes que vous ne connaissez peut-être pas
Le forum regroupe diverses pages intéressantes. Safaris des membres, concours du forum, évents, ... Retrouvez ici un récapitulatif de toutes les pages spéciales
Pokémon-Elément a créé pour vous un compteur de shinyhunting performant. Il vous indiquera les chances de tomber sur un shiny



Le Deal du moment : -20%
(Adhérents Fnac) Enceinte Bluetooth Marshall ...
Voir le deal
199.99 €

Partagez
 

 Pokémon shinys : comment sont-ils générés ?

Nicolas
Fondateur de Pokémon-Elément
Nicolas

Messages : 4149
Poké-points : 13547
Age : 25

Personnage RP
Equipe pokémon:
Objets:

Profil

Pokémon shinys : comment sont-ils générés ? Empty
Sam 26 Mar - 11:16

Bonjour et bienvenue dans ce sujet consacré aux mécanismes des jeux pokémon, notamment la façon dont est généré un pokémon chromatique.

Nous allons voir qu'est-ce que le PID, l'ID, l'ID secret, le RNG, nous verrons également d'où vient le 1/8192 et nous verrons des exemples plus concrets sur la génération d'un pokémon shiny.

Sans plus attendre, c'est parti !

1. Qu'est-ce que le PID ? (Pokemon IDentification number)

Pokémon shinys : comment sont-ils générés ? Pid10
Des PID de Pokémon dans le logiciel 3rd Generation Time Finder

Le PID est un code du jeu codé sur 32 bits qui permet de définir certaines caractéristiques des pokémon, notamment :

• Ses IV
• Sa nature
• Son caractère shiny ou non
• Son talent


Et de manière un peu plus optionnel :

• L'évolution de Chenipotte
• Les tâches de Spinda
• Les lettres de Zarbi


Il faut savoir que le PID est codé en hexadécimal.

2. L'hexadécimal

Pokémon shinys : comment sont-ils générés ? Codeco10
Les codes couleurs qui apparaissent sont codés en hexadécimal

Il est nécessaire d'en parler un minimum, nous en aurons besoin par la suite pour les explications.

L'hexadécimal est en quelque sorte du binaire simplifié. Le binaire n'étant pas très compréhensible pour un humain, l'hexadécimal permet de le rendre plus compréhensible en attribuant un caractère à un groupe de 4 bits.

L'hexadécimal possède 16 valeurs différentes : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A (10), B (11), C (12), D (13), E (14), F (15).

A titre d'exemple, (et avec quelque chose qui vous parle), les couleurs sont codés en hexadécimales. Ainsi, quand vous tapez par exemple #9900FA, c'est de l'hexadécimal.

3. L'ID et l'ID secret

Pokémon shinys : comment sont-ils générés ? Pkmr10
L'ID appartient au pokémon, l'ID secret au dresseur

L'ID, c'est un numéro qui correspond à l'un de vos pokémon, c'est un numéro qui lui est attribué. Par exemple, quand vous allez à la loterie pokémon, quel que soit le jeu, le jeu va générer un ID aléatoirement et va regarder si l'un de vos pokémon possède cet ID, si oui, vous gagnez.

L'ID secret est apparu à la troisième génération. Il sert notamment à différencer les pokémon de deux dresseurs ayant exactement le même nom, le même sexe et le même ID.

Par contre attention, l'ID est propre à chaque pokémon, c'est à dire que chaque pokémon a son ID. En ce qui concerne l'ID secret, chaque pokémon n'a pas un ID secret, cet ID secret est généré au début du jeu, il vous appartient, il correspond à votre dresseur et est le même pour toute la durée de la partie.

Plus simplement, on peut dire que chaque pokémon à son ID et que le dresseur à son ID secret.

4. Comment est généré le pokémon shiny ?

Pokémon shinys : comment sont-ils générés ? Lugias10
Le shiny, le shiny, le shiny !

Il faut savoir déjà que le caractère shiny du pokémon est généré au moment où vous le rencontrez. Mais qu'est-ce qu'il se passe exactement, c'est ce que nous allons voir.

Tout d'abord, vous rencontrez un pokémon, son PID est généré. Comme énoncé plus haut, le PID est codé sur 32 bits, il est donc compris entre 0 et 4 294 967 295.

Ce nombre est ensuite divisé en deux parties de 16 bits. Après cela, l'ID du pokémon et votre ID secret seront convertis en hexadécimal, eux aussi.

Il y a donc quatre codes hexadécimaux. (les deux PID, car je le rappelle, ils ont été divisés en deux, + l'ID du pokémon + votre ID secret)

Le jeu va ensuite faire une fonction OU exclusif entre ces quatre codes et obtenir un résultat en hexadécimal. On ne s'intéressera pas en détail sur la fonction OU exclusif mais je vais vous en dire deux mots. La fonction OU exclusif est une fonction logique, c'est une équation, elle retourne vrai si deux valeurs ou groupes de valeurs sont distinctes. En l'occurrence, dans cet exemple là, la fonction va combiner les 4 codes hexadécimaux et n'en retourner qu'un.

Donc là, nous avons le résultat de l'opération en hexadécimal. Ce résultat est fatalement compris entre 0 et 65 536 car il est en hexadécimal et en hexa, il n'y a que 65 536 possibilités. (2^16 combinaisons)

C'est à ce moment où le jeu va générer un pokémon shiny ou non. Si le résultat est strictement inférieur à 8, donc compris entre 0 et 7, alors votre pokémon est chromatique.
Vous avez donc 8 chances sur 65 536 d'avoir un pokémon chromatique, et 8/65536 se simplifie en 1/8192. C'est donc là que viens le 1/8192.

En sixième génération, la génération est exactement la même, à la différence près que votre pokémon est chromatique si le résultat de l'opération obtenu est strictement inférieur à 16, donc compris entre 0 et 15. Ce qui correspond à du 16/65536 soit du 1/4096.

C'est donc comme ça que sont générés les pokémon chromatiques.

5. Le RNG, qu'est ce que c'est ?

Pokémon shinys : comment sont-ils générés ? Safari10
Safari de Heartgold, la RNG vous fera rager quand un pokémon prendra la fuite !

Le RNG (Random Number Generation) est un système qui permet de définir des nombres aléatoires. Dans Pokémon, il permet notamment de définir la capture d'un pokémon avec une ball ou non, ses statistiques et la précision d'une attaque.

6. La génération d'un oeuf shiny

Pokémon shinys : comment sont-ils générés ? Ynyx
Et je marche, marche, marche pour faire éclore mes oeufs !

Nous allons voir maintenant quelques petites informations sur la génération d'un oeuf shiny.
Tout d'abord, il faut savoir que le caractère shiny d'un oeuf est défini lorsque vous récupérez l'oeuf et non pas quand il éclos. Donc si vous sauvegardez, que vous faites éclore votre oeuf, qu'il n'est pas shiny et que vous faites un reset, il ne sera jamais shiny car son caractère chromatique est généré au moment de l'obtention.

7. Des exemples plus concrets sur les codes hexadécimaux

Pokémon shinys : comment sont-ils générés ? Spinda10
Calcul du caractère shiny, des tâches, du sexe, de la nature, ...

Nous allons voir quelques cas plus concret sur les codes hexadécimaux, toujours dans l'optique du sujet, sur les pokémon shinys.

Un PID est codé sur 32 bits, donc ça ressemble à ça :

00000000 00000000 00000000 00000000

Bon normalement, les zéros sont remplacés par des valeurs hexadécimales. (comprises entre 0 et F, 0 et F inclus)

Pour information, un groupe de 8 bits = 1 octet. Il y a donc quatre octets dans le PID.

Pour la génération du pokémon chromatique, comme expliqué plus haut, le PID se divise en deux. Il y a donc deux octets d'un coté et deux de l'autre. Une fonction OU exclusif est exécutée entre ces deux morceaux, nous avons donc un premier résultat, une fonction OU exclusif est ensuite exécutée entre l'ID et l'ID secret, nous avons un deuxième résultat et une troisième et dernière fonction OU exclusif est exécutée entre ces deux résultats. (entre le résultat du OU exclusif du PID et le résultat du OU exclusif de l'ID) C'est à ce moment là qu'est généré le résultat final hexadécimal qui défini si le pokémon est shiny ou non.

A titre d'information, les bits de poids faibles (l'octet tout à droite) définiront le sexe de votre pokémon. Sur un octet (donc 8 bits), il y a 256 combinaisons possibles. (de 0 à 255)
Cet octet est ensuite converti en décimal et en fonction du résultat, votre pokémon est mâle ou femelle. (0 donnera un pokémon mâle à 100%, 254 donnera un pokémon femelle à 100%, 255 donnera un pokémon asexué, 127 donnera un pokémon mâle ou femelle à 50% de chance, et un nombre supérieur à 127 donnera plus de chances à un pokémon d'être femelle, et un nombre inférieur à 127 donnera plus de chances à un pokémon d'être mâle)

La nature sera également définie grâce au PID. Pour cela, il sera divisé par 25 et en fonction du nombre obtenu, une nature sera attribuée à votre pokémon.

Ce sujet est à présent terminé, j'espère qu'il vous aura plu et que vous aurez appris des choses ! Pokémon shinys : comment sont-ils générés ? 2921623092

Mes sources : Bulbapedia, Poképédia, Smogon
MewTwoGMR
Dresseur d'élite
MewTwoGMR

Messages : 1263
Poké-points : 7639

Profil

Pokémon shinys : comment sont-ils générés ? Empty
Dim 27 Mar - 17:57

C'est vraiment sympa un petit article technique avec pour unique but d'assouvir la curiosité comme ça ! :O
Je ne pense pas que ce soit le genre de choses qu'on retrouve sur tous les forums Pokémon...

J'ai quand même eu un peu de mal au début (ne connaissant pas vraiment l'héxadécimal, et surtout ne comprenant pas en quoi les codes couleurs en étaient... puis j'ai réalisé qu'en fait ils étaient "CODÉS" en héxadécimal xD). Du coup je ne comprenais pas non plus comment étaient 'remplis' les bits après les xor, qui dans ma tête renvoyaient à une intersection de 2 ensembles de 6 éléments pour donner 16 éléments (donc un gros wtf? en quelque sorte) ... :O
Bref, j'ai relu 2-3 fois, et tout est devenu clair !

Voilà, c'est du beau boulot quoi ! :3

Petite erreur, btw :
Citation :
qu'est généré le résultat final hexadécimal qui défini
==> qui définit
Page 1 sur 1
 Sujets similaires
-
» SCAC #22 : C'est l'été, les shinys sont de sortis !
» Mes shinys Pokémon X
» Concours : Pokémon mystère ! Les devinettes sont lancées !
» SCAC #16 : A la recherche de pokémon shinys
» [Astuce XY] - Obtenir facilement des pokémon shinys !

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Pokémon Elément  :: Stratégie & Shinyhunting :: Shinyhunting :: La chasse en générale-
Sauter vers: