Skip to content
PIARIS edited this page Jul 9, 2026 · 3 revisions

FAQ / Troubleshooting

導入・運用でよくある質問とトラブルシューティングです。当てはまる症状が見つからない場合は、config.ymldebug: trueにしてから/discordbridgejp reloadし、コンソールログ(特に[Webhook][debug][NameColor])を確認してください。多くの問題はここに原因が出ます。

Botが起動しても接続されない

確認すること

  • bot-token が正しくコピーされているか(前後に余計な空白や改行が入っていないか、bot.ymlに入力しているか)
  • guild-id が、Botを招待した実際のDiscordサーバーのIDと一致しているか
  • Discord Developer Portalの「Bot」ページで以下2つがONになっているか
    • MESSAGE CONTENT INTENT(OFFだとチャット内容が読み取れず、チャット中継・コマンド実行が機能しません)
    • SERVER MEMBERS INTENT(OFFだとDiscordサーバー離脱検知機能が使えず、Botの接続自体が失敗することがあります。エラーメッセージが出ないまま接続に失敗するケースもあります)

チャットが連携済みプレイヤーのアバター付き(Webhook)表示にならない

PIARIS6245: メッセージ のような無装飾の表示になってしまう場合の原因はだいたい次のいずれかです。

  • Botに 「ウェブフックの管理」権限 が無い。Discord Developer PortalのOAuth2 URL Generatorで権限を付け直し、再度招待URLからBotを招待し直してください(後から権限を足しても、既に参加済みのBotには自動で反映されないため、サーバー側のロール設定 or 再招待が必要です)
  • debug: true にして/discordbridgejp reload後、もう一度MCチャットを送信し、コンソールに出る[Webhook]ログを確認してください。「Webhook作成に失敗」と出ていれば権限不足、「client未準備」が出続ける場合はprepare自体が走っていない可能性があります

/discordbridgejp reload のたびにWebhookが壊れる

RejectedExecutionException: The Requester has been stopped! のようなエラーが出る場合は、古いバージョンのプラグインを使っています。reload時にBotの接続(JDA)を作り直す際、Webhookクライアントが古い接続を参照したままになる不具合が過去にありました。最新版に更新してください。

進捗達成時のMC内チャット表示が白色になる/おかしい

○○が進捗[進捗名]を達成しました のような表示が白色になったり崩れたりする場合は、古いバージョンの不具合です。過去のバージョンでは、Discord通知用の日本語翻訳処理をサーバー全体のメッセージ翻訳に誤って割り込ませてしまい、バニラの進捗ブロードキャストの色情報が失われていました。最新版では修正済みです。

入退室の通知が常に出ない/常に抑制される

LuckPermsで管理者グループに *(ワイルドカード、全権限)を付与している場合、discordbridgejp.silentjoin / silentquit も自動的にtrue扱いになり、常に通知が抑制されます。これはバグではなく、DiscordSRVも同じ仕組み(hasPermissionによる権限チェック)を採用しているため同様の挙動になります。

対処は、該当グループに個別ノードをfalseで明示的に上書きすることです。

/lp group <グループ名> permission set discordbridgejp.silentjoin false /lp group <グループ名> permission set discordbridgejp.silentquit false

これでワイルドカードを持っていても、通常時は通知が出るようになります。SuperVanishJP等でバニッシュした際は、動的に付与される一時権限がこの上書きより優先されるため、バニッシュ中だけ正しく抑制されます。同様にdiscordbridgejp.adminもワイルドカードで自動的にtrueになるため、特定コマンドだけを制限したい場合は個別ノードを明示的にfalseで上書きしてください。

ロール色の反映が遅い

アカウント連携が完了すると、Discordからロール色を取得して即座に反映する設計になっています(通常は1秒未満)。数分かかる場合は、debug: trueでログを確認してください。[debug][NameColor]のログが出ない場合はイベント自体が発火していない可能性があるため、最新版か確認してください。タイムアウト気味な場合はDiscord API側の混雑が原因のこともあり、その場合は時間経過で自然に解消します。

連携コード(!XXXXXXXX)が読みにくい

Minecraftの標準フォントは0(ゼロ)とO(オー)、1Ilが似て見えることがあります。現在のバージョンでは、これらの紛らわしい文字をコード生成時に除外しています。それでも判読しづらい場合は、コード部分をクリックするとクリップボードにコピーされる機能があるので、目で読み取らず直接貼り付けてください。

新規プレイヤーがサーバーに入れない

require-link-for-new-players: true の場合、初参加(過去にこのサーバーへ入ったことが一度もない)プレイヤーは、Discordアカウントと連携するまで参加できません。これは意図した仕様です。

参加しようとすると、キック画面に連携コード(!XXXXXXXX)と、キック理由(例: REQUIRE_LINK)が表示されます。このコードを、連携したいDiscordアカウントから連携用チャンネルに貼ることで連携が完了し、次回から参加できるようになります。既に一度でも参加したことのあるプレイヤーは対象外です。

連携解除(unlink)したら急にログインできなくなった

require-link-for-new-players: true の場合、連携解除(/discordbridgejp unlink、または管理者による強制解除)自体もブロック対象として扱われます。連携解除と同時にタイムアウトが付与され、再ログインには連携が必要になります(キック画面にコードが表示されるので、それをDiscordの連携用チャンネルに貼れば自分で再連携できます)。

バニラ管理者(OP)はこのチェックを完全にスキップします。特定のプレイヤー(サブ管理者等)だけこの挙動から除外したい場合は、guild-leave.login-check-exempt-groups にLuckPermsのグループ名を指定してください(この場合、タイムアウト自体は付与されますが、グループに所属している間はブロックされません)。

require-link-for-new-players: false(連携任意モード)であれば、この挙動は一切発生しません。

Discordサーバーを抜けたらキックされ続ける/再ログインできない

これは意図した動作です。連携済みプレイヤーがDiscordサーバーを抜けると、キック画面に「Discordサーバーを抜けました」という案内とキック理由(GUILD_LEAVE)が表示されます。Discordサーバーに再参加し、guild-leave.rejoin-verify: true(デフォルト)の場合はキック画面に表示されるコードを認証チャンネルに貼れば再ログインできます。rejoin-verify: falseの場合は、再参加を検知した時点で自動的にブロックが解除されます。

Botが一時的に切断していた間にプレイヤーがDiscordサーバーへ出入りしていた場合でも、Botが再接続したタイミングで在籍状況が一括チェックされ、既にDiscordへ戻っている場合はオンラインでも即座にキックされることがあります(整合性を取るための挙動です)。

/plugins コマンドで「Bukkit Plugins:」と表示される

これは正常です。PaperサーバーでもCraftBukkit由来の表示文言がそのまま使われているだけで、実際にPaperで動いているかどうかとは無関係です。/version コマンドで実際のサーバーソフトを確認できます。

WARN/ERRORのみモードでDiscordから実行したコマンドの結果が見えない

console-log-level: "WARN_ERROR" に設定している場合でも、Discordのコンソールチャンネルから実行したコマンドの結果は、実行直後の数秒間だけレベルフィルタを無視して必ず表示されるようになっています。それでも見えない場合は、コマンド自体がエラーになっていないか、Botに該当コマンドを実行する権限があるか確認してください。

それでも解決しない場合

GitHubのIssue で報告してください。debug: true 時のコンソールログを添えていただけると原因の特定が早くなります。