今回からは連続して色違いポケモンについて話したいと思います。第1回目はどうすれば色違いポケモンを出すことができるのかにスポットを当ててみました。
野生のポケモンに出くわした時に稀に通常とは違う体色のポケモンに出くわすことがあります。この際、キラキラと光る演出があることから色違いポケモンのことを光るポケモンなんて言われています。ちなみに、ピンクのパチリス
や銀色のメタグロス
もその一例といえますね。
ではどの条件の時に色違いの個体になるんでしょうか個々のポケモンには4バイトの性格値があって以下の条件の時に色違いとなるんです。
((ID上位 xor ID下位) xor 性格値上位) xor 性格値下位 ≦ 7
要するにID上位とID下位をxorし、さらに性格値上位をxorし、性格値下位をxorしたものが2進数で0111以下ならその個体は色違いというわけ。 ちなみに、xorは排他的論理和のことでビットごとに比較して異なっていればそのビットの排他的論理和は1となります。たとえば、AがF0でBがFAの時、AxorBは次のようになりますね。
A= 1111 0000
B= 1111 1010
AxorB= 0000 1010
確かにIDってプレイヤーを識別する番号で00000~65535の範囲で割り当てられているけど…。IDそのものは4バイトの値となっており、トレーナーカードに表示されているのはそのうちの下位2バイトというわけ。つまり、上位2バイトは裏IDで通常では見ることができません。したがって、色違いのポケモンになる条件は次のように言い換えることができるというわけ。
((裏ID xor ID) xor 性格値上位) xor 性格値下位 ≦ 7このことから乱数調整で色違いポケモンを出すにはIDのほかに裏IDを知っておく必要があるんですね。ということで、どのようにID調整していくかについては次回ということで…。