如何使用Python环境下的2D经典游戏仿真器(openai推出的)retro库运行游戏"刺猬索尼克" (SonicTheHedgehog-Genesis)

很多资料上都有使用游戏仿真器(openai推出的)retro库运行游戏"刺猬索尼克"  (SonicTheHedgehog-Genesis),但是均没有给出详细的安装该款游戏的步骤,经过自己的探索终于成功安装上。

首先,本文假设你已经安装好了Python接口的仿真器 retro ,同时你也有steam账号。

特别说明的一点是游戏"刺猬索尼克"  (SonicTheHedgehog-Genesis) 是有商业版权的,要下载该游戏需要在steam上付费的,我今天购买时使用阿里支付将人民币兑换成美元支付的,花了21元多些。

=================================================

登录你的steam账号,购买游戏:

游戏购买地址:

https://store.steampowered.com/app/71113/Sonic_The_Hedgehog/

使用淘宝或微信支付购买。

在已经安装好 retro  库的Python环境下执行命令:

python -m retro.import.sega_classics

执行命令后显示结果如下:

 其中,输入用户名和密码自然不用多说,但是这个 Guard code 这个地方是要注意的,我一开始没有care这个地方直接回车了发现不好用,然后不到5分钟邮箱收到了这个Guard Code的邮件,然后再次执行这个命令,输入用户名和密码,然后再输入刚收到的邮件中的这个Guard Code于是才成功继续执行。

安装结束后,我们可以使用下面命令来测试是否安装成功:

循环回合使用随机动作运行游戏:

python -m retro.examples.random_agent --game SonicTheHedgehog-Genesis

使用交互模式运行游戏:

python -m retro.examples.interactive --game SonicTheHedgehog-Genesis

使用Brute算法的游戏策略运行游戏:

python -m retro.examples.brute --game SonicTheHedgehog-Genesis

Brute

There is a simple but effective reinforcement learning algorithm called “the Brute” from “Revisiting the Arcade Learning Environment” by Machado et al. which works on deterministic environments like Gym Retro games and is easy to implement. 

====================================================

成功运行的截图:

注意的一点是本文使用retro运行游戏选择有界面的方式时是在windows10系统下的,在Ubuntu系统是提示显卡驱动过高不支持OpenGL2.0,换句话说不管是你在哪个系统下复现本文的安装方法都是需要注意显卡驱动的版本问题,如果驱动版本过高是不支持OpenGL2.0的,这样的话运行这个游戏"刺猬索尼克"  (SonicTheHedgehog-Genesis)  是不会出现图像的只会是一片黑色的屏幕。

还有一点需要注意的是并不是所有steam上的游戏都可以像本文这种方法下载运行的,这里有一个要求就是你的游戏需要是  classic Sega roms  才行,这里我也是只知道这一款游戏是该类型。

另附:

NES  游戏公司的游戏rom ( .nes 格式)

https://archive.org/download/No-Intro-Collection_2016-01-03_Fixed/Nintendo%20-%20Nintendo%20Entertainment%20System.zip

该链接中的 .nes 游戏可以导入到  retro 中。

本博客是博主个人学习时的一些记录,不保证是为原创,个别文章加入了转载的源地址还有个别文章是汇总网上多份资料所成,在这之中也必有疏漏未加标注者,如有侵权请与博主联系。
原文地址:https://www.cnblogs.com/devilmaycry812839668/p/15248979.html