Discuss SFMT random number generator in Sun&Moon.
In Sun&Moon, when decide a wild pokemon's IVs, PID, Encryption Constant, etc, it is SFMT (SIMD-oriented Fast Mersenne Twister; MEXP=19937) that be used.
And the initial seed is a 32-bit value, used by sfmt_init_gen_rand().
Moreover, in the QR scanner, when the message "Searching for a QR code..." is showed, "sfmt_genrand_uint64(&sfmt) % 17" is used to decide the hands of clock.
So, you can identify the seed by brute force of 2^32 seeds. I tried it in practice, and succeeded.
Here is a picture of the hands of clock.
In Sun&Moon, when decide a wild pokemon's IVs, PID, Encryption Constant, etc, it is SFMT (SIMD-oriented Fast Mersenne Twister; MEXP=19937) that be used.
And the initial seed is a 32-bit value, used by sfmt_init_gen_rand().
Moreover, in the QR scanner, when the message "Searching for a QR code..." is showed, "sfmt_genrand_uint64(&sfmt) % 17" is used to decide the hands of clock.
So, you can identify the seed by brute force of 2^32 seeds. I tried it in practice, and succeeded.
Here is a picture of the hands of clock.
Last edited by a moderator: