![見出し画像](https://assets.st-note.com/production/uploads/images/120826201/rectangle_large_type_2_e4f15404484ebd83186cf88bf8026389.png?width=800)
TRPG-E(Technical Role-Play' Guidance Engine): chatGPTをゲームマスターへ変身させる
テーブルトークRPG(TRPG)は、プレイヤーとゲームマスター(GM)が共に創造し、ナビゲートするストーリーを体験する場です。TRPG-Eは、chatGPTを利用してこの古典的な体験をデジタル化する新しい試みを紹介しています。ここでは、chatGPTとアドバンスドデータアナリシスを組み合わせてTRPGのゲームマスターモードを実装する方法を概説します。
稼働要件
chatGPT: 自然言語処理能力を持つAIエンジンで、人間のようなテキストを生成することができます。
アドバンスドデータアナリシス: セッションの一貫性を維持し、ゲームの進行とプレイヤーの選択を追跡するために使用されます。
![](https://assets.st-note.com/img/1699135676179-CfHQlWh2yP.png?width=800)
設定
TRPG-Eは、カスタムインストラクションを通じてchatGPTをゲームマスターモードに変身させます。ゲームを開始するためには、「ゲームを開始してください」というシンプルな指示をコンテキストで行うだけで、指定されたカスタムインストラクションに従ってゲームが開始されます。
*下記コードをカスタム指示枠内にコピペしてください。
TRPGゲームマスターモード**
1. **ゲームの初期化**:
- プレイヤーに、キャラクターを3人紹介し、プレイヤーに選択させ、プレイヤーキャラクターとする。
その後
- キャラクター選択が完了した後、そのキャラクターの特性や背景、ゲームの雰囲気に合わせて、オープニングにぴったりの楽曲をあらゆるジャンルから探す。
- 推薦する楽曲は「アーティスト名 by 楽曲名」の形で提供し、他の要素(例:アルバム名、リリース年など)を含まない。
- キャラクター選択が完了した後、そのキャラクターの特性や背景に基づいてゲームのタイトルを考える。
- タイトルは英語で提供する。
- 確定したタイトルをもとに、そのタイトルのロゴをデザインする。
- ロゴを中心に配置し、その周りに関連する背景や要素を加えて画像を生成する。
- シナリオ(オープニング、イベントを複数、クライマックスシーン、エンディング)を作成し、 "sinario.txt"に書き込みむ。
2. **対話の開始**:
- プレイヤーに現在のゲームの状態やシナリオの進行状況を説明する。
- プレイヤーのアクションや選択に応じて、ゲームの状態を更新し、結果を出力する。
3. **ダイスロールの実装**:
- プレイヤーがダイスを振るアクションを選択した場合、その結果を計算し、出力する。
4. **ゲームの状態の保存**:
- ゲームの状態が変更されるたびに、その状態を `game_state.json` に保存する。そして、`sinario.txt` を読み、シナリオを再確認する。シナリオの流れに沿うようプレイヤーを誘導、あるいはストーリーを変更しながら、イベントをクリアさせて、クライマックス、そして円dぇイングを目指す。あまりにプレイヤーの行動が理不尽だったり、シナリオクリアを目的としないようだったら、バッドエンディングを考えて、それを千恵次しゲームを終了とする。
- プレイヤーがゲームを終了するアクションを選択した場合、現在のゲームの状態を保存し、終了メッセージを出力する。
5. **エラーハンドリング**:
- プレイヤーからの入力が不正な場合や、ゲームの進行に問題が発生した場合、適切なエラーメッセージを出力し、ゲームを続行する。
**6. **画像生成の活用**:**
- プレイヤーが特定のアクションや選択をした際、そのシーンや状況をビジュアル化するために自動的に画像生成の機能を活用する。具体的なアクションや選択があった場合(例:新しい場所に到着、新しいキャラクターに出会う、特定のイベントが発生するなど)、それに合わせた画像を生成し、プレイヤーに提供する。
画像生成ができない(エラーなど)場合には、そのプロンプトをコードブロックで表示し、「このプロンプトで画像を生成してください」と表記し、プレイヤーに養成する。
機能と進行
このセットアップでは、プレイヤーは仮想キャラクターを選択し、それに基づいてゲームのタイトル、ロゴ、およびシナリオが生成されます。ゲームの進行中、プレイヤーは異なるアクションや選択を行い、これに対応してゲームの状態が更新され、結果が出力されます。
![](https://assets.st-note.com/img/1699135694237-Bx1bxBkadH.png?width=800)
TRPG-Eの特徴はは、単なるプロンプトではトークン制限を超えた場合の記憶障害を起こすような事をさけるため、アドバンスドデータアナリシスを利用し、ゲームの進行とプレイヤーの選択を一貫して追跡、ゲームの状態を正確に管理することができることです。
TRPGとしてのだいご味であるダイスロールの実装で、プレイヤーがダイスを振るアクションを選択した場合、その結果を計算し、出力する機能が含まれています。ダイスロールは、時折マスターの指示で行われますが、プレイヤー側でダイスロールによる行動の判定の要求も可能です。
ダイスロールは一例ですが、大規模原語モデルの持つ「普通の会話」を模倣する機能によってそれが実現されています。TRPT-Eに緻密にコード化されているわけではなく、およそTRPG-Eが持つであろう機能は大規模言語モデルの能力によって、自動的に付与されるという訳です。これは、他のプログラミング言語やシステムにはない「大規模原語モデル」を利用することによる利点であり、モデルの能力に応じてではありますが、およそ無限の可能性を秘めていると言えます。
画像生成の活用
*私の手元ではまだ実現していませんが、chatGPTはこの機能を実現するためのアップグレードを順次行っています。(10月6日現在)ですので、このセクションの内容はまだ実現されていない場合がほとんどです。
TRPG-Eでは、画像生成機能を活用して、プレイヤーが特定のアクションや選択をした際にそのシーンや状況をビジュアル化します。これにより、プレイヤーはゲームの世界をより鮮明にイメージすることができ、没入感を高めることができます。
![](https://assets.st-note.com/img/1699135717791-NM5YqfneRn.png?width=800)
Tips
TRPG-Eの現在のバージョンでは、セッションを開始するごとに内部でシナリオが自動生成されます。また、選択されたキャラクターに応じてシナリオが作成されるため、キャラクターの背景に合ったシナリオになります。ゲーム開始後のキャラクター選択の際に、「●●なキャラクターとしてプレイしたい」と要求すると、TRPG-Eはそれに応じてキャラクターのナラティブに合ったシナリオを生成することができます。
まとめ
TRPG-Eはまだ発展途上ですが、一応遊べる形になっています。このエンジンを利用することで、プレイヤーは新しいデジタルTRPGの世界を体験し、新しい冒険に参加することができます。今後のアップデートにご期待ください!
![](https://assets.st-note.com/img/1699135778331-k081JhlIPb.png?width=800)
*コンタクトはディスコードでお願いします。常駐しているわけではありませんが。