「LocalLLM_Chat」AI会話できるプラグイン(ローカルLLM)“RPG Maker MZ: Plugin for AI Conversations (Local LLM)” - LocalLLM_Chat.js

▼「LocalLLM_Chat」AI会話できるプラグイン(ローカルLLM)“RPG Maker MZ: Plugin for AI Conversations (Local LLM)”(Ritsuki様作) - LocalLLM_Chat.js
https://plugin-mz.fungamemake.com/archives/8786
LMStudioやOllamaを使いゲーム内でAI会話ができるRPGツクールMZ用プラグインです。 ローカルLLMでのAI会話をRPGツクールMZでできるようにします。※「Thinking(思考型・推理型)モデル」は対応していません。 ※ローカルLLM専用です。ChatGPTやGeminiなどクラウド型のAIには対応してません。 ※元々自分用に作ったものだから、他の環境でちゃんと動くかわからないしバグがあるかも…<本プラグインの導入・使用はすべて自己責任でお願いいたします> ■このプラグインを使ったちょっとしたサンプルゲーム(AI会話できるRPG)作りました。参考にどうぞ■https://ha6mwljz4z93.blog.fc2.com/blog-entry-156.html★<更新履歴> 2026/01/09 v1.1.0 セキュリティ強化(既存セーブデータとの互換性: 基本的に互換性がありますが、念のためバックアップを推奨。当プラグインを上書きして下さい) 2025/12/11 v1.1.0 公開
ふりがな:えーあいかいわできるぷらぐいんろーかるえるえるえむちゃっと
機能概要: LMStudioやOllamaを使いゲーム内でAI会話ができるRPGツクールMZ用プラグインです。 ローカルLLMでのAI会話をRPGツクールMZでできるようにします。※「Thinking(思考型・推理型)モデル」は対応していません。 ※ローカルLLM専用です。ChatGPTやGeminiなどクラウド型のAIには対応してません。 ※元々自分用に作ったものだから、他の環境でちゃんと動くかわからないしバグがあるかも…<本プラグインの導入・使用はすべて自己責任でお願いいたします> ■このプラグインを使ったちょっとしたサンプルゲーム(AI会話できるRPG)作りました。参考にどうぞ■https://ha6mwljz4z93.blog.fc2.com/blog-entry-156.html★<更新履歴> 2026/01/09 v1.1.0 セキュリティ強化(既存セーブデータとの互換性: 基本的に互換性がありますが、念のためバックアップを推奨。当プラグインを上書きして下さい) 2025/12/11 v1.1.0 公開
利用規約(ライセンス): MITライセンス
作者:Ritsuki
作者サイト:https://ha6mwljz4z93.blog.fc2.com/
解説ページ:https://ha6mwljz4z93.blog.fc2.com/blog-entry-154.html
直接ダウンロード:Zipファイルダウンロードページ:https://ha6mwljz4z93.blog.fc2.com/blog-entry-154.html
ファイル名:LocalLLM_Chat.js
プラグインのヘルプ:
* @help * <バグやプラグインの修正で動かなくなる可能性が大いにあるので、 * 自分用か身内用の小規模なゲーム推奨。商用や大規模なゲームには向かないです> * <本プラグインの導入・使用はすべて自己責任でお願いいたします> * * ☆簡単な基本的な使い方 * ・LMStudioの開発者で使用するモデルを選択、Status:Runningをオン(LMStudioの場合) * ・APIのURLとモデル名はゲーム内のメニュー画面「AI設定」から設定できます。 * ・AI会話させたいキャラのイベントエディターの実行内容でプラグインコマンド。 * ・プラグイン名で当プラグインを選択 * ・各種設定を入れます。詳しくは<<プラグインコマンドの説明>>にて。 * * <<プラグインの設定-パラメータ説明>>[]内はデフォルト値 * ■ プレイヤー設定編集を許可[false] * ONにするとゲーム中メニューのAI設定でプレイヤーや自分でプレイヤー設定を * 決めることができます。 * ON時はプラグインコマンドで設定したプレイヤー設定は無視されます。 * ※「私は~」より「プレイヤーは~」の方がAIに伝わりやすいです。 * ■ 自動改行[ON] * AIの返答がウィンドウ幅に収まらない時自動改行します。 * 別の自動改行プラグインを使いたい時にオフにして下さい。 * ■ AI会話時SEファイル[なし] * SEファイルを設定すると会話開始時にちゃんとAIにリクエストが渡ったか * 音が鳴り確認しやすくなります。 * ■会話ログ参照モードを有効化[false] * 名前有りキャラクターが直近の会話ログを参照して会話をするかどうか * * <<ゲーム内AI設定説明>> * ■ API URL * 標準のURL * LM Studio: http://localhost:1234/v1/chat/completions * Ollama: http://localhost:11434/v1/chat/completions * ■ モデル名 * LMStudio: google/gemma-3-12bなど。(LMStudioで確認コピペ推奨) * Ollama: gemma3:4b,gpt-oss20bなど (アプリのモデル、ollama listなどで確認) * 【重要:使用するAIモデルについて】 * 「Thinking(思考型・推理型)モデル」は対応していません。 * AIの思考内容(...)がそのままメッセージ枠に表示されたり、思考プロセスで * 大量の文字数を使うため会話が表示されなかったりします。 * ■ 最大トークン数 * AIが一度の会話で生成できる最大の文字数(正確にはトークン数)を制限します。 * 値が大きいほどAIの計算量が増えるため、応答に時間がかかり、サーバー側の負荷も高くなります。 * 応答の途中でこの上限に達すると、AIのセリフが文の途中でブツッと切れてしまいます。 * ■ Temperature * 低い値だと、設定したキャラクターの性格や指示に忠実で、論理的な会話になります。 * ただし、返答がパターン化したり、面白みに欠けることがあります。 * 高い値だと、自由奔放で、予期せぬユニークな返答をしたり、創造的な会話になりやすいです。 * ただし、設定を無視したり、たまにおかしな言葉を話すことがあります。 * ■ 最大待機時間 * AIからの返答が遅い場合何秒待つかの設定です。 * ■会話履歴をクリア&件数確認 * 会話ログ参照モードを有効化をONにした時表示されます。 * キャラクターの会話履歴を削除できます * また会話履歴が保存されている名前と件数が確認できます。 * ■保存する会話数 * 会話ログ参照モードを有効化をONにした時表示されます。 * 「プレイヤー名」を設定したキャラの直近の会話ログの保存数を設定できます。 * ※保存数を多くしても保存できる数はモデルの性能(コンテキスト)やプロンプトや * 会話の文字数(トークン)に依存するので設定数保存・参照できるとは限りません * ※プレイヤーにその旨をゲーム内などで知らせると良いでしょう。 * ■プレイヤー設定(AI用)の編集 * プレイヤー自由設定編集を許可をONにした場合に表示されます。 * プレイヤーが自身でプレイヤー設定を入力できます。 * イベントコマンドのプレイヤー設定の代わりに入ります。 * * <<プラグインコマンドの説明>> * ◯AI会話開始 * ■キャラクター名 * 話す相手のキャラ名です。 * ★重要★AIには送られません。 * 名前ウィンドウに表示される名前です * 会話履歴を保存する際のキャラクター識別にも使われます * 同じ名前のキャラクターは会話履歴を共有します * 空欄にすると、名前ウィンドウが表示されず、会話履歴も保存されません * ■キャラクター設定 * 話す相手のキャラ設定です。 * キャラクターの名前、性格、口調、設定などを詳しく書いてください * ★重要★ キャラクターの名前もここに書いてください * ■状況設定(追加) * 各種設定の後に付け加えるプロンプトです。 * 「魔王が来た!」と書くより、 * 「魔王が来た!会話相手の返事をしつつ必ず魔王が来た話題をする事」 * など、どう反応していいか書いたり、もっとこう喋ってとかこう喋らないでなど * しっかり指示するといいです。 * 会話履歴参照モードでは固定テキストでその状況について話してなどと会話を促さないと * 過去のログに話が引っ張られることが多いです。 * ■顔グラフィック * 話す相手キャラの顔グラフィックのあるファイルを選びます。 * ■顔グラフィックインデックス * ※顔グラフィックの番号について:(0からなのに注意!) * 左上から右へ: 0, 1, 2, 3 * 左下から右へ: 4, 5, 6, 7 * ■プレイヤー設定 * プレイヤー(主人公)の名前、性格、職業、背景などを書いてください * ★重要★ プレイヤーの名前もここに書いてください * ※「プレイヤー自由設定編集を許可」をONにしている場合、ここの設定は無視されます * ※「私の名前は◯◯です」ではなく「プレイヤーの名前は◯◯です」と言ったほうが、 * 私が誰なのかAIが区別しやすいです。 * ■入力モード * 「固定テキスト」だと下の「プレイヤーの発言(固定)」がAIに送られます。 * 「キーボード入力」だとプレイヤーが自分で好きな言葉を送れます。 * ■プレイヤーの発言(固定) * 「固定テキスト」にした場合にAIに送られるセリフです。 * ◯AI設定画面を開く * 「AI設定」画面を開くイベントが作れます * ◯会話履歴をクリア * ここでは特定の名前の会話ログを個別に消去できるイベントが作れます。 * 保存される人数が大勢のゲームの場合これを使うとユーザーフレンドリーです。 * * ★キャラクター設定、プレイヤー設定、状況設定 * \V[n]で変数、\N[n]でアクター名、\P[n]でパーティメンバー名が使えます * 変数にスクリプトで設定を入れておけば、後で設定手直しする時にそこを * 変更するだけでよくなるので楽です。 * 変数にスクリプトに文字列を入れる時は""または''を忘れなく * スクリプトでさらに\N[n]や\P[2]を使いたい時は\\N[n]と\を2つにして下さい。 * 設定の変数はコモンイベントで管理するとわかりやすいです。 * * <<注意>> * ※1度きりのイベントでエラーになったりキーボード入力キャンセルすると、 * その時のAI会話が見れなくなるので、事前にセーブポイントを作ったり、 * 重要なイベントは固定テキストの会話にしましょう。 * ※モデルの変更はちゃんとLMStudioで準備してREADYになってから話しかけましょう * モデル変更直後は遅かったりエラーやフリーズ状態になりやすいです。 * モデルの変更後はすぐに話しかけないようにユーザーに注意喚起してください。 * ゲームで話す前にLMStudioなどで快適に会話できるモデルか確認してから選ぶように。 * PCのスペックに見合わないモデルを選んで会話をするとフリーズの原因となります。 * モデル変更前にはゲームやPCの他の作業状態のセーブをしておきましょう。 * 上手くAIが反応しない場合はLMStudioで状態やLogを確認しましょう。 * ゲーム内で注意メッセージやヘルプを用意しておきましょう。 * * ※それなりのローカルLLMのモデルを快適に動かすには高スペックのPCが必要です。 * ※良いモデルでもクラウド型のLLMのようなクオリティは期待しない事 * * ※AIの返答の内容はモデルとプロンプトの書き方に大変大きく影響します * 性能の良いクラウド型のAIにモデルに関してやプロンプトのコツを聞いてみると良いでしょう。 * * ※プラグインの名前「LocalLLM_Chat.js」は変更しないで下さい。 * 変更すると不具合となります。 * * ※もっと詳しい使用方法はブログを御覧ください。 * https://ha6mwljz4z93.blog.fc2.com/ * R18の記事があるので注意。RPGツクールプラグインのカテゴリを見てください。 */