如何使用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 格式)
该链接中的 .nes 游戏可以导入到 retro 中。
如何使用Python环境下的2D经典游戏仿真器(openai推出的)retro库运行游戏"刺猬索尼克" (SonicTheHedgehog-Genesis)的更多相关文章
- 图像处理基本工具——Python 环境下的 Pillow( PIL )
由于笔者近期的研究课题与图像后处理有关,需要通过图像处理工具对图像进行变换和处理,进而生成合适的训练图像数据.该系列文章即主要记录笔者在不同的环境下进行图像处理时常用的工具和库.在 Python 环境 ...
- Python环境下NIPIR(ICTCLAS2014)中文分词系统使用攻略
一.安装 官方链接:http://pynlpir.readthedocs.org/en/latest/installation.html 官方网页中介绍了几种安装方法,大家根据个人需要,自行参考!我采 ...
- python环境下实现OrangePi Zero寄存器访问及GPIO控制
最近入手OrangePi Zero一块,程序上需要使用板子上自带的LED灯,在网上一查,不得不说OPi的支持跟树莓派无法相比.自己摸索了一下,实现简单的GPIO控制方法,作者的Zero安装的是Armb ...
- Azure REST API (4) 在Python环境下,使用Azure REST API
<Windows Azure Platform 系列文章目录> 之前遇到的项目中,客户需要在Python环境下,监控Azure VM的CPU利用率,在这里简单记录一下. 笔者的环境是Win ...
- 关于python环境下的opencv安装
吐槽: 这一天我终于记起了这个博客.今天搞python环境下的opencv,又弄了一天,很烦躁.之前配置VS的opencv也是花了好久的时间,然后突然发现之前记录在电脑上的文档都找不到了,于是决定还是 ...
- windows下多Python环境指定pip安装模块到对应Python环境下
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿在windows下装了2套Python,一套是直接安装的Pytho ...
- python环境下安装virtualenv,virtualenvwrapper
在使用 Python 开发的过程中,工程一多,难免会碰到不同的工程依赖不同版本的库的问题: 亦或者是在开发过程中不想让物理环境里充斥各种各样的库,引发未来的依赖灾难. 此时,我们需要对于不同的工程使用 ...
- Python环境下如何安装爬虫需求的一些库
是在CMD环境下的: request库pip install request 回车 pandas库 同理,pip install pandas :这里需要声明下,这个是不一定成功的,刚入门稍微看了一点 ...
- Windows10系统python环境下安装Dlib库(转载,蔡军帅亲测可用)
Dlib是一个很优秀的机器学习库,最近做人脸识别要用到这个库,简要记录一下配置过程,准备工作: 1.python环境 2.安装好pip(这里有个简单的安装教程) 3.Dlib包,贴一个我安装的版本,链 ...
- [转]LIBSVM-3.18在python环境下的使用
http://blog.csdn.net/lj695242104/article/details/39500039 1)安装Python,直接去官方网站 2)运行“cmd”,直接输入python,查看 ...
随机推荐
- 妙用OSGraph:发掘GitHub知识图谱上的开源故事
1. 何为OSGraph? OSGraph (Open Source Graph) 是一个开源图谱关系洞察工具,基于GitHub开源数据全域图谱,实现开发者行为.项目社区生态的分析洞察.可以为开发者. ...
- SDL3 入门(1):Hello, SDL3!
在本系列中我们使用 Windows Terminal + Powershell 组合作为我们在 Windows 系统下的终端工具,Windows 11 自带该环境.你也可以使用任意自己喜欢的终端环境代 ...
- WebApi 接口参数不再困惑
从网上看了WEBAPI理解感觉不错分享一下 前言:还记得刚使用WebApi那会儿,被它的传参机制折腾了好久,查阅了半天资料.如今,使用WebApi也有段时间了,今天就记录下API接口传参的一些方式方法 ...
- python 二次封装logging,打印日志文件名正确,且正确写入/结合pytest执行,日志不输出的问题
基于之前日志问题,二次封装日志后,导致日志输出的文件名不对,取到的文件一直都是当前二次封装的log的文件名,基于这个问题,做了优化,详细看 https://www.cnblogs.com/cuitan ...
- 认真学习CSS3-问题收集-102号-关于定位
css中有关于定位的一个属性position. 在w3cschool中,position的介绍如下: 值 描述 absolute 生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定 ...
- 缺氧debu模式
OxygenNotIncluded_Data(E:\SteamLibrary\steamapps\common\OxygenNotIncluded\OxygenNotIncluded_Data) 文件 ...
- 基于SSD202D芯片的最小嵌入式Linux开发板来了 仅需99元 入门嵌入式Linux必选
- spring-关于组件的注入及获取流程
一.组件注入的基本流程: 容器初始化: Spring应用启动时,会读取配置(如XML配置.注解配置等),并根据这些配置创建Bean定义(BeanDefinition). 根据Bean定义,Spring ...
- SpringBoot中的一些组件
Redis 引入data-redis-starter <dependency> <groupId>org.springframework.boot</groupId ...
- 对于 vue3.0 特性你有什么了解的吗?
Vue 3.0 的目标是让 Vue 核心变得更小.更快.更强大,因此 Vue 3.0 增加以下这些新特性: (1)监测机制的改变3.0 将带来基于代理 Proxy 的 observer 实现,提供全语 ...