前回、Cursorに対して
「Windows95に入っていたような懐かしのピンボールを作ってほしい」
と依頼してみました。
結果として、
- ボールは発射できる
- ピンボールっぽい見た目になる
ところまではできたのですが、
「フリッパーでまともに打てない」
という致命的な問題が発生しました。
そこで今回は、
「もっと詳細な要件を作ればうまくいくのでは?」
と思い、ClaudeにPRD(要件定義書)を作成してもらい、その内容をCursorに渡して開発してみました。
果たして改善されたのでしょうか。
結論から言うと、
今回は改善しませんでした。
むしろ前回より悪化しました。
前回の記事

Cursorに懐かしのピンボールを作らせてみた
今回の検証内容
今回の流れは以下です。
① ClaudeでPRDを作成
↓
② PRDをCursorへ投入
↓
③ アプリ開発
↓
④ 動作確認
前回との違いは、
自然文
↓
PRD
になったことです。
フォルダ比較ツールの開発では、PRDを挟むことでかなり改善した経験がありました。
そのため今回は結構期待していました。
ClaudeでPRDを作成
今回はClaudeに対して、
「Windows95の3D Pinballのようなピンボールゲームを作りたいので仕様書を作成してください」
という形で依頼しました。
すると、
- ゲーム概要
- 操作方法
- スコアリング
- フリッパー挙動
- ボール物理演算
- 画面構成
などが整理されたPRDが出力されました。
AI同士を組み合わせる、
Claude → Cursor
という流れです。
CursorへPRDを投入
生成されたPRDをそのままCursorへ渡しました。
期待としては、
「自然文で頼むよりかなり精度が上がるのでは?」
というものです。
しかし結果は想像とは違いました。
開発結果
結論です。
今回は、
改善しませんでした。
どころか、
前回より悪化しました。
動作画面

見た目だけを見ると、前回よりそれっぽく見えます。
しかし実際に遊んでみると、かなり厳しい状態でした。
発生した問題
問題① ボールがまともに発射されない
まず最初に気付いたのがこれです。
ボールを発射すると、本来であればレーンを上がっていき、ピンボール台の中を転がり始めるはずです。
しかし今回のアプリでは、
発射
↓
すぐ上部に衝突
↓
そのまま落下
↓
ゲーム終了
という状態でした。
プレイ開始直後に終わります。
前回は少なくとも、
「フリッパーで打てない」
という段階までは到達していました。
今回はそこにすら到達できませんでした。
問題② ボールがなくなると次のボールが出てこない
さらに問題だったのがこちらです。
通常のピンボールなら、ボールを落としても残機があれば次のボールがセットされます。
しかし今回のアプリでは、
ボール落下
↓
何も起きない
↓
ゲーム継続不能
という状態になりました。
結果として、
アプリを閉じる
↓
再起動する
↓
最初からやり直す
という運用になります。
ゲームというより、起動テストに近い状態でした。
問題③ フリッパー以前の問題になった
前回の記事では、
「フリッパーで打ち返せない」
ことが最大の問題でした。
しかし今回は、
「そもそもボールがゲームとして成立する位置まで来ない」
ため、フリッパー性能を評価するところまで到達できませんでした。
なぜPRDを使っても改善しなかったのか
今回の検証で感じたのは、
「PRDは万能ではない」
ということです。
フォルダ比較ツールのような業務アプリでは、PRDを作ることで期待通りの結果にかなり近付きました。
一方でゲーム開発は、
- 物理演算
- 衝突判定
- 状態管理
- リアルタイム制御
などが絡みます。
仕様を整理するだけでは解決できない部分が多そうです。
とはいえ、直せそうな気もする
一方で、今回の不具合を見ていて思ったこともあります。
実際に発生している問題は、
- ボールの初期位置
- 発射角度
- 衝突判定
- 残機管理
など、かなり具体的です。
そのため、
このバグを直して
↓
次はこれを直して
↓
さらにこれを直して
という形でCursorへ追加指示を出していけば、少しずつ改善していく可能性は十分ありそうだと感じました。
実際の開発現場でも、
作る
↓
テストする
↓
不具合を修正する
↓
またテストする
の繰り返しです。
AI開発も結局は同じなのかもしれません。
ただ今回はここまで
とはいえ、今回の目的は、
「懐かしのピンボールをサクッと作れるのか」
という実験です。
本格的にデバッグを始めると、記事一本では終わらなくなります。
今回はあくまで、
experimental release
ということで、ここで一区切りにします。
今後やるかもしれないこと
もし気が向いたら、将来的に
「Cursorに作らせたピンボールをどこまで改善できるのか」
という企画をやるかもしれません。
例えば、
- ボール発射バグ修正
- 残機システム実装
- フリッパー改善
- スコア改善
- エフェクト追加
などを段階的に直していけば、最終的に遊べるレベルになる可能性もあります。
そのときは、
「失敗作をAIと一緒に育てる」
という別の実験として記事にしてみたいと思います。
将来的に、
「Cursorに作らせたピンボールを改善してみた」
という続編記事を書く可能性も残しておきます。
GitHub Release
今回のソースコードはこちらです。
まとめ
今回の検証結果です。
| 項目 | 結果 |
|---|---|
| 自然文で開発 | 失敗 |
| ClaudeでPRD作成 | 失敗 |
| 画面再現 | △ |
| ゲーム再現 | × |
| 学び | PRD万能説ではない |
正直、今回はかなり期待していました。
フォルダ比較ツールではPRDの効果を感じていたためです。
しかしゲーム開発では事情が違いました。
それでも、
- AIに仕様を書かせる
- AIに実装させる
- 実際に動かしてみる
という検証自体は非常に面白かったです。
Cursor実験室らしく、
成功だけでなく失敗も公開する
というスタンスで記録として残しておきます。
次回は気分を変えて、
Cursorにテトリスを作らせてみた
に挑戦します。
今度はちゃんと遊べるゲームになるのでしょうか。
引き続き実験していきます。


