ゲームボーイのポケモンの疑似乱数

疑似乱数アルゴリズム、「pokemon rng ffd3」で検索したら出てきた。

http://tasvideos.org/GameResources/GBx/PokemonGen1.html

http://wiki.pokemonspeedruns.com/index.php/Pokémon_Red/Blue/Yellow_DSum_Manipulation

乱数生成のたびにIOレジスタの一つ0xff04の値を足す(あるいは引く)というもの

ポケモン赤の疑似乱数を0に固定するLuaスクリプト書いた。攻撃が必ず急所に当たるようになったのでたぶんうまく動いている

https://gist.github.com/oupo/58b2a858360b574661a3

f:id:oupo:20190503185515p:plain

ここによると金銀のRNGも赤緑と同じみたいですね

http://tasvideos.org/4205S.html