AQ Tech Blog

ゲーム制作素人がAmazon Q Developer CLIを使用してイカサマチンチロゲームを作ってみた

作成者: kazuya.uematsu|2025年06月12日

はじめに

現在開催中の下記のキャンペーンに向けて、Amazon Q Developer CLIを使用してイカサマチンチロゲームを作ってみました。
Build Games with Amazon Q CLI and score a T shirt

Amazon Q Developer CLIを使用してゲームを作成するとTシャツがもらえるそうです。
心躍るキャンペーンをありがとうございます。
(キャンペーンは2025/6/20まで実施)

今回作ったゲーム「Cheat The Role」の紹介

今回作成したゲームは以下のようなものになります。

チンチロのルールに則って得点を獲得していくゲームです。

ステージごとに目標点数が設定されており、これを超える点数を獲得することを目指します。


ステージをクリアするとサイコロ購入フェイズに移ります。ここでは獲得したスコアを消費して最大3個のサイコロの面を購入することができます。
今回はリロールも交えつつ、6の面を2つ購入しました。

購入した面はカスタマイズフェーズにて自分のサイコロの面と交換することができます。
今回はサイコロ1とサイコロ2の1の目を6に交換しました。

すると次のステージからは、カスタマイズしたサイコロを使用してステージに挑むことができます。

狙い通り6のゾロ目が出ました!6の面を増やした効果がありましたね。
このようにオリジナルのイカサマサイコロを作って高得点を目指すゲームになります。

Amazon Q Developer CLIとは

Amazon Q Developer CLIとは、AWSの生成AIサービスであるAmazon Q DeveloperをCLIから操作する機能です。
AWSに関する質問や、コマンドの補完、AWSリソースの作成などいろいろなことを行うことができます。
今回はエージェント型コーディングの機能を使用しました。単なるコードの提案だけではなく、実際にエージェントとしてコードを作成してくれる機能です。
なお、Amazon Q Developer CLIの基本的な機能は無料で使用することができます。すごい。
Amazon Q Developer の料金

Amazon Q Developer CLIを使用してみた感想ですが、こんなに簡単にできちゃっていいんですか!?と感じました。
私はプログラミングは初心者レベル、ゲーム制作は全くやったことのない人間ですが、ものの2,3時間でゲームを作成することができました。
特にPC内のファイルを直接編集してくれるのが便利ですね。ChatGPTやGeminiでは生成されたコードを手動で修正する手間が発生していたのですが、Amazon Q Developer CLIではコンピュータ内のコードを直接書き換えてくれます。
また、エラー発生時もエラー内容を貼り付けると、エラー箇所を特定し解決するところまで実施してくれました。
超有能なプログラマーに指示を出している感覚で開発をすることができました。

以下、Windows向けの環境構築と実際のゲーム作成までの手順を記載します。

WindowsにWSLをインストール

以下のページを参考にWSLをインストールします。
今回はUbuntu 24.04を使用しました。

Set up a WSL development environment

必要なパッケージをUbuntuに導入

WSLを起動し、パッケージを確認します。

・Python3 3.12.3

インストールの確認

python3 --version

もしインストールされていない場合以下のコマンドでインストールします。
私の環境ではデフォルトでインストールされていました。

sudo apt install python3 -y

・pip3 24.0
インストールの確認

pip3 --version

こちらはインストールされていないので以下コマンドでインストールします

sudo apt install pip3 -y

インストール後の確認

pip3 --version

Pygameのインストール

今回はゲーム制作のフレームワークにpygameを使用します。
pygameはPythonでゲームを作るためのフレームワークです。

以下のページを参考にpygameをインストールするのですが、インストールのコマンドでエラーが出力されインストールできませんでした。
Pygame Installation

どうやらUbuntuではpip installでローカルに直接パッケージをインストールすることを制限しているようです。
そのため、以下の手順で仮想環境を作成し、仮想環境内でpygameをインストールします。

仮想環境用のディレクトリの作成

mkdir pygame

作成したディレクトリに移動

cd pygame

仮想環境を作成するためのツール、python3-venvをインストール

sudo apt install python3.12-venv

画像ではvenvが存在しないということでエラーが発生しています。

myenvという名前で仮想環境を作成

python3 -m venv myenv

仮想環境をアクティベート

source myenv/bin/activate

これで仮想環境の準備ができたので、以下コマンドでpygameをインストールします

pip install pygame

pygameのインストールが完了しました。
以下のコマンドでテストゲームを起動します。インベーダーゲームが起動できればインストールは完了となります。

python -m pygame.examples.aliens

Amazon Q Developer CLIのインストール

以下のページを参考にAmazon Q Developer CLIをインストールします。

The essential guide to installing Amazon Q Developer CLI on Windows

概ねページの手順通りに実行すれば問題ありません。
ですが、手順内の以下のcurlコマンドはオプションでインストールの進捗が非表示になっているため、-sSfの-sSを削除して実行するのがおすすめです。

curl --proto '=https' --tlsv1.2 -sSf https://desktop-release.codewhisperer.us-east-1.amazonaws.com/latest/q-x86_64-linux-musl.zip -o q.zip

また、手順の最後のbashを入力すると仮想環境が停止されるため、再度アクティベートのコマンドを実行します。

なお、Amazon Q Developer CLIの使用にはAWS Builder IDが必要です。
以下のページからサインアップします。

AWS BuilderID

Amazon Q Developer CLIインストール時にIDの入力が必要になります。

インストール後、q chatと入力するとAmazon Q Developer CLIが開始されます。

q chat

環境構築が完了したときって達成感ありますよね。

ゲームの作成

いよいよ実際にゲームを制作します。
私の最初のプロンプトは以下でした。

pygameを使用してゲームを作成します。まずはチンチロリンのゲームをプロトタイプとして作成してください。作成したプロジェクトはすべてローカルに保存してください。

するとAmazon Q Developer CLIがプログラムを作成してくれます。また、最後にどんなことを実施したのかのサマリも出力されます。親切ですね。

上記のプロンプトだけで一通りの機能を備えたチンチロリンのゲームが作成されました。
そこからルールの追加やUIの調整など追加で指示を与え、冒頭のゲームを作成することができました。
かかった時間は環境構築も含めて3時間ほどです。す、すごすぎる~

上手くいかなかったことと工夫したこと

うまくいかなかったこと

このゲームとは別にもう一つゲームを作成していたのですが、そちらのゲームでは発生したバグを解消することができませんでした。
Amazon Q Developer CLIにバグの内容を伝えて何度か改善するようお願いしたのですが修正されず、泣く泣く作成を諦めました。

実際のゲームの挙動は自然言語でAmazon Q Developer CLIに伝えていたので、うまくバグの特定ができなかったのかもしれません。
また、UIの細かい部分の調整も難しかったです。文字のはみ出しや重なりを修正しようとしたのですがうまくいきませんでした。
やはり細かい部分のデバッグは実際にコードを読む必要があるのかなと感じました。プロンプトを工夫することでどうにかできるのかもしれませんが。。

 

工夫したこと

複雑な仕様を追加するときには、以下のように「曖昧な部分があったら質問して」のようにプロンプトを作成すると、実装にあたって不明瞭な部分を追加で確認してくれました。このようにエージェントと対話しつつシステムを作れるのがAmazon Q Developer CLIの強みですね。

GitHub

今回作成したゲームは以下のリポジトリで公開しています。
もしご興味ありましたらダウンロードしてプレイしてみてください。
Cheat The Role