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

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

目次

    はじめに

    現在開催中の下記のキャンペーンに向けて、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」の紹介

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

    202506_amazon-q-developer-cli_01

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

    202506_amazon-q-developer-cli_02

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

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

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

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

    202506_amazon-q-developer-cli_06

    狙い通り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

    202506_amazon-q-developer-cli_07

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

    sudo apt install python3 -y

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

    pip3 --version

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

    sudo apt install pip3 -y

    202506_amazon-q-developer-cli_08

    インストール後の確認

    pip3 --version

    202506_amazon-q-developer-cli_09

    Pygameのインストール

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

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

    202506_amazon-q-developer-cli_10

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

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

    mkdir pygame

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

    cd pygame

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

    sudo apt install python3.12-venv

    202506_amazon-q-developer-cli_11画像ではvenvが存在しないということでエラーが発生しています。

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

    python3 -m venv myenv

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

    source myenv/bin/activate

    202506_amazon-q-developer-cli_12

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

    pip install pygame

    202506_amazon-q-developer-cli_13

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

    python -m pygame.examples.aliens

    202506_amazon-q-developer-cli_14

    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

    202506_amazon-q-developer-cli_15

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

    ゲームの作成

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

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

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

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

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

    うまくいかなかったこと

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

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

     

    工夫したこと

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

    202506_amazon-q-developer-cli_16

    GitHub

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

    アジアクエスト株式会社では一緒に働いていただける方を募集しています。
    興味のある方は以下のURLを御覧ください。