現在ChatGPTを活用してunityでゲームを制作している。
ミニゲーム的なものではなく、ある程度長時間やりこめるゲームを制作したいと思い試行錯誤中。
ゲームに盛り込みたい要素
- キャラクターのランダム召喚
例えばモンスターファームのように、ランダム制のある召喚要素を作りたい。
DMMのAPIを使って、AVの情報からキャラクターを召喚できないか試行中。 - 多少は戦略性のあるバトルシステム
一般的なRPGの様なバトルシステムだと、単純作業的になってしまう懸念がある。
格闘ゲームの「読み合い」の様な、じゃんけんを発展させたようなバトルシステムを作りたい。 - ドット絵
Asepriteというソフトを使って、AI絵をトレースしながらキャラクターを制作してみた。
現時点の制作物
バグや不自然な点はあるが、何となく形にはなった。
バトルシステム
基本的なバトルの仕様は自分で考えて、ChatGPTにスクリプト化をお願いした。
- 3すくみの行動選択
物理攻撃はHPとスタミナ両方を減らし、魔法に勝つ
魔法はHPを減らし、ガードに勝つ
ガードはスタミナを減らし、物理攻撃に勝つ
という3すくみの行動選択で、じゃんけんの様にランダムに勝敗を決める。
ただし、「魔法はMPを消費する」、「スタミナが減ると不利になる」などの要素で戦略性を持たせたい。 - 必殺技とカウンター、回避
HPが少なくなると必殺技を出すことができる
必殺技に対しては唯一カウンターと回避が勝つことができる
カウンターは物理攻撃と魔法に負け、回避は失敗すると+αのダメージを受けるリスクがある。
いつ必殺技を出すか、カウンターを出すか、回避するかという読み合いの要素を持たせたい。
ChatGPTにゲーム制作を依頼
最初にChatGPTには以下の通り依頼をしてみた。
戦闘のルールについて説明します。
戦闘ルールは
・味方1体、敵1体(CPU)で戦うシステムです。
・味方と敵は自分の行動を決め、じゃんけんのようなイメージで自分の行動を出し合います。
・行動の種類は、攻撃、魔法、ガード、回避、カウンター、必殺です。
攻撃は魔法に勝つ…攻撃されると魔法の行動は中止される
魔法はガードに勝つ…ガードしても魔法攻撃は防げない、MPを消費する
ガードは攻撃に勝つ…ガードすると攻撃ダメージを防ぎ、相手のスタミナを減らす
必殺技は攻撃、魔法、ガードに勝つ…MPを消費する。カウンターには弱く、ダメージを受け、スタミナが大きく減る
カウンターは必殺技に勝つ…ただし攻撃、魔法、ガードには負ける
回避はすべての行動に確率で勝つ…回避された相手はスタミナを減らす
・スタミナが50を下回ると弱体化する
これを繰り返し、HPもしくはスタミナが0になった方が負けです。
戦闘ルールが明確になりましたね!
「じゃんけんのような行動選択+スタミナ管理」というシステムが、シンプルながらも戦略性を生みそうで面白いです。
次に、以下の要素を追加で考えると、よりバトルシステムが洗練されると思います。
1.行動の選択プロセス
プレイヤーが行動を選択する際の制限(時間制限など)はあるか?
CPUはランダムに選ぶのか、それともプレイヤーの行動を推測するか?
2.スタミナの回復手段
スタミナは毎ターン自然回復するか?
アイテムやスキルで回復できるか?
3.状態異常や追加効果
例えば「魔法は相手のスタミナ回復を阻害する」などの追加要素を入れるか?
クリティカルヒットや「次のターンの行動を予測できるスキル」などの要素を追加するか?
このあたりの詳細も決めると、より戦略的なゲームバランスが取れると思います!続きをお待ちしています!
こんな感じで、依頼した内容に不足している部分を指摘したり提案をしたりしてくれた。
スクリプト
ChatGPTに依頼したスクリプトは、ほぼ完璧というか、自分の実力以上のものが返ってきた。
ただ、スクリプトが長くなると、コードが省略されたり消えたりするので、必要に応じて再生成させたり、自分で修正したりする必要があった。
今後
今後はバトル部分を充実させるとともに、召喚システムやドット絵制作を進めていきたい。