AI時代の新しいゲーム制作フロー
Twine×Gemini×Cursor
プログラミング不要?シナリオ作成も任せる?
爆速テキストアドベンチャー開発実験レポート
はじめに
「テキストアドベンチャーゲームを作ってみたいけど、プログラミングもシナリオ作成も大変そう…」そう思っていませんか?
今回、Twineというビジュアルノベルツールでゲームの骨子を作り、Google Geminiにシナリオを大幅に肉付けしてもらい、CursorというAI搭載エディタにゲームエンジンそのものを書き出してもらう、という実験的な開発フローを試してみました。
💡 この手法のポイント
この手法を使えば、プログラマーやシナリオライターでなくても、アイデアを素早く形にできるかもしれません。本記事では、その具体的な手順と可能性についてレポートします。
使用したツール
🔗 Twine
オープンソースのテキストアドベンチャー制作ツール。ノードを線で繋ぐだけで、複雑な分岐を持つ物語を視覚的に作成できます。
🤖 Google Gemini
ご存知、Googleの大規模言語モデル。今回はシナリオの拡張とデータ整形を担当する「AIシナリオライター」として活躍します。
⚡ Cursor
AIを搭載した高機能コードエディタ。ファイルやリポジトリ全体をAIが理解し、対話形式でコーディングを進める「ヴァイブコーディング」が可能です。
制作フロー
Twineでゲームの骨子(プロトタイプ)を作る
まず、Twineを使ってゲームの基本的な流れと分岐を作成します。完璧なものである必要はありません。「プレイヤーがどんな選択をするか」という最小限の構造を作るのが目的です。
今回は、伝説の奇ゲー『たけしの挑戦状』のパロディとして、『ヤケシの挑戦状』というタイトルで、以下のような簡単な分岐を4つほど作成しました。
💡 重要なポイント
この段階で重要なのは、完成形を目指すのではなく、twee形式でエクスポートすることです。tweeは人間にもAIにも読みやすいテキストベースのフォーマットで、後の工程でAIにコンテキストを理解させるのに非常に役立ちます。
書き出した yakeshi.twee の中身(一部):
:: StoryTitle
ヤケシの挑戦状
:: sStart {"position":"525,200","size":"100,100"}
商店街で福引の券をもらった。どうする?
[[👉福引していく->pDrawFukubiki]]
[[👉そのまま帰る->eGoHome]]
:: pDrawFukubiki {"position":"525,325","size":"100,100"}
「あたーりー!」
福引の賞品をもらった!けど・・・
これは、なんだ?地図か?
[[👉めんどくさいから捨てる->eGoHome]]
[[👉図書館に行って調べる->pGoLibrary]]
Google Geminiで物語を拡張する
次に、先ほど書き出した yakeshi.twee ファイルをGoogle Geminiにアップロードし、シナリオを拡張してもらいます。ここでのプロンプトが肝心です。
📝 プロンプト例1:シナリオ拡張
🎨 プロンプト例2:データ整形
この指示により、Geminiは pGoLibrary のような空だったパラグラフに内容を追加し、さらに新しい展開(例えば、怪しい老人が現れる、地図が特定の島の物だと判明するなど)を自動で生成してくれます。
✨ 成果
このような追加指示で、選択肢の視認性を高める、といった細かな調整も可能です。例えば、「捨てる」なら「🗑️」、「調べる」なら「🔍」のように、より直感的な表現に変更してくれます。
AIとの対話を通じて、わずか数分でゲームのシナリオが何倍にも豊かになりました。
Cursorでゲームエンジンを実装する(ヴァイブコーディング)
シナリオデータが完成したら、いよいよゲームとして動かすためのHTMLファイルを作成します。ここでCursorのAgentモードの出番です。
拡張された yakeshi.twee を専用フォルダに置き、Cursorでそのフォルダを開きます。そして、Agent(AIチャット)に以下のように指示します。
🤖 プロンプト例:ゲームエンジン生成
@ を使ってファイルを参照させることで、CursorのAIは yakeshi.twee の内容と構造を完全に理解します。その上で、tweeファイルを解釈し、パラグラフを表示し、[[選択肢->次のパラグラフ]] というリンクをクリックすると画面が切り替わる…というロジックを持ったHTML、CSS、JavaScriptコードをゼロから生成してくれます。
🎮 ヴァイブコーディング
もはやコーディングというより、AIに指示を出しているだけなので「ヴァイブコーディング」と呼ぶのがしっくりくるかもしれません。
まとめと考察
今回の手法により、以下のメリットが確認できました。
⚡ 圧倒的な開発スピード
シナリオの骨子と最終的な実装をAIに任せることで、人間は「ゲームの面白いアイデア」と「AIへの的確な指示」に集中できます。
🚀 専門知識の壁を越える
プログラミングやシナリオライティングの深い知識がなくても、ツールを組み合わせることでアイデアを形にできます。
🔄 柔軟なイテレーション
シナリオの修正や追加も、tweeファイルを編集して再度AIに読み込ませるだけで簡単に対応できます。
🤖 AIとのパートナーシップ
AIを単なるアシスタントではなく、「シナリオライター」や「プログラマー」といった役割を持つパートナーとして捉えることで、これまでにないスピードと柔軟性を持ったゲーム開発が可能になるかもしれません。
これからの展望
tweeファイルの新たな可能性
今回の実験では、tweeファイルをHTMLゲームエンジンに変換しましたが、これは始まりに過ぎません。tweeフォーマットの標準化された構造は、様々な用途に活用できる可能性を秘めています。
🎮 マルチプラットフォーム展開
同一のtweeファイルから、Web版、モバイルアプリ、デスクトップゲーム、さらにはVRやARゲームまで、様々なプラットフォーム向けのゲームを自動生成できるシステムの構築
🔄 動的コンテンツ管理
tweeファイルをCMSのように扱い、非プログラマーでもゲームのシナリオやバランス調整を行えるシステム。リアルタイムでのコンテンツ更新も可能
🤖 AI駆動のナラティブ生成
プレイヤーの行動に応じて、AIが既存のtweeデータを参考に新しい分岐やエンディングを動的に生成する、無限に拡張可能なストーリー体験
📊 データドリブン開発
プレイヤーの選択データを分析し、tweeファイルの構造を最適化。どの分岐が人気か、どこで離脱が多いかを把握して自動でシナリオを改善
🚀 次世代ゲーム開発基盤として
tweeファイルを単なる中間データではなく、ゲームの設計図そのものとして扱う新しい開発パラダイムを目指しています。シナリオライターが書いたtweeファイルが、そのままマルチプラットフォームのゲームとして動作する——そんな未来を実現したいと考えています。
これにより、アイデアからプレイアブルなプロトタイプまでの時間を大幅に短縮し、より多くのクリエイターがゲーム制作に参加できる世界を作っていきたいと思います。