内容接前文:
openAI的仿真环境Gym Retro的Game Integration——新游戏融合(将retro中没有融合的ROM游戏加入其中)
前文大致简单的介绍了gym retro 库对新游戏融合的一些基础知识,本博文以例子作为示范。
将gym retro库中的Airstriker-Genesis游戏的rom文件和sha文件拷贝出来放在新建文件夹中,使用UI Integration工具load game 加载该游戏的rom文件。
手动跳过开始画面,进入游戏的正式画面:
根据上图可以发现在游戏中有4个变量是显示在屏幕上的:
lives=0
score=0
hi=0
level=0
首先,我们为lives设定变量:
在变量搜索中设置lives=3,搜索:
得到搜索结果:
运行游戏,使屏幕上的lives变量变化为2,暂停后修改lives的条件,使搜索条件为lives=2:
然后再次搜索:
我们获得了唯一的 lives 变量。
根据这个方法我们同理可以得到其他变量的内存地址等消息:
使用这个工具我们较为方便的寻找到内存中指定的变量的地址和类型等消息。