Py学习  »  Python

用 Python 做了一个 Game Boy 模拟器

Python开发者 • 2 年前 • 499 次点击  

【导语】:基于 Python 的 Game Boy 模拟器,超级马里奥、口袋妖怪等耳熟能详的游戏都可以在上面完美运行。

简介

PyBoy 是一个基于 Python 的 Game Boy 模拟器,超级马里奥、口袋妖怪等耳熟能详的游戏都可以在上面完美运行。这款模拟器的独特之处,在于你能用它来创建 AI 或机器人,让它基于强化学习实现自动打游戏通关等骚操作。




项目地址:

https://github.com/Baekalfen/PyBoy

下载安装

需要机器上先安装好 Python 的环境,目前支持 macOS、树莓派、Linux (Ubuntu) 和 Windows 10 系统。

Linux(Ubuntu)

> sudo apt update
> sudo apt install python3 python3-pip python3-dev libsdl2-dev build-essential
> python3 -m pip install --upgrade pip
> python3 -m pip install pyboy

树莓派

> sudo apt update
> sudo apt install libsdl2-dev libatlas-base-dev
> python3 -m pip install --upgrade pip
> python3 -m pip install pyboy

macOS

> brew update
> brew install python3 sdl2
> python3 -m pip install --upgrade pip
> python3 -m pip install pyboy

Windows 10

目前在 Windows 上仅支持 Python 3.6 和 3.7,在 Windows PowerShell 中执行以下命令:

> (New-Object Net.WebClient).DownloadFile('https://www.python.org/ftp/python/3.7.6/python-3.7.6-amd64.exe''python-3.7.6-amd64.exe')
> ./python-3.7.6-amd64.exe /passive InstallAllUsers=1 PrependPath=1
> (New-Object Net.WebClient).DownloadFile('https://www.libsdl.org/release/SDL2-devel-2.0.10-VC.zip''SDL2-devel-2.0.10-VC.zip')
> Expand-Archive -Force 'SDL2-devel-2.0.10-VC.zip' C:\SDL2\
> setx PYSDL2_DLL_PATH C:\SDL2\SDL2-2.0.10\lib\x64
> setx PATH "%PATH%;C:\SDL2\SDL2-2.0.10\lib\x64"
// 以下命令需关闭 Power Shell 后重新打开并执行
> python -m pip install --upgrade --user pip
> python -m pip install --user pyboy

使用

  1. 可以使用以下命令直接启动 PyBoy
pyboy file.rom

或者通过 Python 脚本引入使用:




    
from pyboy import PyBoy
pyboy = PyBoy('ROMs/gamerom.gb')
while not pyboy.tick():
    pass
  1. PyBoy 运行起来之后就可以调用它的 API:
from pyboy import WindowEvent

pyboy.send_input(WindowEvent.PRESS_ARROW_DOWN)
pyboy.tick() # Process one frame to let the game register the input
pyboy.send_input(WindowEvent.RELEASE_ARROW_DOWN)

pil_image = pyboy.screen_image()
pil_image.save('screenshot.png')
  1. 以下是 PyBoy 的一些控制指令:



- EOF -

推荐阅读  点击标题可跳转

1、1.3 万 Star!迅猛发展的 JAX 对比 TensorFlow、PyTorch

2、10.5k Star!可快速搭建私人网盘的开源项目

3、有了这个 4.5 万 Star 的工具,可在浏览器中运行最强编辑器 VS Code!


觉得本文对你有帮助?请分享给更多人

推荐关注「Python开发者」,提升Python技能

点赞和在看就是最大的支持❤️

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/119721
 
499 次点击