はじめに
職業SEなのにプログラミングが嫌い、やりたくない、できない 私が、今話題のこちらのキャンペーンに参加しました。
「Amazon Q CLI でゲームを作ろう Tシャツキャンペーン」
Amazon Q CLIを使用し、プロンプトだけでゲームアプリを開発します。そしてキャンペーンに応募すればTシャツも貰えます。
ゲームの概要
ゲーム内容:
トランプを使用した記憶力を試すシンプルなゲーム
・複数枚のトランプの絵柄を5秒見せて裏返す
・次にその中から1枚お題をあげ、お題のカードがどこにいるかをあてる
・ゲームモードと難易度も選択できる
特徴:
・簡単操作(マウスクリックのみ)
・ランダム配置で毎回違う挑戦
・ゲームモードと難易度を選べる
ゲームモード
5Rounds:5回勝負でスコアを競う
Endless:失敗するまで続ける
難易度
Easy :カード3枚
Normal:カード5枚
Hard :カード6-8枚をランダム
進め方
※Amazon Q CLIとのやり取りは、すべて日本語で行いました。
1.事前準備(環境準備と作るゲームのイメージ固め)
2.まずはシンプルなバージョンをQ CLIに依頼して実装
3.動かしてみて、デザインや動作で気になった点を順次フィードバックして修正
4.機能追加(ゲームモード・難易度)で完成度を高めていく
5.Amazon Q CLIに「もっと面白くするには?」と聞いて、遊び心のある機能も追加
1.事前準備
環境準備
会社用PCを使用すると、社内プロキシの問題で思うようにできなかったため、インターネット接続できるWindowsOSのEC2をたて、そこから作業しました。
手順はこちらを参考にしました。
Fleet ManagerでハマりつつAmazon Q CLI でゲームを作る
作るゲームのイメージ固め
漠然として思いつかない人はAIと相談しながら考えるとやりやすいです。
私の場合は、シンプルで簡単に時間つぶしができるようなものをつくろうと、パッと思いついたもので作り始めました。
2.まずはシンプルなバージョンをAmazon Q CLIに依頼して実装
Amazon Q CLIを起動し、最初に下記プロンプトで作ってもらいました。
実際に使ったプロンプト
日本語で会話しながら一緒にゲームを作りましょう。
まずは、前提条件が2つあります。
①PYGAMEで動くゲームをつくる
②ファイルは表示でなく出力する でお願いします
では、ゲームの仕様を考えていきましょう。
トランプを使用して、記憶力を試すゲームを作りたいです。
例えば、初級では、トランプの絵柄3枚を5秒見せて裏返す。
次に3枚の中から1枚お題をあげ、そのカードがどこにいるかをあてるゲームです
これで出来上がったものがコチラ
文字化けしてました。
また、遊んでみると毎回同じ絵柄しか出てきませんでした。
3.動かしてみて、デザインや動作で気になった点を順次フィードバックして修正
改善点を伝える→動かしてみる→気になる点があればまた改善点を伝える・・・
これを繰り返し、Easyレベルのものは形になりました。
※Ec2の仕様か日本語化はできなかったため、諦めて英語表記にしました
4.機能追加(ゲームモード・難易度)で完成度を高めていく
ゲームの最終形として、ゲームモード選択と難易度選択はいれたかったので、これもAmazon Q CLI に伝えて作ってもらいました。
実際に使ったプロンプト
ゲームの追加要望です。
・最初の画面でゲームモードと難易度を選択したいです
・モードは「5回勝負」(5回繰り返してスコアを競う)「エンドレスモード」(失敗するまで続けて、連続正解数を競う)の2種類
・難易度は初級(カード3枚)、中級(カード5枚)、上級(カード6~8枚がランダム)にできますか
これで出来上がったものがコチラ
↓ ↓ ↓ ↓
いい感じですね。
そして、また動かしながら改善点を伝えて、Version.1としてのゲームが完成しました。
5.Amazon Q CLIに「もっと面白くするには?」と聞いて、遊び心のある機能も追加
Version.1のゲームで十分遊べますが、もっと面白くできないか聞いてみました。
実際に使ったプロンプト
ここからさらに面白くするアイディアがあれば教えて
↓ ↓ ↓ ↓
10個近く出してくれました。
その中からいくつかピックアップして機能をさらに追加します。
トラブル発生!?
機能追加を依頼したあと、Thinking... が中々終わらない。
例外も出ている?見守ります。
何とかビルドは終わったみたいですが、今度はゲームが起動できません。
Amazon Q CLIに何とかしてもらいましょう。
実際に使ったプロンプト
ゲームが起動できません。問題点がないか確認してください
↓ ↓ ↓ ↓
自動でエラーを発見し、修正・テストしてくれました。
すごい。
最終形
カードはよりトランプっぽくし、設定画面も追加しました。
他にもいろいろ機能追加しています。
Amazon Q CLIとの開発を通して感じたこと
・プログラミングが苦手でも、対話形式で少しずつ作れる安心感がある
・曖昧な指示でも意図を汲み取ってくれる柔軟さがすごい
・「詰まったら聞ける」安心感が、開発を楽しいものにしてくれた
おわりに
SEとして入社し、10年ほどプログラミングから逃げてきた私でも、ちゃんとゲームを作ることができました。
プロンプトで指示を出し、レビューしながら作り上げていく過程が楽しかったです。
小学生でも出来る内容なので、子どもと遊びながらやってみるのもいいかもしれません。
完成コード
コードなどはコチラなので、遊んでみてください。
https://github.com/mfunamfuna/card-memory-game
※Githubへの登録も、Amazon Q CLIにフォローしてもらいました。
ローカル環境でのリポジトリ作成やコミット、Readmeの作成などやってくれて大変楽でした












