まずは以下のゲームを遊んでみてください(5分で終わります)。ほぼ生成AIだけで作りました。
現在のスコアボード
概要
1作目ということでまずは生成AIでRPGを完成させることを目標に、いわゆる王道RPGを作成してみました。町やダンジョン・成長要素などはなく、ChatGPTが作成したプロローグがひとしきり流れた後に、同じくChatGPTが決めたレベル・装備・消費アイテムなどを持って、いきなり四天王+魔王の3連戦になります。
ただ、それだけだとゲームとして味気ないので最後にスコアランキングを実装しています。受けたダメージやかかったターン数などから戦闘スコアを計算し、3連戦の合計スコアがプレイスコアとして記録されます。これはオンラインで同期していて他の人と競い合えるようになっています。(これもChatGPTをベースにプラグイン作成しました)
味方キャラクター
イメージ | ||||
プロフィール | レオンハルト 剣士 Lv.50 光属性 | アイリス 魔法使い Lv.48 闇属性 | ガルヴァン 戦士 Lv.49 土属性 | セリナ 癒し手 Lv.47 水属性 |
能力(未装備時) | HP:4,500 MP:200 攻撃:700 防御:600 魔攻:300 魔防:500 敏捷:550 運:400 | HP:3,500 MP:800 攻撃:400 防御:300 魔攻:850 魔防:700 敏捷:450 運:500 | HP:5,000 MP:150 攻撃:750 防御:700 魔攻:200 魔防:400 敏捷:500 運:350 | HP:3,800 MP:600 攻撃:350 防御:450 魔攻:500 魔防:600 敏捷:400 運:550 |
スキル | 光の剣 疾風突き 鋼の意志 獅子奮迅 万全の防御 | 闇の波動 闇の刃 黒霧 精神統一 星の加護 | 大地震 無双乱舞 鉄壁 戦士の叫び 怒りの一撃 | 癒しの泉 浄化の雨 祈りの歌 守護の盾 生命の息吹 |
敵キャラクター(四天王)
イメージ | ||||
プロフィール | カインヴァル 四天王1 炎属性 | エルフリーデ 四天王2 氷属性 | ベルゼブ 四天王3 雷属性 | ティアマト 四天王4 風属性 |
能力 | HP:7,500 MP:500 攻撃:850 防御: 750 魔攻:400 魔防:650 敏捷:800 運:450 | HP:6,800 MP:900 攻撃:600 防御:600 魔攻:850 魔防:800 敏捷:750 運:550 | HP:7,200 MP:700 攻撃:800 防御:700 魔攻:750 魔防:700 敏捷:850 運:500 | HP:8,000 MP:600 攻撃:800 防御:850 魔攻:700 魔防:800 敏捷:600 運:700 |
スキル | 炎の剣 火炎爆発 灼熱の波 燃える盾 炎の呼吸 | 氷結の刃 凍結波動 零度の息吹 氷の壁 冷気の嵐 | 雷撃 稲妻の矢 電撃波 雷鳴の轟き 電光石火 | 旋風刃 竜巻 風の呪文 疾風怒濤 大気の支配 |
敵キャラクター(ラスボス)
イメージ | |
プロフィール | ザルドラク 魔王 闇属性 |
能力 | HP:15,000 MP:1,200 攻撃:900 防御:800 魔攻:999 魔防:950 敏捷:700 運:600 |
スキル | 終焉の光 闇の渦 魂の吸収 禁断の呪文 暗黒爆発 |
生成AIで作成したもの/作成しなかったもの
生成AI(ChatGPT、DALL-E3)で作成したものは以下になります。今後それぞれ解説ページを作るので、そこで詳しい説明を載せていきます。
ストーリーラインやプロローグなどで使う背景画像はすべてChatGPTで作成しました。また、味方や敵キャラクターの能力やスキルなどデジタル情報もChatGPTでJSONを作成したものをPythonで変換して、RPGツクールMZ用のJSONとして使っています。
生成AIで作成したもの
- ストーリー
- 背景画像
- 味方キャラクターの見た目・能力
- 敵キャラクターの見た目・能力
- スキル
- 装備アイテム
- 消費アイテム
逆に手動で作成したものは以下になります。今回はマップやキャラクターの歩行グラフィックはありません。
生成AIで作成しなかったもの
- イベントコマンドの組み立て
- シーン遷移
- スキルアニメーション
- 音楽
- スコアランキングプラグイン(半自動)
- マップ
- キャラクター歩行グラフィック
エターナルクエストを作成するまでの詳細な手順は以下の投稿にまとめていますので、作り方が気になる方がいればぜひ参考にしてみてください。
生成AIのRPG完成度
ストーリー(70点)
プロローグや途中のシーンなど、Web版のChatGPTに作ってもらいました。
文章で簡潔に説明する部分に関しては、人間が書いたものと比較しても遜色ないと感じました。ChatGPTはストーリーテリングにおいて自然で流れるような文体を生成する能力を持っています。
しかし、詳細な指示が必要なイベントシーン(例えば、キャラクターがA地点からB地点へ移動し、特定の画面効果を発生させる場面など)に関しては、いくつかの課題が残りました。具体的には、マップの構成をChatGPTにインプットとしたり、ChatGPTが提案する演出をRPGツクールのイベントシステムにどう落とし込むかという点です。これらは今後の研究課題として引き続き深堀りしていきたいと考えています。
敵や味方の能力値(95点)
能力値についても、Web版のChatGPTでJSON形式で作成してもらいました。特に文句なしの素晴らしい出来だと思いました。
味方キャラクターの能力については、戦士系や魔法使い系などの典型的な役割に基づいて、それぞれの特徴を反映したステータスが提供されました。これらの値はそのままゲームに適用し、各キャラクターの個性を際立たせています。
一方で、敵キャラクターの能力に関しては、四天王のコンセプトを巧みに理解し、四天王1~4と魔王に向けて徐々に強くなるように設定されました。特に注目すべきは、各敵キャラクターが主人公パーティーよりも強力なステータスを持っている点です。これは主人公パーティーが多人数になることを考慮した洞察力のある配慮だと感じました。
この結果、戦闘は比較的短いものの、緊張感に満ち、油断するとゲームオーバーになる可能性があるという、適度な難易度のゲームが完成したのではないかと思っています。
アイテム(50点)
アイテムについてもWeb版ChatGPTを使い、JSON形式で作りました。
しかし、このアプローチにはいくつかの課題が浮かび上がりました。ゲームをプレイした人は感じたかもしれませんが、敵と仲間のステータスが高く設定されている中で、アイテムの効果量が低く設定されてしまい、期待したほどの価値をアイテムが持たない結果になりました。
今回の経験から、ChatGPTにアイテムの効果量を設定する前に、ゲーム内でのステータス値の水準を具体的に示すことが重要であると学びました。これにより、適切な回復量や効果を持つアイテムを作成するための基準をChatGPTに提供することができます。今後はこの点に注目し、改善を図っていく必要があると考えています。
スキル(70点)
敵や味方のスキルもアイテムと同じような構造でWeb版ChatGPTを使い、JSON形式で作りました。
スキルのダメージ計算式は、RPGツクールに元々含まれるサンプルスキルを基に構築しました。具体的には、計算式の固定値部分(例:「600 + a.atk * 4 – b.def * 2」の600の部分)をChatGPTに決定してもらいました。これは完全自動のプロセスではなかったため、AIが完全に生成したものではないかもしれませんが、ゲームのバランスを考える上で良い影響を与えています。
特に今回は各メンバー5個のスキルを作るように指示したのですが、攻撃系スキルだけでなく状態異常を与えるものや能力を一時的に上昇させるものなどバランスよく作ってくれたところが高評価でした。
一方、スキルのアニメーションなどはまだ手が出せていないのでRPGツクールデフォルトのものを使っています。将来的にはここについても今後AIで作れたら面白いなあと思っています。
まとめ
今回初となるほぼ生成AIのみでRPGを作成しました。
まだ一本道だったり、マップ上でキャラを動かすまでには至っていないですが、RPGの基本となるステータス・アイテム・スキルだったり、ストーリーを演出する背景画像やストーリーテリングは十分活用することができました。
これをはじめの一歩として、遊ぶたびに毎回ストーリーやキャラクターが変化し、無限に遊べるRPGというのを目指していきたいと思うので、よろしくお願いします!!!