人狼ゲームのGM補助ツールを作ろう
1年半くらい前に、ひょんなきっかけで人狼ゲームを経験して以降のめりこんでしまって、Youtubeの人狼ゲームの配信動画もよく見るようになりました。最近は身内で人狼ゲームをする場合にゲームマスター(GM)としてゲームを進行することもあります。
人狼ゲームは、参加者同士の駆け引きや推理を楽しむ心理ゲームです。Zoomを使ったオンラインの人狼をやる場合はアプリを使ったりするのですが、対面でゲームをする場合、ゲームマスター(GM)が役職の管理やイベントの進行をします。そして、紙のメモやホワイトボードを駆使しても、情報の整理や更新が追いつかないことも。そこで、もっとスムーズに人狼ゲームのGMとしてゲームを進行できるように補助するツールがあればと思い立ち、自分で人狼GM用アプリを開発することにしました。
開発言語の選定
アプリ開発にあたり、どのプログラミング言語を用いるかは重要です。ただせっかくなので、自分の使ってみたいと思っていたPythonを使って、このプロジェクトを通じて、Pythonのスキルを伸ばしつつiOSアプリにしてiPadで利用したいと考えました。調査の結果、PythonでGUIアプリを開発できるKivyというライブラリを見つけ、これを用いることに決めました(割と「えいや!」で決めましたw)。
アプリの性質からいうともっと適した言語があると思いますが、個人的なPythonへの挑戦という意味も込めて、これで進めてみます。果たして、ゴールに辿り着けるのだろうか。。。。
開発環境の構築
私の開発環境は以下の通りです。
- M1 MacBook Air: 個人的なノートパソコンのメイン機。WindowsのMiniPCでもよかったのですが、どこでも開発できる点と最終的にiOSアプリにしたい点からこちらをチョイス。
- Visual Studio Code: マイクロソフト製の無料エディタ。会社でも利用している今や定番のエディタですね。これにPythonの拡張機能をインストールしてみました。拡張機能はエディタでPythonを作成していると勝手におすすめしてきます。
- iTerm: これも定番のターミナルソフト。複数タブだし、ネットを参考に文字に色をつけたりすると使いやすいです。
その他の開発環境の構築は、基本的にはネットで情報を探しながら、以下の手順で進めました。バージョンがあるものは基本的に最新をインストールしてます。
- MacにBrewとPythonのインストール: BrewはMacのパッケージマネージャで、Pythonのインストールもこれを通じて行いました。以下のサイトを参考に、OpenCV以外をインストールしました。
https://www.codevace.com/install-python-on-mac/ - pipのインストール: Pythonのパッケージ管理ツールであるpipも必要となります。これをインストールすることで、後にKivyなどのライブラリを簡単に追加できます。以下が参考サイトです。
https://qiita.com/ohbashunsuke/items/e7c673db606a6dced8a6 - MacでのKivy開発環境構築: Kivyの環境を構築することは、少し手間がかかりましたが、幸いにもMac向けに詳細なガイドがインターネット上にありました。
https://blog.looseknot.jp/mac/m1mac_kivy_install.html
注意点
一度開発環境を構築し、アプリ開発を開始したものの、Macを再起動などをした際には、Kivyをインストールしたフォルダで以下のコマンドを再実行しなければアプリが起動しないことに気付きました。
source venv/bin/activate
まとめ
このプロジェクトを通じて、PythonとKivyの力を借りて、人狼ゲームのGMを補助するアプリの開発に挑戦していきます。今後は、開発中の過程を綴っていく予定です。
[…] Python+Kivyを使ったアプリ開発の旅 序章 人狼ゲームのGM補助ツールを作ろ… […]