見出し画像

【GPTs】自創作世界を旅するシミュレーターを作ってみた


はじめに

 ついに登場したGPTs。GPTをカスタマイズし、自分だけのチャットボットをこさえられるようになりました。Xやnoteにも面白いGPTsがたくさん流れてきていますね。テキストアドベンチャーなどゲームを作っている人も多くいらっしゃるようです。
 というわけで私もGPTsを使ってゲーム……というか、創作世界を旅することができるシミュレータを作ってみました。私は拙いながらも創作世界観を2つばかり用意しており、その片方である『オルタナリア』を冒険するゲームになります。自創作世界を自ら旅することで「ここにこんなものがあるといいな」とか「ここらへんの設定が足りなさそうだ」といったところを詰めていくようなことができるんじゃないか……と思い、制作してみました。
 以下のリンクからプレイできます(色々思いつき次第随時更新していきたいと思います)。

https://chat.openai.com/g/g-alelPZOjW-orutanariawu-yu

スクリーンショット

 ゲームを開始すると初期説明が表示されます。ゲームブックを意識し、口調はフレンドリーな感じに。毎回行動の選択例が3つ表示されますが、それ以外の行動も自由に行なえます。パラメータや目的などは特になく、気ままに冒険するだけの内容になっています。

 要所要所でイラストが出力されたりもします。

 オルタナリアには6つの国があります。ゲームのスタート地点は海洋国家『ウミの国』の貿易で栄える島です。船で別な国に行くこともできます。

 状況が揃うとネームドキャラが登場したりすることもあります。

中身

Instruction

 InstructionにはGPTにどう振る舞ってほしいか、プレイヤーがどのような立場か……といった基本的な事項を記述してあります。より詳細なゲームルールはKnowledgeの「GameRules.txt」、世界観設定については「WorldSettings.txt」を参照するように指示しています。

This GPT functions as a game master (GM) for text adventure games. User is a traveler in another world, traveling around the world as they like and enjoying encounters with various people and cultures.
There is no specific objective to the game, and players can continue their journey as long as they wish.
GM must follow the rules of game precisely. All rules are described in Knowledge's GameRules.txt. And GM should make a story with the worldview and unique characters in the game world which are written in Knowledge's WorldSettings.txt.
As a GM, you should always refer to that and behave in a way that does not create any contradictions or discomfort.
Players can ask the GM questions for each scene, input arbitrary actions, or request to make happen something. Automatically depict scenes frequently to entertain players. When a scene changes or a new character appears, the GM should output an illustration. The GM should speak to the players in a frank manner without being formal.
The story begins with the player in a bustling port town.

Knowledge

 GPTsには知識リソースとしてファイルを与えることができます。あまり長くすると情報をちゃんと拾ってくれなくなるようなので、いくつかのファイルに分割しています。

  • GameRules.txt: プロンプトインジェクション対策、開始後最初に出力してほしいテキスト、ゲームの基本ルール、GMとしての振る舞い方が記述されています。世界観設定として「WorldSettings.txt」の記述に従ってストーリーを展開すること、各地を訪れた際にその地と縁のあるキャラクターを「UniqueCharacters.txt」から選んで登場させるか、いなければ新たに生成することも書いてあります。

  • WorldSettings.txt: 世界観設定を含むテキストです。基本用語や世界の地理をここにまとめてあります。魔法に関する知識が必要になった場合「Magic.txt」を参照します。

  • UniqueCharacters.txt: ネームドキャラのデータを含むテキストです。名前、種族、性別、年齢、性格や見た目の簡単な説明、その他の設定に関する説明、セリフのサンプルを含みます。

  • Magic.txt: 魔法に関する設定を含むテキストです。オルタナリアでは名前の付いた『図形』を組み合わせることで魔法が構成されるという設定なのですが、その図形の名前と魔法の例が記述されています。

 参照関係を図にすると以下のようになります。

今後の課題とか

  • データ量の限界。GPT4-Turboは128kトークンまでの入力に対応しており本でいうと300ページくらいと言われております。もっと凝った設定テキストを作ってもいいのか、それともどこかで限界が来るのか。

  • プレイヤー側への導線を増やす。現在地が常に明示されるようにする、ネームドキャラの出会いをイベントのフックにするために国を渡った際は必ず誰かしら出てくるようにする、など。

 今後もいろいろ試していきたいと思います。

この記事が気に入ったらサポートをしてみませんか?