Discord ボット
DM でキャラクターと 1 対 1 で話すか、サーバーにキャラクターを置いて、誰が話せて誰が払うかを決める。
Reverie のボットは、Discord の 2 つの場所にキャラクターを連れてきます。1 対 1 で話すためのボットとのダイレクトメッセージ(DM)と、キャラクターがそれぞれ自分の名前とアイコンで話すサーバーのチャンネルです。キャラクターと話す人は全員、自分の Discord アカウントに連携した Reverie アカウントが必要です——無料のもので十分です。返信はすべて、いずれかの Reverie アカウントにクレジットで請求されます。
アカウントを連携する
1 つの Discord アカウントは、ちょうど 1 つの Reverie アカウントに対応します。次のどの方法でもつながります。
- 連携ダッシュボードから。 アプリで Labs → Discord & Telegram ボット に進み、Discord のカードで Discordで連携 を押します。Discord で承認すると、そのまま戻ってきます。
- Discord でサインインする。 Discord で Reverie にサインインすると、ボットも一緒に連携されます——ただし、以前にダッシュボードで連携を解除していた場合は、自分でもう一度連携するまで解除されたままです。
- Discord から。 サーバーの中か、ボットとの DM で
/link-accountを実行します。返信はあなたにしか見えず、1 回だけ使えて 10 分で期限が切れる アカウントを連携 ボタンが付いています。開いてサインインすれば、二つのアカウントがつながります。
DM で 1 対 1 で話す
ボットに DM を送るか、ボットがいるサーバーで /chat を実行します——会話はあなたの DM に移り、あなたにしか見えません。/chat だけなら選べるキャラクターが表示され、名前を付ければ検索できます。
- 一度に 1 人のキャラクター。
/chatで別のキャラクターに切り替え、/chatsで DM で話したことのあるキャラクターを一覧できます。それぞれが自分の会話を持っているので、戻れば前回の続きから話せます。 - どのメッセージにも返信が来ます。 投稿するのはボットで、返信の上に小さな文字でキャラクターの名前が出ます。画像、ボイスメッセージ、記憶はチャンネルと同じように使えます。
- 自分のメッセージは自分で払います。 サーバーの支払いモードや上限はここでは効きません。
- 18 歳以上向けのキャラクター は、アカウントの 18 歳以上向け設定に従います。オフなら表示されず、DM で話すこともできません。
/remove-characterは今の会話を終えます——会話は保存され、/chatsから戻れます。/reset-chatは確認のうえで会話を消去します。/settingsのサブコマンドのうち、DM で効くのはmodel、language、chat-styleだけです。
ボットがメッセージを送れなかったと言う場合は、Discord のプライバシー設定でサーバーメンバーからの DM を許可してから、もう一度試してください。最近の DM の会話は連携ダッシュボードの プライベートチャット にも表示され、Webで続ける でブラウザから続きを話せます。
ボットをサーバーに追加する
ボットを招待する
連携ダッシュボードの Discord のカードで ボットをサーバーに追加 を押し、サーバーを選びます。要求される権限はすべてチェックを入れたままに——それぞれの理由は下の表にあります。参加するとボットは、サーバーの参加メッセージが流れる場所に短い使い方の案内を投稿します。
チャンネルにキャラクターを追加する
テキストチャンネルで /add-character を実行し、オートコンプリートからキャラクターを選びます——公開キャラクターと自分の非公開キャラクターが対象です。Manage Channels 権限と、連携済みのアカウントが必要です。ボットはキャラクターが自分の名前で投稿できるように webhook を作り、あいさつを送ります。
ルールを決める
任意です。/settings はチャンネルのキャラクターがどう返信し誰が払うかを決め、/server はそもそも誰がキャラクターと話せるかを決めます。どちらも下で説明します。
招待が要求する権限
| 権限 | 要求される理由 |
|---|---|
| View Channels | ボットが使われるチャンネルを読むため |
| Send Messages | 返信やコマンドの出力を投稿するため |
| Manage Messages | きっかけになったメッセージが削除されたとき、キャラクターの返信も取り除くため |
| Embed Links | コマンドの出力とコミュニティ抽選の告知が埋め込みだから |
| Manage Roles | Reverie 自身のサーバーで、コミュニティ抽選のロールを配るため |
| Manage Webhooks | 必須。 キャラクターはキャラクターごとの webhook を通して話します |
Manage Webhooks がないと /add-character は失敗し、キャラクターは追加されません。
コマンド
サーバーでは、Manage Channels や Manage Server と書かれたコマンドは、その Discord 権限を持つメンバーにしか表示されません。アカウント系と管理系のコマンドへの返信は、あなたにしか見えません。
| コマンド | オプション | 使える場所 | 内容 |
|---|---|---|---|
/help | — | サーバー、DM | コマンドの一覧を本人にだけ表示 |
/link-account | — | サーバー、DM | Discord と Reverie のアカウントをつなぐ使い捨てリンクを出す |
/chat | name(任意) | サーバー、DM | DM で話すキャラクターを選ぶ・切り替える。サーバーで使うと、選択肢を DM に送る |
/chats | — | サーバー、DM | DM で話したことのあるキャラクターを切り替える |
/add-character | name(必須) | サーバー · Manage Channels | このチャンネルにキャラクターを追加し、あいさつさせる |
/remove-character | name(必須) | サーバー · Manage Channels、DM | キャラクターを外し、その webhook を削除する。DM では今の会話を終える |
/list-characters | — | サーバー | このチャンネルのキャラクターを、それぞれ削除ボタン付きで一覧 |
/character-info | name(必須) | サーバー、DM | プロフィール、画像、年齢、性別、評価、カテゴリー、タグ、NSFW フラグと、キャラクターページへのリンク。アカウントを連携していれば、そのキャラクターから何度か返信を受け、レビューが受付中の場合に 1〜5★ の評価ボタンも出す |
/reset-chat | — | サーバー · Manage Channels、DM | チャンネルのメッセージと要約を削除し、件数を報告。DM では確認のうえ今の会話を消去 |
/regenerate-reply | model(任意) | サーバー、DM | 最後のキャラクター返信を引き直す。その 1 回だけ別のモデルを使うこともできる |
/reply-suggestions | — | サーバー、DM | 返信候補 3 つをボタンで表示。押すとあなたのメッセージとして送られる |
/settings | サブコマンド(必須) | サーバー、DM | チャンネル設定と個人設定 |
/plugins | サブコマンド(必須) | サーバー、DM | ここで動いているプラグインを表示し、公式プラグインと自分のプラグインを追加・削除・切り替え |
/server | — | サーバー · Manage Server または支払い担当 | キャラクターと話せる人、メンバーごとの 1 日の上限、ブロック中のメンバー、使用量 |
/my-account | — | サーバー、DM | クレジット、プランの使用量、更新日、チャット数 |
/daily | — | サーバー、DM | デイリーチェックインを受け取る |
/notify | — | サーバー、DM | キャラクターから話しかけてよいか、どの通知を DM にも送るか |
/plugins は list、install、remove、enable、disable のいずれかを取ります。対象は公式プラグインと自分のプラグインだけで、しかもプロンプトプラグインとツールプラグインに限られます。設定の入力が必要なプラグインはボットからは入れられません。ツールプラグインの結果は、キャラクターの名前で短いカードとして投稿されます。チャンネルでプラグインを変えるには Manage Channels か、そのチャンネルにキャラクターを追加したことが必要で、一覧は誰でも見られます。DM では、プラグインはあなたが自由に変えられます。
/settings だけでは有効なコマンドになりません——常に 6 つのサブコマンドのどれかを取ります。
| サブコマンド | オプション | 必要な権限 | 効果 |
|---|---|---|---|
/settings model | model(任意) | — | このチャンネルの主役キャラクターに使うあなたのモデル。空なら現在のものを表示、またはリセット。高度なモデルはサブスクリプションが要ることがあります |
/settings language | language(任意) | Manage Channels | チャンネルの応答言語。空なら英語に戻ります |
/settings channel-mode | mode:auto か mention | Manage Channels | キャラクターがすべてのメッセージに返すか、呼ばれたときだけ返すか |
/settings chat-style | style:RP か NORMAL | Manage Channels | 動作描写を含むロールプレイ文か、セリフだけか |
/settings payment-mode | mode:owner か user | Manage Channels | 誰に請求するか |
/settings daily-limit | credits(必須、0 以上) | Manage Channels | UTC の 1 日あたりのクレジット上限。0 は無制限 |
同じ設定はウェブのダッシュボードにもチャンネルごとにあり、Payment mode、Daily credit limit、Chat style、Reply mode、Response language、Your model という名前です。言語とモデルは、誰かがそのチャンネルでメッセージを送るまで無効のままです。
キャラクターが返すとき
キャラクターは @メンションされたとき、誰かがその発言に返信したとき、あるいはチャンネルが自動返信のときに答えます。自動返信は既定でオフなので、追加したばかりのキャラクターは呼ばれるまで黙っています。
一つのチャンネルに複数のキャラクターがいると、そのチャンネルは一つのグループチャットとして振る舞います。ひとつのプロンプトにその場のキャラクター全員が並び、誰が話すかはモデルが決めます。名前を挙げるのはメッセージと一緒に渡されるヒントであって、そのキャラクターに答えさせるスイッチではありません。グループチャット →
スレッド
テキストチャンネルのスレッドは、そのチャンネルのキャラクターと話し、支払いモード・返信モード・チャットスタイルもチャンネルに従いますが、履歴は自分だけのものを持ちます——チャンネルを散らかさずにサイドストーリーを進める場所です。最初はチャンネルの応答言語で始まり、スレッドの中で使った /settings language と /settings model はそのスレッドにだけ効きます。スレッドで使ったクレジットはチャンネルの 1 日の上限に数えられます。キャラクターの顔ぶれやチャンネルのほかの設定を変えるコマンド——/add-character、/list-characters、/plugins、/settings chat-style など——は、親チャンネルで実行するよう案内します。フォーラムの投稿やほかの種類のスレッドには、キャラクターはいません。
誰が払うか
| 支払いモード | 請求先 | 効く上限 |
|---|---|---|
| Owner pays(既定) | サーバーの支払い担当:そのサーバーに最初にキャラクターを追加した Reverie アカウント。ほかの誰かが引き継ぐまで | チャンネルの 1 日のクレジット上限と、/server で決めたメンバーごとの 1 日の上限 |
| User pays | 送信者それぞれの残高 | なし——各メンバーは自分の残高の範囲まで |
メッセージの費用はウェブアプリと同じで、トークン単位にモデルのクレジット倍率を掛けたものです。1 日のカウンターは 00:00 UTC にリセットされ、ダッシュボードのチャンネル設定のダイアログに今日の使用量と上限が出ます。
請求を自分のアカウントに移したいとき——たとえばボットを設定した人がいなくなったとき——は、/server を開いて 自分のアカウントで支払う を押します。サーバー内で支払い担当が払っているすべてのチャンネルに適用されます。
サーバーのルール
/server は、あなたにしか見えないパネルを開きます。開けるのは Manage Server を持つメンバーと、サーバーのキャラクターの代金を払っている人です。今日と過去 7 日間の使用量、今日いちばん使ったメンバー、そして 3 つのルールが表示されます。
| ルール | 選択肢 |
|---|---|
| 話せる人 | 全員(既定)、管理者のみ、または 特定のロールを持つメンバー——ロールは 2 つ目のメニューで選ぶ |
| メンバーごとの1日の上限 | 1 人のメンバーが UTC の 1 日に使える支払い担当のクレジットの量、または 上限なし(既定)。支払い担当が払う場合だけ効く |
| ブロック中のメンバー | ここで選んだメンバーは、サーバー内のどこでもキャラクターと話せない |
ここでいう管理者とは Manage Server を持つメンバーのことです。管理者と支払い担当のアカウントは、ブロックでもアクセスモードでも締め出されることはなく、ロールをまだ 1 つも選んでいないうちは、特定のロールを持つメンバー でも話せるのは彼らだけです。アクセスモードで外れたメンバーには、話せるのは一部のメンバーだけだと一度だけ伝えられます。ブロックされたメンバーには、返信そのものが来ません。
年齢制限のあるキャラクター
18 歳以上向けのキャラクターが返信するのは、年齢制限チャンネル、年齢制限付きカテゴリー内のチャンネル、またはサーバー全体が 18 歳以上向けに設定されている場合だけです——スレッドは所属するチャンネルに従います。それ以外の場所では、ボットは返信する代わりに理由を説明します。DM では、18 歳以上向けのキャラクターはアカウントの 18 歳以上向け設定に従います。
チャンネルで使えるもの
- 画像。 キャラクターは Discord で画像を生成できます。
- 音声出力。 キャラクターはボイスメッセージを送れます。
- 音声入力。 あなたが送ったボイスメッセージは文字起こしされます(25 MB まで)。
- 記憶。 モデルがツールに対応していれば、キャラクターは記憶を保存・更新・削除し、ワールドブックの設定も文脈に入ります。
- 履歴。 長くなったチャンネルは自動的に要約されます。
- チャンネルに 2 体目のキャラクターを追加すると、そのチャンネルのチャットスタイル、支払いモード、1 日の上限が引き継がれます。
通知とチェックイン
/notify では 2 つのことを決めます。キャラクターからの話しかけ はアカウントの自発性のレベルで、ウェブサイトと同じ設定です。サブスクリプションがあれば、DM で今話しているキャラクターがあなたに先に話しかけてくることがあります——自発メッセージを参照。こちらにも送る では、Reverie の通知のうちどれを DM にも届けるかを選びます。最初は アカウントと請求 だけがオンです——通知を参照。連携ダッシュボードでも同じ選択ができます。
/daily はウェブサイトと同じデイリーチェックインを受け取り、ラッキー抽選へのリンクを付けて返します。
メッセージの編集と削除
自分の直近のメッセージを編集すると、それへの返信が作り直されます。
Discord でメッセージを削除すると、そのメッセージとそれ以降のすべてのメッセージがキャラクターの履歴から消え、その時点より後に作られた記憶や添付も一緒に消えます。キャラクターの返信もチャンネルから取り除かれます。これは取り消せません。
ボットが読むもの
ボットは、見えているチャンネルのすべてのメッセージを受け取ります——メンションや返信がボットに届くのはそのためです。返信のたびに、そのチャンネルの直近 1 時間のメッセージも読みます。自分宛でないものも含めてモデルに文脈として渡し、キャラクターが場についていけるようにします。
ボットがいるチャンネルは、ボットが聞いているチャンネルだと考えてください。それが望みでなければ、キャラクターは専用のチャンネルに置きましょう。
上限
| 上限 | 値 |
|---|---|
| チャンネルあたりのキャラクター数 | 5 |
| Discord のメッセージ長 | 2,000 文字 |
| ボイスメッセージのサイズ | 25 MB |
| Discord チャンネルあたりの webhook 数 | 15(Discord 自身の上限) |
| チャンネルあたりの待ち行列メッセージ数 | 3 |
同じ人からの連続した素早いメッセージは、1 ターンにまとめられます。
連携を解除する
連携ダッシュボードの 連携を解除 で解除します。ボットをサーバーから外したり、サーバーを抜けたりしても、アカウントの連携は解除されません。解除したあとは、Discord でサインインしてもボットは自動では連携されません——また使いたくなったら Discordで連携 か /link-account を使ってください。
関連
- Telegram ボット —— 同じキャラクターを Telegram で
- Reverie Labs —— 連携ダッシュボードの場所
- グループチャット —— 複数キャラクターの会話の仕組み
- クレジット —— メッセージ 1 通の費用