この機能でできること
「レベル(Dashboard)」は、Discordサーバー内の活動量を XP(Experience Points / 経験値) として記録し、
レベル・ランキング・レベルアップ通知・(任意で)ロール報酬(Role
Rewards) を提供する機能です。
- メッセージ投稿やVC参加などの活動に応じてXP付与
- XPからレベルを算出し、ランキング(Leaderboard)を表示
- レベルアップ通知(Announcement)のON/OFFと送信先の制御
- XP・ランキングのリセット(Reset)
- (使う場合)レベル到達でロール付与(add / sync)
ポイント:このページは「何をどう設定すると、サーバーで何が起きるか」を先に説明してから、各項目の意味を解説します。
最初にやること(Quick Start)
「とりあえず動かして、あとから微調整」するための最短手順です。迷ったらこの通りに設定してください。
- XP付与:ON(全体スイッチ)
-
XPモード:random
まずはランダム付与で運用して、サーバーの雰囲気が固まってから chars / words に寄せるのが安全です。
-
クールダウン:60秒
連投(Spam)で稼げないようにする基本値。まずは 45〜90秒の範囲でOK。
-
最小/最大XP(random時):5〜15
初期値は 15〜25。まずは 5〜15 で落ち着かせて、伸び方を見ながら調整します。
-
カーブ(Curve):classic
一般的な「低レベルは上がりやすい/高レベルほど重い」挙動。
-
通知:ON → 通知チャンネルを指定
例:#levels や #bot-log など。通常チャットに流すと荒れやすいので分離推奨。
-
除外チャンネルを設定
#bot-spam / #commands / #log のような「会話が目的でない場所」はXP除外が安定します。
ここまでで「活動 → XP → レベル → 通知」が一通り回ります。
用語(Glossary)
- XP(Experience Points / 経験値):活動に対して加算される数値。レベル計算の元になります。
- Level(レベル):累積XPから算出される段階。ランキング表示や報酬のトリガーになります。
- Cooldown(クールダウン):一定時間内の連続加算を抑制する仕組み。連投対策の中心。
- Curve(成長カーブ):レベルが上がるほど必要XPが増えるかどうかのルール。
- Exclude Channel(除外チャンネル):XP付与・通知の対象外にするチャンネル。
- Role Rewards(ロール報酬):特定レベル到達でロールを付与する運用。
- add:到達した報酬ロールを「積み上げで保持」する方式。
- sync:到達レベル帯に応じて「持つべきロールだけに同期」する方式(入れ替え)。
- Template(テンプレート):通知文面の雛形。ユーザー名やレベルなどの差し込みを行います。
- Reset(リセット):XP/ランキングの初期化。運用開始後は影響が大きいので慎重に。
設定の全体像
「レベル」には、XPの付与・レベル計算・通知・除外・(任意で)報酬の5つがあります。
まずはこの流れを押さえると、項目名を見ても迷いません。
データフロー(Data Flow)
メッセージ投稿 / VC参加
↓(XP付与:ON + モード + クールダウン)
XPが加算される
↓(カーブ / 最大レベル)
レベルが更新される
↓(通知:ON + チャンネル + テンプレ)
レベルアップ通知が送信される
↓(任意:報酬)
ロール付与(add / sync)
- XP付与:量 / モード / クールダウンで「稼ぎ方」を決める
- レベル進行:カーブ / 最大レベルで「伸び方」を決める
- 通知:ON/OFF / チャンネル / テンプレで「見せ方」を決める
- 除外:XPや通知の対象外を決めて「荒れ」を防ぐ
- 報酬:ロール運用をする場合の付与方式
XP付与(付与量 / モード / クールダウン)
XPの付与は「どう稼げるか(How XP is earned)」を決める設定です。
ここが曖昧だと、連投が強くなったり、逆に誰も上がらない状態になります。
-
付与ON/OFF(Global Switch):サーバー全体でXP付与を有効/無効にします。
まずはON。テスト中だけOFFにしたい時に使います。
-
クールダウン秒数(Cooldown Seconds):一定時間内の連続加算を抑制します。
目安:45〜90秒。連投が多いなら上げ、会話が少ないなら下げます。
-
最小/最大XP(Min/Max XP):randomモード時の付与幅です。
目安:5〜15(標準) / 3〜10(ゆっくり) / 10〜25(イベント時)
-
XPモード(XP Mode):付与ロジックを選びます。
- random:一定範囲でランダム付与。まずはこれが最も破綻しにくい。
- chars:文字数(Characters)に応じて付与。長文が有利になりやすい。
- words:単語数(Words)に応じて付与。英語中心サーバー向き。
-
charsPerXp / wordsPerXp(Conversion):何文字/何単語でXPを1付与するかの換算です。
例:charsPerXp=20 なら「約20文字でXP+1」。上げるほど渋く、下げるほど加点が増えます。
調整のコツ:まず「クールダウン」と「最小/最大(または換算)」の2点だけ触って、体感を見てから細かく詰めると安全です。
レベル進行(カーブ / 最大レベル / 報酬)
ここは「レベルがどれくらいのペースで上がるか(Progression)」を決めます。
XP付与をいじる前に、まず “伸び方の思想” をここで決めると設計が安定します。
-
カーブ(Curve:classic / linear / flat):必要XPの増え方を選びます。
- classic:序盤は上がりやすく、後半ほど重くなる(一般的で運用しやすい)。
- linear:レベルが上がるごとに必要XPが一定ペースで増える(安定した伸び)。
- flat:必要XPの増加が小さめ(全体的に上がりやすい=イベント向き)。
-
最大レベル(Max Level):レベル上限を設定します。
上限なし運用も可能ですが、報酬ロールを使う場合は設計が複雑になるため、まずは上限を置くのが安全です。
-
報酬モード(Reward Mode:add / sync):ロール報酬を使う場合のみ重要です。
- add:到達ロールを積み上げで保持。コレクション的に見せたい場合向き。
- sync:現在レベル帯のロールだけに同期。ランク制(Bronze/Silver/Gold等)運用向き。
通知 / 表示(チャンネル / テンプレ / 除外)
通知(Announcement)は「ユーザー体験(UX)」に直結します。
ONにするなら、流す場所と流さない場所をセットで決めるのが前提です。
-
通知のON/OFF(Announcements Enabled):レベルアップ時の通知を出すかどうか。
通知が多すぎると通常チャットが流れるので、専用チャンネル推奨です。
-
通知チャンネル(Announcement Channel):通知を送信する場所。
例:#levels / #bot-log。運用開始直後はまずここを必ず設定。
-
通知テンプレート(Template):通知文面。
短く・嬉しく・うるさくない、が基本。長文は避けた方が荒れにくいです。
-
埋め込み色(Embed Color / Accent Color):通知の見た目を揃えるための色。
Project Pのサイト/サーバーのテーマカラーに合わせると統一感が出ます。
-
XP除外チャンネル(XP Exclude Channels):そのチャンネルではXPを加算しない。
botコマンド用・ログ用など「会話が目的でない場所」は除外推奨。
-
通知除外チャンネル(Announcement Exclude Channels):そのチャンネルには通知を出さない。
通知先を1つに固定する運用なら、実質的にここは “念のため” の安全弁です。
関連コマンド
ランキングや自分の順位を確認するためのコマンドです。サーバーの運用ルールに合わせて、どれを案内するか決めてください。
!levelboard / !lb:レベルランキング表示(Leaderboard)
!rank / !r:自分の順位を表示(Rank)
/leaderboard / /level:上位10のランキング(Slash Commands)
案内のコツ:ユーザー向けには「/level(または /leaderboard)」のように、押して使えるコマンドだけを提示すると迷いにくいです。
注意点 / よくあるつまずき
-
権限(Permissions):Dashboardの操作にはサーバー管理権限が必要です。権限がないとカードが開けないことがあります。
-
設定変更は“実サーバーで確認”が前提:テスト用チャンネルを作り、通知先・除外・クールダウンが想定通りか確認してください。
-
連投で伸びる:クールダウンが短すぎる可能性が高いです(まず秒数を上げる)。
-
誰もレベルが上がらない:最小/最大XPが小さすぎる、または換算(charsPerXp / wordsPerXp)が渋すぎる可能性があります。
-
通知がうるさい:通知チャンネルを分離し、テンプレートを短くするのが最優先です。
-
リセット(Reset):運用開始後の影響が大きい操作です。やるなら「告知→実行→再開ルール」をセットで。