「Gemini CLI」を使ってみる! その2 ゲームをブラッシュアップしていきます!(完成度アップしてるよ☆)

はじめに
最初に念のため書きますが、今回はコードは一切触らず、全て「Gemini CLI」が作成したゲームです。
また、基本的に指示は、曖昧な指示を出すように心がけました。
例
・もう少し当たり判定を小さくして
・ボスの攻撃バリエーションを増やして
・敵が硬すぎるのでもう少し柔らかくして
みたいな指示です
実際にブラッシュアップして遊べる状態にしたのが以下になります。
https://test.aisgm.me/test_prog/js/003/
遊べるのはPC onlyです

前の状態だと、システム的な部分は色々入っていますが、バランス悪いし分かりにくい状態でした。
途中で絶対クリアできないって場所もあります。
そこで、今回はバランスの調整や、表示する情報など大幅に更新しました。
デバッグするに当たって、自分のパワーアップがどんな状態かを確認できないと不便なので、その辺も結構変わっているかと思います。
あと、今回はクリアの概念もありますので、ウェーブ15をクリアしてください。
ここから下は、具体的な作成過程をはしょりながら見ていきます。
実際は少しづつ変更しているので(一気にやりすぎると、どこの変更で不具合が入ったのか分かりにくい)「Gemini CLI」とのラリー回数はそれなりにあります。
同じバグが何度指示しても中々治らないとかもあるので、その辺は省略しています。
と、その前に、発生した事を少し書いておきます。
しばらく使っていると、以下のようなメッセージが出て、「gemini-2.5-pro」 から 「gemini-2.5-flash」 切り替わってしまいました。
「Gemini Flash」でしばらく使ってみましたが、使えなくはないが、凡ミスも多いなって印象でした。
*⚡ Slow response times detected. Automatically switching from gemini-2.5-pro to gemini-2.5-flash for faster
responses for the remainder of this session.
⚡ To avoid this you can either upgrade to Standard tier. See: https://goo.gle/set-up-gemini-code-assist
⚡ Or you can utilize a Gemini API Key. See: https://goo.gle/gemini-cli-docs-auth#gemini-api-key
⚡ You can switch authentication methods by typing /auth
最初の部分を翻訳すると、以下の感じになります。
⚡ Slow response times detected. Automatically switching from gemini-2.5-pro to gemini-2.5-flash for faster
responses for the remainder of this session.
応答速度が遅いことが検出されました。このセッションの残りの時間は、応答速度を上げるため、gemini-2.5-pro から gemini-2.5-flash に自動的に切り替えます。
*
/auth
このコマンドで、Googleアカウントでログインし直せば、「gemini-2.5-pro」に戻す事ができます。
長く使っていると発生するかもなので、たいした問題では無いですが、メモ程度に見てもらえれば。
あと、手っ取り早いのは「Gemini CLI」を一旦終わらせて、再起動するとかでも良いかと思います。
では、ここからバランスや見た目の変更をしていきます。
次のお願いをして、どのようにしていくかを聞きます。
本格的にバランス調整を行いたいと思います。以下の内容で検討してください
・序盤の難易度を下げたい
・ボスの出現ウェーブと耐久度と攻撃方法を再検討
・パワーアップの種類を増やす
*✦ 承知いたしました。本格的なバランス調整ですね。承知いたしました。ゲームをより面白く、やりごたえのあるものにするための調整案をご提案します。
以下の3つの大きな柱で変更を加えたいと思います。
- 序盤の難易度緩和(スムーズな体験のために)
現在のバージョンでは、ウェーブ2から急に難しくなる印象があります。そこで、序盤のウェーブ(1〜4)を以下のよ
うに変更し、プレイヤーがゲームのシステムに慣れ、徐々に成長を実感できるようにします。
ウェーブ1: 敵の数を15から10に減らし、より簡単なスタートにします。
ウェーブ2:
敵の数を35から25に減らします。
敵の出現間隔を700msから800msに延長し、少し余裕を持たせます。
強敵である brute の出現をウェーブ3以降に変更します。
ウェーブ3:
敵の数を40から30に減らします。
ここから brute が登場するようにします。
プレイヤーの初期強化:
基本武器(Basic Gun)の連射速度を少しだけ上げ(500ms → 450ms)、序盤の爽快感を高めます。
- ボス戦の再設計(よりエキサイティングな体験のために)
現在のボスは、他の敵を召喚するだけなので、単調になりがちです。ボス戦をゲームの大きな見せ場にするため、以下の変更を提案します。
出現ウェーブの変更:
最初のボスの出現をウェーブ5からウェーブ8に変更します。これにより、プレイヤーはボスに挑む前により多く
のアップグレードを得られます。
ウェーブ15に、より強力な第2のボスを追加します。
ボスの耐久力(HP)の大幅アップ:
ウェーブ8ボスのHPを50から1500に増やし、手応えのある戦闘にします。
ウェーブ15ボスのHPを4000に設定します。
新しい攻撃パターンの追加:
1. 全方位弾幕(Radial Burst):
ボスが定期的に、自身の周囲360度に向けて弾を発射します。プレイヤーは回避に専念する必要があります。
2. 狙撃弾(Targeted Volley): プレイヤーを狙って、高速の弾を3連射します。
3. ミニオン召喚: 現在の能力も維持し、これらの新しい攻撃と組み合わせて使用します。
- パワーアップの多様化(戦略の幅を広げるために)
現在のアップグレードは武器とHPに限られていますが、より多くの選択肢を提供することで、プレイヤーは自分だけの戦略を組み立てられるようになります。レベルアップ時に、以下の新しいアップグレードがランダムに出現するようにします。
プレイヤー能力強化系:
移動速度アップ: プレイヤーの足が速くなります。
取得経験値アップ: より早くレベルアップできるようになります。
体力自動回復: 毎秒、最大HPの一定割合が自動で回復します。
防御・特殊系:
ダメージ軽減: 受けるダメージを少し減らします。
リバイブ: HPが0になった時、一度だけその場で復活します。(1ゲームにつき1回のみ)
新しい武器の追加:
チェーンライトニング: 最初に当たった敵から、近くの別の敵へと連鎖してダメージを与える雷を追加します。
集団の敵に特に有効です。
これらの変更により、序盤はより遊びやすく、ボス戦はよりドラマチックになり、レベルアップの楽しみも大幅に増えると考えています。
こちらの内容で修正を進めてもよろしいでしょうか?
伊藤園 おーいお茶 ピュアグリーン 600ml×24本 緑茶 ペットボトル 新品価格 | ![]() |

みたいな感じで修正案を聞いてきてくれます。
こちらは、それに対してGOするだけです。
*✦ 承知いたしました。ご提案いただいた方針で、ゲームのバランス調整と機能追加を行います。これは大規模な更新となる
ため、いくつかのステップに分けて慎重に作業を進めます。
まず、ステップ1として、バージョン情報を「v1.2.0」に更新し、ゲームの基本的なデータ構造(プレイヤーの能力、
武器、アップグレード、ウェーブ構成など)を新しい仕様に合わせて一新します。
以下の修正を順番に適用していきます。
- タイトル画面のバージョン情報を更新します。
- プレイヤーに新しい能力値(移動速度、経験値ブーストなど)を追加します。
- 新しいアップグレードの選択肢を定義します。
- 武器の性能を調整し、新武器「チェーンライトニング」を追加します。
- 敵の性能を調整し、新しいボスタイプを追加します。
- 全15ウェーブの構成を再設計します。
- 新しいアップグレードシステムに合わせて、レベルアップ処理を更新します。
- ゲーム開始時に新しい能力値がリセットされるようにします。
- ボスや新しい武器が使用する、敵の弾やエフェクトを管理する仕組みを追加します。
それでは、修正を開始します。
✦ お待たせいたしました。すべての修正が完了しました。
今回の更新(v1.2.0)の主な変更点は以下の通りです。
ゲームバランスの全体的な見直し:
序盤のウェーブ(1〜4)の難易度を緩和し、プレイヤーがゲームに慣れやすいように調整しました。
全15ウェーブ構成に拡張し、より長く遊べるようになりました。
エキサイティングなボス戦:
ウェーブ8と15に、新しい攻撃パターン(全方位弾幕、狙撃弾)を持つ強力なボスを追加しました。
ボスのHPを大幅に増やし、手応えのある戦闘を楽しめるようにしました。
ボス戦専用の大きな体力バーを追加し、戦況を分かりやすくしました。
豊富なアップグレード:
レベルアップ時に、武器の強化や新しい武器の入手に加え、以下の新しい能力アップグレードがランダムに出現
するようになりました。
移動速度アップ
取得経験値アップ
体力自動回復
ダメージ軽減
リバイブ(復活)
新武器として、敵の間を連鎖するチェーンライトニングを追加しました。
UIとエフェクトの改善:
タイトル画面にバージョン情報を表示するようにしました。
リバイブ能力を持っている場合、体力ゲージのハートが金色で表示されるようになりました。
チェーンライトニングやボスの攻撃に、新しいビジュアルエフェクトを追加しました。
これまでの変更をすべて反映した game.js でゲーム全体を上書きしました。
ゲームを再読み込みして、新しくなったゲームをお楽しみください!*
という感じで、機能は入りましたが個々の機能をちゃんと動くか確認して、不具合があれば修正を依頼して何回かやりとりして、概ね問題無い所まできました。
だいぶゲームらしくバランスが取れてきたのですが、敵が硬いとかゲームとしては面白みに欠けるので、色々と要素を追加していきます。
と、その前に、ここまでのステータスを見ていきます。
Stats
Last Turn
Input Tokens 3,667,984
Output Tokens 4,492
Thoughts Tokens 8,774
Total Tokens 3,681,250
Turn Duration (API) 5m 12s
ここまでがステータスをとる直前のやりとり以下がトータルのやりとりですね
38回ラリーしてます。
Cumulative (38 Turns)
Input Tokens 10,378,365
Output Tokens 150,039
Thoughts Tokens 185,524
Total Tokens 10,713,928
Total duration (API) 49m 10s
Total duration (wall) 59h 1s
まだ中間地点でこんな感じなので、これを従量課金でやっていたらと思うと・・・・って感じですw
「Total duration (wall) 59h 1s」
トータル時間見ると、めっちゃ時間かけている感じに見えますが、別の事やっている時間の方が長いので、一度プロンプト投げたら別の事やっているって感じで時間が過ぎているので、放置時間がほとんどですね。
「Total duration (API) 49m 10s」
実質のAIが考えている時間がこの時間で、
Cumulative (38 Turns)
AIとのやりとり回数(プロンプト投げた回数)って感じです。
では続きをやっていきます。
次のように指示しました。
*バランスはかなり良くなりました。ただ、徐々に敵の堅さに倒せなくなっていくので、レベルアップ時のダメージ強化の量をもう少し上げても良さそうです。
他に提案があったらお願いします
今後の改善点として以下の提案があります。
- 敵の多様性: 現在の敵は主にプレイヤーを追尾するタイプですが、遠距離攻撃を行う敵や、特殊な動きをする敵(例
:ワープする敵、分裂する敵)を追加することで、ゲームプレイに戦略性と多様性をもたらすことができます。 - パワーアップアイテム: 一時的にプレイヤーを強化するアイテム(例:攻撃力アップ、移動速度アップ、無敵)を導
入することで、ゲームプレイにランダム性と爽快感を加えることができます。 - UI/UXの改善:
ミニマップ: 敵の位置を把握しやすくするために、ミニマップを追加する。
ヒットインジケーター: 敵にダメージを与えた際に、視覚的なフィードバック(例:敵が点滅する、ダメージ数
値が表示される)を追加する。
ゲームオーバー画面の改善:
スコアだけでなく、プレイ時間や倒した敵の数など、より詳細な統計情報を表示する。
これらの提案は、ゲームの面白さをさらに向上させるためのものです。まずは、今回の修正でWASDキーの問題が完全に
解決したか、そしてダメージバランスが改善されたかをご確認いただけますでしょうか。
WASDキーの問題はまだ発生します。
今後の改善点ですが、1の敵の多様性は是非追加してください。これを実装するに当たって、敵の耐久力を減らして、弾を避けやすくするために当たり判定を小さくしてください。
攻撃のバリエーションを増やした分、難易度を下げてバランスをとった方が良いと思います。
ゲームオーバー時の詳細な統計情報は、面白いので是非入れてください。
他は、様子を見ながら考えたいと思います。
- WASDキーの問題に対する追加対策
レベルアップ画面に移行する際に、すべてのキーの状態をリセットする処理を追加します。これにより、レベルアップ
中にキーが押されたままでも、ゲームプレイに戻った際に意図しない移動が発生するのを防ぎます。
✦ 2. 敵の多様性、耐久力、当たり判定の調整
敵の多様性を増やす前に、既存の敵の耐久力と当たり判定を調整します。
敵のHPを全体的に減少させ、倒しやすくします。
敵の当たり判定(radius)を小さくし、弾を避けやすくします。
これにより、新しい敵タイプを追加した際のバランス調整がしやすくなります。
✦ 3. ゲームオーバー時の詳細な統計情報
ゲームオーバー画面に、最終スコアに加えて、プレイ時間と倒した敵の数を表示するようにします。
*

ちなみにWASDキーの問題というのは、キーを離しても押しっぱなしの状態になってしまう不具合がすっと治らないやりとりです。
他は、細かいバランス調整で、敵の耐久力が高すぎるとか、近く通っただけでダメージを受けたので。
という感じで、かなり省略したので、変更点だけ大きな物を書いておきます。
具体的な数値はAIが決めていて、全て曖昧に指示を出しています。
「当たり判定を小さくして」「ダメージ減少率を増やして」「リバイブの効果が分からないので演出を入れて」などです。
- ゲームオーバー画面に、最終スコアに加えて、プレイ時間と倒した敵の数を表示するようにします。
- ゲームクリア:
- 全15ウェーブをクリアした際に、ゲームオーバーではなく、専用のゲームクリア画面を表示するように変更します。
- 経験値調整: レベル10以降のレベルアップに必要な経験値の上昇率を1.5倍から1.25倍に緩和します。
- ボスの攻撃パターン追加: 各ボスに新しい攻撃パターンを追加し、戦闘が単調にならないようにします。
- ボスの発狂モード: ボスの体力が10%以下になると「発狂モード」に移行し、攻撃が激化するようにします。移動速度が上昇し、攻撃の頻度が上がり、さらに強力な専用攻撃を繰り出すようになります。
- ウェーブ9以降の敵の弾発射: WAVEDATAにenemiesShoot:trueを追加しました。次に、一部の敵タイプ(standardとscout)に弾を撃つためのプロパティ(canShoot,fireRate, projectileSpeed,projectileDamage)を追加し、updateEnemies関数内で敵が弾を撃つロジックを実装しました。
- リバイブ演出: handlePlayerHit関数にリバイブ時の演出(画面フラッシュ)を追加しました。
- ダメージ減少率の増加: PLAYERUPGRADESのdamagereductionの値を5%から15%に増やしました。
- 自機の当たり判定: PLAYERCOLLISIONRADIUSMULTIPLIERを0.75から0.5に減らし、当たり判定を小さくしました。
- ホーミングミサイルのアップグレード: レベルアップ時に弾速も上昇するように修正しました。
- チェーンライトニング: チェーンライトニングのエフェクトが、より稲妻らしく、見やすいように強化されました。
大体こんな感じで、これらの修正時に出た不具合の修正と、細かいバランス調整をしていった感じです。
今後も、もう少しパワーアップしてきます。
予定としては、音関連の追加と、見た目をもう少し良くするのと、システム面ももう少し手を入れていこうかなと思っています。
