Bot 機能(モジュール)

ロールパネル

ロールパネルは、メンバーが自分でロールを付けたり外したりできる「パネル」を、サーバーごとに作成・設置するモジュールです。ルール同意ロールの配布や、趣味・通知カテゴリーの選択などに使えます。

このモジュールは無料で利用できます。

ロールパネルとは

パネルには 2 つの形式があります。

形式操作方法向いている用途
ボタン式メッセージのボタンをクリックするわかりやすく、誤クリックが少ない。動作モードなどの細かい挙動を調整できる
リスト式ドロップダウンから選ぶ選択肢が多いときにすっきり見せられる。各項目に説明文を添えられる

1 つのパネルには、絵文字・ラベル・付与するロールの組み合わせ(ロール項目)を複数登録できます。

ダッシュボードで作るのは「パネルの設計図」です。実際に Discord にパネルのメッセージを送信するのは、サーバー側で /rolepanel send などのコマンドを実行したときです。

ロールパネルを設定する

サイドバーから「ロールパネル」を開く

ダッシュボードで対象の Bot を開き、左側のメニュー(モジュール一覧)から「ロールパネル」を選びます。

「機能の有効化」をオンにする

ページの一番上にある「機能の有効化」のスイッチをオンにします。これがオフのままだと、ロールパネルの機能そのものが動きません。

コマンドの利用可否を確認する(任意)

「コマンド権限設定」では、/rolepanel send/rolepanel setting/rolepanel create の 3 つのコマンドごとに、有効・無効や利用できる権限を設定できます。設定の考え方はコマンド権限設定の使い方をご覧ください。

新しいパネルを追加する

「ロールパネル設定」の「新しいパネルを追加」で、次の 2 つを指定して「追加」します。両方を指定するまで追加できません。

  • 「対象サーバー」: パネルを設置するサーバー。
  • 「パネル名」: 管理用の名前(例: ロール配布パネル)。

不要になったパネルは、一覧の削除操作で削除できます。

パネルの基本設定を行う

一覧のパネル名を開くと、次の項目を設定できます。

項目内容
「UIタイプ」パネルの形式を選びます。「ボタン」を選ぶとボタン式、「セレクトメニュー」を選ぶとリスト式になります。
「チャンネル」パネルを設置するチャンネルを選びます。
「メッセージID」既存のメッセージにパネルを紐付ける場合のみ入力します。新しくパネルのメッセージを送信する場合は空欄のままでかまいません。

ボタン式の場合の追加設定を行う

「UIタイプ」でボタン式を選んだときだけ、次の設定が表示されます。

まず「パネルモード」で、ボタンでロールを付け外しするときの挙動を選びます。

パネルモード挙動
「トグル(複数可)」ボタンを押すとロールが付き、もう一度押すと外れます。複数のロールを同時に持てます。
「排他(1つのみ)」このパネル内で同時に持てるロールは 1 つだけです。別の項目を選ぶと前のロールが外れます。
「認証(解除不可)」一度ロールを付けると、もう一度押してもロールは外れません。ルール同意などに向いています。

さらに「リアクション除去」のスイッチをオンにすると、処理後にメンバーが付けたリアクションを自動で消去します。

ロール項目を追加する

「ロール設定」の「項目を追加」で、配りたいロールを 1 件ずつ登録します。各項目では次を設定します。

設定内容
絵文字項目に表示する絵文字。初期値は です。
「ラベル」パネルに表示する項目の名前を入力します。
「付与するロールを選択」この項目で付け外しするロールを選びます。

ロール項目が 1 つもないとパネルは機能しないため、少なくとも 1 つは登録してください。

変更を保存する

変更は画面下部のバーから保存します(「破棄」で取り消し)。

Discord でパネルを送信する

保存しただけではメッセージは送られません。設置したいサーバーで、Discord 側からロールパネルのコマンド(/rolepanel send など)を実行して、実際にパネルのメッセージを送信します。

コマンド一覧

Discord で利用できるコマンドは次の 3 つです。いずれもサーバー内でのみ実行できます。

コマンドできること主なオプション
/rolepanel create新しいパネルの設定を作成します。タイプ(ボタン式 / リスト式)を選びます。この時点ではまだチャンネルには設置されません。panel_name(必須)= パネルの管理名、panel_type(必須)= 「ボタン式」または「リスト式」
/rolepanel send作成済みのパネルを、コマンドを実行したチャンネルに送信します。Embed と操作用のボタン(リスト式ではセレクトメニュー)が表示されます。panel_name(必須・入力補完あり)= 送信するパネルの名前
/rolepanel settingパネルの設定 UI(本人だけに見える一時メッセージ)を開きます。プレビュー表示、ロールの追加・削除、Embed の編集、タイプ変更、詳細設定にアクセスできます。panel_name(必須・入力補完あり)= 設定するパネルの名前

設定 UI でできること

/rolepanel setting を実行すると、本人だけに見える設定パネル(プレビューの Embed、ロール数、パネルタイプ、各種ボタン)が表示されます。主なボタンは次の通りです。

  • ➕ ロール追加: ロール選択用のドロップダウンが開き、選んだロールの詳細(絵文字・ラベル・説明)を入力するモーダルが表示されます。
  • ➖ ロール削除: パネルに登録済みのロール一覧から、外したいロールを選びます。
  • 📝 Embed編集: タイトル・説明文・色を編集するモーダルを開きます。
  • 🔄 更新: 設定パネルの表示だけを更新します。設置済みメッセージは変わりません。
  • 🔄 パネル同期: 設置済みのメッセージに、ここまでの変更(ロールの追加・削除、Embed の変更など)を反映します。
  • ↔️ タイプ変更: パネルのタイプ(ボタン式 / リスト式)を切り替えます。
  • ⚙️ 詳細設定: ボタン式パネルで、リアクション削除や動作モードを設定します。

設定 UI での変更は保存されるだけで、設置済みのメッセージには反映されません。変更後は 🔄 パネル同期 を押して、設置済みのパネルを更新してください。

ロールを追加するときのモーダルには、絵文字・ラベル・説明の 3 つの入力欄があります。ボタン式では絵文字が必須、リスト式ではラベルが必須です。ラベルの初期値には選んだロールの名前が入ります。絵文字欄には通常の絵文字のほか、<:name:id> の形式でカスタム絵文字も指定できます。

実際の動作と既定値

パネルを作成・設置したときの初期状態は次の通りです。

項目既定値補足
パネルタイプボタン式新規作成時の既定。リスト式は設定 UI で切り替えられます。
パネルモードトグルボタン式のみ有効。リスト式に切り替えると無視されます。
リアクション削除OFFボタン式のみ有効。リスト式に切り替えると無視されます。
Embed のタイトル{panel_name} | ロールパネル編集しない場合に自動生成される文言です。
Embed の色#2f3136Discord の暗めの既定色です。#RRGGBB 形式(7 文字)で変更できます。
ロール選択ドロップダウンの有効時間180 秒設定中のロール追加・削除用ドロップダウンが対象です。
設置済みメッセージの有効時間期限なし設置したパネルのボタンやセレクトメニューは、メッセージが残るかぎり動き続けます。

Discord の ⚙️ 詳細設定 で選べるモード

ダッシュボードの「パネルモード」とは選択肢が異なり、/rolepanel setting⚙️ 詳細設定 では次のモードを選べます。

モード挙動
トグル持っていなければ付与し、持っていれば削除します。
追加のみ持っていなければ付与します。すでに持っている場合はその旨を案内します。
削除のみ持っていれば削除します。持っていない場合はその旨を案内します。

上限と制限

項目無料プランBotShade Premium
サーバーあたりのパネル数1 枚10 枚
パネルあたりのロール数5 件25 件

現在はベータ版のため全ユーザーにプレミアムが付与されており、上記のプレミアム側の上限と、リスト式パネル・タイプ変更・詳細設定といったプレミアム向け機能を無料で利用できます。

Embed やロール項目には、入力の長さ・形式に次の制限があります。

項目制限
Embed のタイトル最大 256 文字
Embed の説明文最大 2000 文字
ロールのラベル最大 100 文字
ロールの絵文字最大 100 文字(絵文字または <:name:id> 形式のカスタム絵文字)
ロールの説明最大 100 文字(リスト式で表示)
Embed の色#RRGGBB 形式の 7 文字ちょうど

表示されるメッセージ

Bot が表示する主なメッセージです({ } の部分は実際のロール名やパネル名などに置き換わります)。設置済みパネルでの操作結果は、本人だけに見える一時メッセージとして表示されます。

成功・案内:

  • パネル作成: ✅ ロールパネル設定 {panel_name} を作成しました。(続けて /rolepanel send コマンドでチャンネルに設置してください。 と案内されます)
  • チャンネルへの設置: ✅ ロールパネル {panel_name} をこのチャンネルに設置しました。
  • ロールの付け外し: ロール {role.name} を付与しました。 / ロール {role.name} を削除しました。
  • パネル同期: パネルを同期しました。
  • タイプ変更: タイプを {panelType} に変更しました。
  • Embed 更新やロールの追加・削除: Embedの設定を更新しました。パネルに反映するには「🔄 更新」ボタンを押してください。 のように、反映のための操作が案内されます。
  • 追加のみ / 削除のみモードで対象外だった場合: 既にロール {role.name} を持っています。 / ロール {role.name} を持っていません。

エラー:

  • 同名パネルが存在: エラー: {panel_name} という名前のパネルは既に存在します。
  • パネル数の上限: エラー: 無料プランでは1枚、BotShade Premiumプランでは10枚までしかパネルを作成できません。
  • リスト式をプレミアム外で作成しようとした: リスト式のパネルはBotShade Premiumプランでのみ利用可能です。
  • パネルが見つからない: エラー: {panel_name} という名前のパネル設定が見つかりません。
  • ロール数の上限: エラー: これ以上ロールを追加できません。(上限: 5件)(無料プランの場合)
  • 同じロールを重複追加: エラー: ロール {role.mention} は既に追加されています。
  • 削除できるロールがない: 削除できるロールがありません。
  • 設置先チャンネルへの送信権限がない: エラー: このチャンネルにメッセージを送信する権限がありません。
  • ロール操作の権限がない: エラー: ロールを操作する権限がありません。Botのロールが対象ロールより上にあるか確認してください。
  • ロールがサーバーに存在しない: このロールはサーバーに存在しないため、付与できませんでした。
  • 削除済みパネルのボタンを押した: このパネルは利用できません (削除済みの可能性があります)。
  • プレミアム機能をプレミアム外で操作しようとした: プレミアム機能です。

注意点・うまくいかないとき

ロールの付け外しには、Bot のロールが対象のロールより上にある必要があります。Discord の仕組み上、Bot は自分より下位のロールしか付け外しできません。

  • 設置済みパネルのメッセージを Discord 上で手動削除すると、設定そのものは残りますが、設置済みメッセージは失われます。この状態で同期しても変化はなく、エラーも表示されません。設置済みパネルが見当たらないときは、/rolepanel send で改めて設置し直してください。
  • パネルを設置したチャンネルが削除されると、そのパネルへの操作はできなくなります。同期は静かに失敗し、ユーザー向けのエラーは表示されません。
  • パネルに登録したロールを Discord 側で削除すると、設置済みパネルでそのロールを操作したメンバーにエラーが表示されます。
  • Embed の色は形式が違うと送信が通らず、入力欄が開いたままになります。
  • 設定中のロール選択ドロップダウンが反応しなくなったら期限切れです。もう一度ボタンを押して開き直してください。
  • <:name:id> 形式のカスタム絵文字を指定しても、その絵文字がサーバーから削除されているなどで参照できない場合は、ボタンに正しく表示されないことがあります。

次のステップ / 関連ページ

最終更新:

目次