宝可梦心金魂银ID乱数(模拟器)
大道八十块
2024年09月12日 16:09
收录于文集
共5篇

准备工作

  • 模拟器desmume

  • 游戏文件

  • 相应游戏的LUA脚本-https://wwyw.lanzouq.com/iqe1K29uadhc

  • PokeFinder-https://github.com/Admiral-Fish/PokeFinder

  • runasdate用来强行锁定模拟器时间-https://www.nirsoft.net/utils/run_as_date.html

具体步骤

ID乱数相对来说比较简单,尤其是在使用了runasdate锁定时间之后。下面开始正式的乱数工作。 首先我们打开PokeFinder,并且选择G4-IDs。

在打开的页面中,首先在RNG Info这里填入想要的年份,可以任意,不是必须当前的年份,以及最大最小的延迟。  

一般来讲,最小延迟不需要改变。  

同时,基本上你想要的TID(范围是0~65535)在默认范围内都能找到,因此也不需要改变最大延迟。  

但是考虑可能会同时想要一个特殊的SID,因此可以适当改变最大延迟。  

需要注意的是,越苛刻的筛选条件,往往同时代表越长的等待时间,需要做好取舍。  

之后在Filters这个框中筛选自己喜欢的ID。这里就以筛选ID为0的情况来举例。

在填完所有的信息之后,点击RNG Info中的search

之后在生成的结果中,找到自己喜欢的组合,将Seed复制到剪贴板。

之后在Gen 4 Tools中打开Seed to Time

并且选择hgss。然后将刚刚复制的Seed填入,再填入刚刚设置的年份,再点击Generate生成。同样的,选择自己喜欢的时间,记下来。

打开runasdate。先点击Browse,找到模拟器的位置,打开。然后再将时间改为你所选的时间。最后点击Run,此时模拟器就会启动。

模拟器打开后,先后打开游戏以及LUA脚本,以方便查看Delay和Seed。

正常推进到取名字的环节,在取好名字之后,不要直接结束,使用模拟的即时存档功能,存一个档!!!存完档之后再按start进行下一步。

之后继续推进到博士说再见吧!这里,再次存档,然后等待。  

在等待过程中可以多存几个档,这样后面调整起来比较方便。    

请注意!如果你没有提前通读全篇,对于后面的过程有所了解,建议先暂停游戏,看完后面的步骤之后再操作,可以节省很多的时间。

在我们停止的这个时刻,是玩家最后能操作游戏的时刻,但是却不是游戏判定生成ID的时刻,因此我们需要提前一定的时间。  

之前我们所选的Delay是5009,我们先提前70,也就是在4939的时候正式进入游戏。  

在Delay快到达的时候,再次暂停游戏,然后按键盘上的N一点一点靠近,直到刚好是我们需要的4939。  

此时按住A(注意是模拟器的A,具体键盘/手柄按那个键,根据你自己的设置去按)不松,然后再使游戏继续运行。在插件显示的Delay动了之后,就可以松开A了。

等到画面进入到游戏,可以看到插件也会显示目前的TID和SID,大概率是对不上的。  

根据插件显示可以看到,我们目前的实际TID是4413。下面做反查。  

打开刚刚生成seed的页面,在右边的Seed Filter这里,填入实际的TID,以及刚刚选择的时间,然后点击`Find`,此时会生成几组数据,通过对比我们游戏与生成的的TID和SID,找到我们实际上击中的Delay。  

可以看到,我们实际上撞到了5098这个Dealy,也就是晚了5098-5009=89,因此我们实际上做第8步的时候,要卡的是5009-89-70=4850这个Delay。

读取之前的即时存档,等待推进到4850这个Delay附近,暂停,按键盘上的N一点一点推进,直到恰好是4850,同样的按住A的同时继续游戏,直到Dealy发生变动。

此时,你可能会遇到两种情况,一种是成功击中的对应的Seed,获得了你想要的TID。那么恭喜你,可以下楼找妈妈对话完在游戏内存档,然后继续你的旅途了。  

但是也可能会出现生成的TID并不是你想要的TID。  

不要慌,其实问题不大。  

其实击中Dealy时,是有奇偶之分的。也就是说你只能击中奇数或者偶数。因此我们明明想要击中的是5009,却击中了5010。

那么该如何改变奇偶呢?  

其实改变奇偶的方法有好几个,但是这里只介绍一个好控制的方法  

在前面我有强调过,要在取好名字的时候存一次档,然后再按下start继续游戏。  

当你发现你能击中的帧Delay和你想要的Delay恰好就是奇偶的差别时,读取到取好名字的那个即时存档,然后按一下select键(这个和start一样,也是模拟器按键,实际上你的键盘/手柄按哪个键根据你自己的设置来),这时取名选字的页面应该会变化,这样就完成了一次奇偶转换。  

之后再次按start,继续重复之前的步骤,等到4850的时候按住A然后继续游戏,这时你会发现你已经获得了你想要的TID和SID。

在我实际反复的操作中发现,当你按住A然后继续游戏,到你生成ID,这个过程中Delay实际上走了160,也就是说,实际上你在确定好Delay后,只需要直接运算5009-160=4849,即在4849这个时候继续游戏。然后再根据生成结果调整奇偶就行了。