![見出し画像](https://assets.st-note.com/production/uploads/images/130735422/rectangle_large_type_2_0b526f725351e4af8787b4fd2a3b1543.jpeg?width=1200)
GPTsでRPG作ってみた
GPTsでRPGのゲームを作ってみました。その名も<AI-RPG1.0>
さっき思い立って作り始めました。総製作時間3時間のクソゲー第2弾です。
ゲームとして楽しむというより、GPTsの理解を深めるという使い方でお願いします。
GPTsはchatGPT plusプラン以上の方となります。
Instructionを載せているので、コピペしたら他のAIでも動くかもしれません。
概要
敵と戦って、経験値をためてレベルアップを繰り返すだけのゲームです。
敵はstrong, normal, weakだけ。
ユーザーの選択(action)は戦う、逃げる、終了するの3つだけ。
手動でゲームデータをsave, loadできます。
プレイ画面
1番を入力すると敵と戦います。
何回か戦うとレベルアップします。
![](https://assets.st-note.com/img/1707809314501-6tDoaOGeW1.png?width=1200)
英語でメッセージが表示されてますが、「レベルアップしました。現在レベル2です。最大HPが11になり、HPが全回復しました。現在の経験値が0になり、次のレベルまでの経験値は4です」みたいな感じの意味です。Instructionに指示していない文章を、GPTsが勝手にそれっぽく作っています。
3を入力するとゲーム終了です
![](https://assets.st-note.com/img/1707809299071-C0oPn4Wf7C.png?width=1200)
「If you wish to return to the adventure later, feel free to start again.」とか、終了時のメッセージとか指示していないのにAIが作ってくれます。というか、これはアドベンチャーゲームとAIが判断したようです。
Save, Load
手動でSave, Loadもできます。
「Lv: 1 HP: 5/10 exp: 1/3」のように書いたテキストファイルをGPTsにアップロード(ドラッグアンドドロップ)するとゲームデータをLoadできます。
SaveしたいときはGPTsの出力をテキストファイルにコピペしてください。
Lv99のセーブデータを作ったりとチートし放題ですが、動作の検証に使える以外はあまりメリットはありません。
改良点
良い言い方をすると、とてもシンプルな作りで拡張性に優れています。悪い言い方をすると単なる手抜きです。
職業とか、アイテムドロップとか、回復薬とか、魔法とか、装備とか、スキルとか、トロフィーとか、いろいろ夢は膨らみますが、作るのが大変そうなのでパスしました。規模を大きくするならknowledgeファイルを準備したほうがいいかもしれません。
また、入力ごとにGPTsが内部でpythonファイルを作っているらしく、出力まで10秒くらいかかるのでイライラします。夜のコアタイムだとエラーが出るかも。
前に作った<AI脱出ゲーム1.0>だとコードを生成せずにサクサク動いたんですけどね。
![](https://assets.st-note.com/img/1707808380573-2GQ6AWZdsP.png?width=1200)
コメント付きでとても丁寧にコーディングしてくれてます。人間が読むことが前提なのでしょうか?
丁寧に書いてくれるのはいいのですが、内部の設定がバレます。どうせ仕様がバレるなら、ということでGPTsのInstructionを公開することにしました。
Instruction公開
GPTs作りの参考のためにInstructionを公開します。
💻に挟まれた部分がInstructionです。
💻RPGゲームの進行役をお願いします。
[ルール]
-ユーザーの入力に従い、敵と戦いを繰り返して成長していくゲームです。
-HPが0になるとキャラクタが倒れ、ゲームオーバーです。
-敵に勝つとexpが増加します。normalの敵:1増加、strongの敵:3増加
-exp≧maxexpになるとvが1増え、maxHPが1増え、HPがmaxHPと等しくなり、expは0になり、maxexpは1増加ます。
-初期状態ではLv: 1, HP: 10, maxHP: 10, exp:0, maxexp: 3ですが、アップロードファイルがある場合はアップロードファイルの初期状態からゲームが始まります。
[進行]
-ユーザーが「1 」あるいは「fight」あるいは「start」と入力した場合は、敵と戦闘になります。
-ユーザーが「2 」あるいは「escape」を選んだ場合、敵をstrong, normal, weakからランダムで選び直して出力します。
-ユーザーが「3 」あるいは「exit」あるいは「exit game」を選んだ場合、ステータスを再表示し、応答を終了します。
[enemyの種類]
-enemyは3タイプあります。出力する際に、ランダムでstrong, normal, weakのなかからひとつ選んでください。
[戦闘]
1.strongの敵と戦うと、50%の確率で勝利し、勝利した場合はHPが1減り、expが3増えます。負けた場合はHPが3減り、expが1増えます。
2.normalの敵と戦うと、必ず勝利して、HPが1減り、expが1増えます。
3.weakの敵と戦うと、必ず勝利して、HPは変わらず、expが1増えます。
[出力]
-開始時の出力:
「Lv: 1 HP: 10/10 exp: 0/3 enemy: normal
action 1: fight 2: escape 3: exit game」
-ゲーム中はステータスを以下のように表示します。
「Lv: 1 HP: 10/10 exp: 0/3 enemy: normal
action 1: fight 2: escape 3: exit game」
-ユーザーが3 exit gameを選んだ場合はLv, HP, max-HP, exp, max-expを以下のように表示します。
「Lv: 1 HP: 10/10 exp: 0/10
thank you for playing」💻
あとがき
タイトル画像は<AIイラスト描くよ>で生成しました。
前回の<AI脱出ゲーム1.0>に続いて、今回はRPGにしましたが、私の意図したものとは別のものになりました。pythonが使える人は自分でゲームを作ったほうが早そうです。
と書いているうちにバグを発見しました。が、おそらくGPTsが上手に解釈してくれているかもしれません。すごいなAI!
クソゲーばっかり作ってすみません。ゲームってこんなに簡単に作れるのか、自分ならもっと違うゲーム作れそうと思っていただければ幸いです。
クソゲー第3弾も案は決まってるので時間ができたら作ります。今回は意図したものと違うクソゲーになりましたが、次こそ真のクソゲーを作りたいです。
それではみなさん、Have a good AI !
この記事が参加している募集
この記事が気に入ったらサポートをしてみませんか?