【Python】ゲームボーイのエミュレーターPyBoyのインストール

プログラミング

「ゲームボーイのゲームをプレイしたい」
「Pythonで簡単なゲームを作成して配布したい」

このような場合には、PyBoyがオススメです。
この記事では、PyBoyについて解説しています。

本記事の内容

  • PyBoyとは?
  • PyBoyのシステム要件
  • PyBoyのシステム要件
  • PyBoyの動作確認

それでは、上記に沿って解説していきます。

PyBoyとは?

PyBoyは、ゲームボーイのエミュレーターです。
そして、PyBoyはPythonのライブラリとして提供されています。

このような懐かしいゲームが、Python上で遊べるということです。
このPyBoy自体は、簡単に動かすことができます。

下記では、PyBoyを動かすための説明を行っています。
それはそれで進めれば、特に問題はないでしょう。

しかし、ここで問題になってくるのがロム(Rom)です。
「ゲームのロムをどうやって取得するのか」ということが、問題になります。

ロムの取得方法は、様々な方法があります。
Googleで検索すれば、合法なものから違法なものまで出てくるでしょう。

ここでは、合法で簡単な方法を説明しておきます。

単純に、パブリックドメインのロムをダウンロードするだけです。
フリー素材ならぬフリーロムを利用することになります。

PDRoms
https://pdroms.de/

上記のサイトから、それらのロムをダウンロードできます。
著作権に関しては、放棄されているモノ、されていないモノが存在します。

そのあたりは、各自で調べる必要があります。
ただ、個人で利用するだけなら、特に注意する必要はありません。

以上、PyBoyについて説明しました。
次は、PyBoyのシステム要件を確認します。

PyBoyのシステム要件

現時点(2022年1月)でのPyBoyの最新バージョンは、1.4.7となります。
この最新バージョンは、2021年10月22日にリリースされています。

PyBoyのシステム要件は、以下が主なポイントです。

  • OS
  • Python
  • SDL2

それぞれを下記で説明します。

OS

サポートOSに関しては、以下を含むクロスプラットフォーム対応です。

  • Windows
  • macOS
  • Linux

基本的には、PyBoyはOSを問わないということでしょう。

Python

サポート対象となるPythonのバージョンは、3.6以降となります。
そうは言っても、Python 3.6はもう利用はやめるべきでしょう。

以下は、Python公式開発サイクルです。

バージョンリリース日サポート期限
3.62016年12月23日2021年12月23日
3.72018年6月27日2023年6月27日
3.82019年10月14日2024年10月
3.92020年10月5日2025年10月
3.102021年10月4日2026年10月

すでにPython 3.6は2021年末でサポートが切れています。
可能であれば、新しいバージョンのPythonを利用しましょう。

Python 3.10は、もう問題なく利用できるようになっています。
アップグレードも可能な状態です。

SDL2

SDLとは、C言語で書かれたクロスプラットフォームのマルチメディアライブラリです。
そして、1系からバージョンアップした2系がSDL2になります。

ここでは、Ubuntuの場合のインストールコマンドを載せておきます。

sudo apt install libsdl2-dev

上記を実行すれば、SDL2をUbuntuにインストールできます。

まとめ

PyBoyのシステムは要件は、それほど複雑ではありません。
Pythonのバージョンを新しくして、SDL2をインストールすればOKです。

以上、PyBoyのシステム要件を説明しました。
次は、PyBoyをインストールします。

PyBoyのインストール

検証は、次のバージョンのPythonで行います。

$ python -V
Python 3.10.1

まずは、現状のインストール済みパッケージを確認しておきます。

$ pip list
Package    Version
---------- -------
pip        21.3.1
setuptools 60.5.0
wheel      0.36.2

次にするべきことは、pipとsetuptoolsの更新です。
pipコマンドを使う場合、常に以下のコマンドを実行しておきましょう。

python -m pip install --upgrade pip setuptools

では、PyBoyのインストールです。
PyBoyのインストールは、以下のコマンドとなります。

pip install pyboy

インストールは、少し時間がかかります。
では、どんなパッケージがインストールされたのかを確認しましょう。

$ pip list
Package    Version
---------- -------
Cython     0.29.26
numpy      1.22.0
Pillow     9.0.0
pip        21.3.1
pyboy      1.4.7
PySDL2     0.9.10
setuptools 60.5.0
wheel      0.36.2

よく見かけるパッケージばかりですね。
その意味では、PyBoyの導入はそれほど困難ではありません。

結局、システム要件で確認したSDL2がポイントになります。
そして、その関連でPySDL2がインストールされていることが確認できます。

以上、PyBoyのインストールを説明しました。
次は、PyBoyの動作確認を行います。

PyBoyの動作確認

動作確認自体は、とても簡単です。
以下のコードでゲームをプレイできます。
もちろん、ロムのファイル名の部分は各自で変更する必要があります。

from pyboy import PyBoy

pyboy = PyBoy('./data/Espionage.gb')
while not pyboy.tick():
    pass

上記コードを実行すると、次のような画面が表示されます。

あとは、ロム上のゲームが表示されてプレイ可能となります。
実際のプレイ中のスクリーンショットは、以下。

以上、PyBoyの動作確認を説明しました。

タイトルとURLをコピーしました