Vortexは、DiscordサーバーのBANやミュートなどのモデレーション、ログ記録、スパムの自動削除をまとめて担うBotです。開発者はjagrosh氏で、公開ソースと英語のwikiがGitHubにあります。この記事では、導入前に満たすべき利用条件、偽物の見分け方、ストライクと罰則の組み方、Automodの推奨値、レイド対策、Discord標準の安全機能との分担、困ったときのサポート窓口までを、wikiと公開ソースの記述に沿って説明します。
まとめ:Vortexを入れる前と入れた直後に押さえる5点
- 人間のメンバーが30人未満、またはBotの数が人間より多いサーバーは、設定を保存していないとVortexが自動で退出します。
- 招待リンクはwikiのGetting Startedに載っている公式のものだけを使います。「Vortex日本語版」を名乗る荒らしBotが出回ったことがあり、本物はユーザーID
240254129333731328で見分けます。 - Automodの多くは、先に
>>punishmentでストライク数ごとの罰則を決めないと有効にできません。推奨値の「紹介リンク3ストライク」は、3ストライクでBANの設定と組み合わせると1回目でBANになります。 - 連投対策はwikiの推奨値
>>antiduplicate 4 2 1を入れると公開ソースでは判定が丸ごと飛ばされます。5 3 1など別の値にします。 - 投稿前に止める処理と参加レイドの検知はDiscord標準のAutoModとRaid Protection、ストライクの累積・重複投稿の削除・自動ロックダウンはVortexと分けると、二重に罰が当たる事故を避けられます。
Vortexの正体:jagrosh氏が運営するモデレーション専用Bot
Discord上のBot名は「Vortex#8540」で、ユーザーIDは240254129333731328です。Botの掲載サイトdiscord.bots.ggのAPIでは、2016年10月25日に登録され、2026年10月24日時点で54,319サーバーに導入、54シャードで稼働中(online)と表示されています。プレフィックスは>>で、ソースはJava(JDA)で書かれ、Apache-2.0ライセンスで公開されています。
wikiの「About Vortex」によると、出発点は大量メンションで荒らすアカウントを止め、宣伝投稿を消すことでした。その後、重複メッセージの削除、レイド対策、ログ機能が加わっています。「追加しない機能」のページでは、セルフロール、タグやカスタムコマンド、グローバルBANリストなどモデレーション以外の機能は作らないと明言しています(aboutやpingなどの一般コマンドはあります)。
更新状況にも注意が要ります。GitHubの最終コミットは2024年3月13日(依存ライブラリの更新)、wikiの最終更新は2022年7月7日です。discord.bots.gg上ではonline表示ですが、wikiと公開ソースの間でも記述が食い違う箇所があり(後述の連投対策など)、設定後は実際に反応するかを試してから運用に入るのが安全です。
「Vortex Support」で探している場合の窓口
公式に案内されている問い合わせ先は、wikiのTroubleshootingにある開発者のサポートサーバーの#supportチャンネルです。discord.bots.ggの登録情報でも、サポート用の招待先はinvite.gg/jagroshになっています。質問するときは、困っている内容、サーバーID、>>settingsのスクリーンショットの3点を添えるよう求められています。wikiに答えがある質問は無視されることがある、とも書かれています。バグ報告はGitHubのIssuesで受け付けていますが、使い方の質問には使えません。
Nexus Modsの「Vortex」とは別物
同じ名前のソフトに、Nexus Modsが配布するゲーム用のMod管理ツール「Vortex」があります。「vortex 日本語化 できない」「vortex 日本語にならない」といった検索で探しているのがMod管理ツールの日本語化なら、この記事のDiscord Botとは別製品の話です。
偽物のVortexを見分ける:「日本語版」を名乗るBotの照合手順
Vortexには、名前とアイコンをまねた偽物が出回った経緯があります。日本語の解説で検索上位にあるnoteの記事(Discord情報発信局、2020年5月公開)は冒頭で、他人から教えられた招待URLではなく公式サイトのURLを使うよう呼びかけ、「本家とアイコンや名前がそっくりの偽Bot」を紹介する荒らしが起きていると注意しています。Yahoo!知恵袋の2022年8月27日の質問にも、「Vortex日本語版」は荒らしBotでアイコンがよく似ているという補足があります。公式wikiは日本語版を案内しておらず、運営者に英語の理解を求めています(後述の利用条件)。「日本語版」という説明を受けたら、招待する前に次の手順で照合してください。
Botの表示名とアイコンは誰でも同じものにできるので、見た目では判断できません。次の3点で照合します。
- 招待URLのclient_id:公式の招待URLはGetting Startedに載っている
discordapp.com/oauth2/authorize?client_id=240254129333731328&permissions=500559086&scope=bot+applications.commandsです。開く前にclient_id=の後ろが240254129333731328かを確かめます。人から渡されたリンクではなく、wikiから開くのが確実です。 - 導入済みBotのユーザーID:Discordの「ユーザー設定→詳細設定」で開発者モードをオンにすると、デスクトップ版ではBotを右クリックして「ユーザーIDをコピー」を選べます(DiscordのID確認方法)。240254129333731328以外なら通常版のVortexではありません。例外はVortex Proの契約サーバーが追加できる公式の別Botアカウント(Separate Bot Option)で、wikiのVortex Proページに記載があります。
- プレフィックス:本物は既定の
>>が常に使え、独自のプレフィックスを足しても>>は消せません。ただ、無反応は権限不足でも起きるので、これは補助の目安にとどめ、判定はユーザーIDで行います。
偽物を招待してしまったら、先にそのBotのロールから管理者権限を外してサーバーから追放し、監査ログでBotが参加してからの操作(チャンネルやロールの削除、BAN)を確認します。荒らし目的のBotは、招待時に付けた権限の範囲でサーバーを壊せるからです。
導入前に確認するVortexの利用条件
Getting Startedには、満たさないとVortexが自動で退出する条件が並んでいます。
| 条件 | wikiの記述 | 満たさない場合 |
|---|---|---|
| 人間のメンバー数 | 30人以上 | 自動退出の対象 |
| 人間とBotの比率 | 人間がBotより多い | 自動退出の対象 |
| 運営者の知識 | wikiを読んで解決できる | サポートでwikiへ戻される |
| Discordの規約 | 利用規約を守る | 通報があれば手動で退出 |
公開ソースの退出処理は、起動5分後から30分おきにサーバーを点検し、人間が30人未満かBotが人間より多いときに、オーナーへDMを送って退出します。設定かAutomodの設定を保存済みのサーバーは対象外ですが、点検はBot全体の共通スケジュールで走るので、招待から設定までの猶予は保証されません。30人未満での運用は前提外と考えるべきです。
wikiはさらに、「モデレーターを信頼していない」「運営陣が英語を十分に理解していない」サーバーにはVortexは向かないと書いています。コマンドの応答もwikiも英語だけで、言語を切り替える設定はありません。有志(VOISCORD)による非公式の訳『Vortexの日本語翻訳』はありますが、2022年9月12日時点のwikiを訳したもので、訳者自身が古くなっている可能性を断っています。
Vortexの招待手順と権限・ロール順の設定
Botを招待するには、そのサーバーで「サーバー管理」権限が必要です。公式の招待URLのpermissions=500559086を権限ビットに分解すると、管理者、メンバーのキック・BAN、メッセージ管理、ロール管理、ニックネーム管理、ボイスのミュート・移動、監査ログの表示など20種類になります。ネット上に出回っているpermissions=8のリンクは管理者権限だけを付ける別の書き方で、公式リンクではありません。
招待した後に最も効くのは、ロールの並び順です。wikiは「Vortex」ロールに管理者権限を与え、ロール一覧の最上部(または最上部近く)へドラッグするよう勧めています。Vortexより上のロールを持つ人は、Automodの対象から自動で外れます。>>ignoreを引数なしで実行すると除外中のロールが表示され、[can't interact]はVortexより上にあるロール、[elevated perms]はBANやメッセージ管理などの権限を持つロールを指します。この2種類は>>unignoreでは外せません。
Botの招待画面の見方や権限の一般的な考え方は、Discord Botの入れ方|招待リンクでのサーバー追加と権限の確認手順で詳しく扱っています。
Vortexの初期設定:ミュートロール・ログ・モデレーターロール
招待後に最低限そろえる設定は次のとおりです。コマンドはテキストチャンネルで1行ずつ送ります。>>setup muteroleは確認のメッセージが出るので、承認してから次へ進みます。ロール名とチャンネル名は、すでにあるものに読み替えてください。
>>setup muterole
>>modrole Staff
>>modlog #mod-log
>>messagelog #message-log
>>timezone Asia/Tokyo
>>settings
>>setup muteroleは、メッセージ送信・リアクション・発言・ボイス接続を禁じた「Muted」ロールを作り、各チャンネルに設定します。公開ソースでは、ミュートはこのロールの付与で実装されています(Discord標準のタイムアウト機能ではありません)。>>modroleで指定したロールの人は、Discord上の権限に関係なくVortexのモデレーションコマンドを使えます。指定しない場合は、Discordの画面でBANできる人だけが>>banを使えます。- ストライク制を使う場合、公式wikiはModLogの有効化を推奨しています。ModLogには、Vortexを経由しないBANやキックも記録されます。
- ログの時刻は、公開ソースの既定値ではGMT-4(日本時間より13時間遅い)です。
>>timezone Asia/Tokyoで揃えておくと、監査ログと突き合わせるときに迷いません。 - ほかのBotと
>>が重なるときは、「サーバー管理」権限を持つ人が>>prefix !vのように独自のプレフィックスを足せます(40文字まで)。既定の>>は消えず、両方で反応します。
ストライクと罰則の組み方
Vortexの罰則は、違反ごとに「ストライク」を付け、累計が決めた数に達したら自動で処罰する仕組みです。ストライクを付けられた本人には、件数と理由がDMで届きます。罰則は>>punishment <ストライク数> <処罰> [時間]で登録し、処罰はwikiに載っているBan・Softban・Kick・Muteのほか、公開ソースではメッセージを消さずにBANするSilentbanも受け付けます。BanとMuteには期間を付けられ、Noneを指定するとその段階の罰則が削除されます。
>>punishment 2 mute 10 minutes
>>punishment 4 mute 1 day
>>punishment 6 kick
>>punishment 8 ban 7 days
>>punishment 10 ban
組むときに見落としやすいのが、1回の違反で複数の段階をまたいだときの挙動です。公開ソースでは、今回のストライクでまたいだ段階の罰則をすべて集め、Vortexに実行権限がある処罰のうち、BAN、Silentban、期間付きBAN、ソフトBAN、キック、ミュートの順に重いものを実行します。期間付きBAN・ソフトBAN・キックと同時にミュートの段階もまたいだ場合は、ミュートの期限も記録され、再参加したときにミュート状態になります。最後の段階を超えた後は、違反のたびに最後の罰則が選ばれます(加算前後の累計がともに110を超えると、処罰の処理自体を行いません)。罰則は最大20段階、ストライク数は1〜100の範囲で設定できます。
この挙動と後述のAutomod推奨値を合わせると、「紹介リンクに3ストライク」と「3ストライクでBAN」を同時に入れた場合、紹介リンクを1回貼っただけでBANになります。最初の段階は誤検知でも取り返しがつくミュートにし、BANは累計の大きい段階に置くのが安全です。
手動の操作は次の3つです。
>>strike 3 @ユーザー 理由:ストライクを付ける(複数人を一度に指定できる)>>pardon 2 @ユーザー 理由:ストライクを取り消す>>check @ユーザー:累計ストライクとミュート・BANの状態を確認する
荒らし対策のAutomod設定と推奨値
Auto-Moderationのページは、機能ごとに推奨値を示しています。数値はいずれも付与するストライク数か上限値です。
| 防ぎたい行為 | 推奨コマンド | 動作 |
|---|---|---|
| 他サーバーの招待リンク | >>antiinvite 2 |
削除して2ストライク |
| 紹介・悪質リンク | >>antireferral 3 |
削除して3ストライク |
| コピペ文(copypasta) | >>anticopypasta 1 |
削除して1ストライク |
| @everyone・@here | >>antieveryone 1 |
権限の無い人の試行に1ストライク |
| 同じ文の連投 | >>antiduplicate 5 3 1など |
wikiの推奨値4 2 1は使わない(下記) |
| ユーザーへの大量メンション | >>maxmentions 10 |
超えた分だけストライク |
| ロールへの大量メンション | >>maxmentions role 4 |
超えた分だけストライク |
| 長文の貼り付け | >>maxlines 10 |
11〜20行で1、21〜30行で2ストライク |
| 名前の先頭に記号 | >>autodehoist ! |
表示順を上げる名前を直す |
連投対策では、wikiの推奨値「4 2 1」を避けます。公開ソースのAutoMod.javaにあるrunAntiDuplicateは、設定が「4 2 1」の組み合わせと一致すると、CPU負荷を抑える暫定措置として判定を丸ごと飛ばします。以前Automodを一括設定したときの既定値だったためで、wikiどおりに入れると連投対策は動きません。比べる内容は、本文に添付ファイル名を足し、ゼロ幅文字を取り除き、同じ語の繰り返しを1回分に縮めたものです。これが直前の投稿と一致し、間隔が30秒未満ならカウントが1ずつ増え、最初の投稿は0です。見えない文字を混ぜたり同じ語を重ねたりしても、別の文としては数えられません。>>antiduplicate 5 3 1なら、4通目で直近2分のその人の投稿をまとめて消し、5通目以降も削除しながら6通目から1通ごとに1ストライクを付けます。
各機能はOFFで無効になります。ユーザーへの大量メンションは、Botと投稿者本人を除く異なるユーザー数で数え、上限超過1人ごとに1ストライクなので、上限10で30人に一斉メンションした荒らしには20ストライクが付きます。前の章の罰則表なら一度でBANの段階に届きます。
パートナーサーバーの招待リンクだけ許したい場合は、>>antiinvite whitelist add <サーバーID>でそのサーバーを例外にします。告知用など特定のチャンネルで招待リンクやスパム判定だけを止めたいなら、チャンネルのトピックに{invites}や{spam}と書きます。Automod全体を止めるときは>>ignore #チャンネルです。
短縮URLやリダイレクト先に隠した招待リンクを展開して判定する>>resolvelinksと、語句や正規表現ごとにストライク数を決める>>filterはVortex Pro限定です。無料版では、bit.lyなどで包んだ招待リンクはantiinviteをすり抜ける前提で考えてください。
レイド対策:Anti-Raidモードの動作と自動化
短時間に大勢のアカウントが参加して荒らすレイドには、Anti-Raidモードで対応します。Anti-Raid-Modeのページと公開ソースによると、作動中の動作は次の4つです。
- サーバーの認証レベルが「高」未満なら「高」へ引き上げる(解除時に元のレベルへ戻す)
- 作動中に参加した人へ、サーバーがロックダウン中である旨をDMで送り、キックする
- キックした1人ごとにModLogへ記録する(ModLogが設定されていれば)
- Botアカウントは影響を受けず、作動中も追加できる
手動では>>raidmode onで作動、>>raidmode offで解除します。>>autoraidmode 10/10にすると、10秒に10人以上の人間のメンバーが参加した時点で自動で作動します。解除はタイマーではなく参加イベントで判定され、公開ソースでは最後の参加試行から120秒を超えて間が空いた後、次に誰かが参加しようとした時点で解除されます。>>autoraidmode onはこの10/10と同じ設定です。
Discordの認証レベル「高」は、メール認証済みで登録から5分以上、かつサーバー参加から10分以上たたないと発言できない設定です。ただしDiscordのVerification Levelsのヘルプによると、電話番号を認証したアカウントはこの条件をすべて免除されるため、作動前に入っていた電話認証済みのアカウントは止まりません。収まった後は>>clean @ユーザー 500のように、ユーザー・リンク・画像・語句・正規表現で絞って直近2〜1,000件の投稿をまとめて消します。
無料版とVortex Proの機能差
Vortex Proのページは、無料版で使えない機能を次のように示しています。
| 機能 | 無料版 | Pro Lite | Pro |
|---|---|---|---|
| モデレーションコマンド・Automod | 可 | 可 | 可 |
| メッセージ・モデレーションログ | 可 | 可 | 可 |
| Anti-Raidモード | 可 | 可 | 可 |
| ボイスログ・サーバーログ | 不可 | 可 | 可 |
| 招待リンクからのサーバー照会 | 不可 | 可 | 可 |
| 語句フィルター・リンク展開 | 不可 | 不可 | 可 |
| 専用Botアカウント | 不可 | 不可 | 可 |
wikiの記載では、料金は1サーバー月5米ドル、早期アクセスとして25サーバーまでで、空きがあればjagrosh氏のPatreonから申し込みます。Pro Liteは購入できない個別提供の区分です。Vortex Proのページの最終更新は2021年10月8日なので、現在の料金と募集状況はPatreonで確かめてください。
Discord標準の安全機能とVortexの役割分担
Discordにはサーバー設定にAutoModと参加レイドの検知が組み込まれており、Vortexの機能の一部と重なります。標準のAutoModが投稿前にブロックした投稿はVortexには届きませんが、通知だけのルールにした場合は両方が同じ投稿に反応します。比較の根拠はDiscordのAutoMod FAQ、How to Protect Your Server from Raids 101、Vortexのwikiです。
| 観点 | Discord標準 | Vortex |
|---|---|---|
| 止めるタイミング | 投稿される前にブロック | 投稿された後に削除 |
| 禁止語 | 既製リスト3種(英語のみ)+独自キーワード | Proのfilterのみ |
| スパム検出 | 機械学習(英語のみ) | 重複・コピペ・行数の規則 |
| 大量メンション | 上限(最大50)を超えた投稿をブロック | 超えた件数分のストライク |
| 処罰 | タイムアウト(独自キーワード・大量メンション) | 累計ストライクで段階処罰 |
| 参加レイドの検知 | Raid Protection(機械学習) | 参加人数のしきい値 |
| レイド中の対処 | 新規参加者に1時間CAPTCHA・招待の一時停止は手動 | 認証レベル「高」+参加者を自動キック |
日本語のサーバーで注意したいのは、標準AutoModの既製の禁止語リストとスパム検出が英語にしか対応していない点です(AutoMod FAQ)。独自キーワードのルールはどの言語でも使えるので、日本語の禁止語は自分で登録します。
レイドでは、Discord標準も手厚くなっています。Raid Protectionは参加レイドの兆候を機械学習で判定し、検知するとアラート用のチャンネルへ通知して、その後1時間は新規参加者にCAPTCHAを求めます。Raids 101は、このアラートをコミュニティサーバーへ段階的に提供中で、使えるサーバーが限られる場合があると書いています。Activity Alertsは、参加やDMの急増をBAN・キック・タイムアウト・サーバー管理などの権限を持つ人へ知らせ、通知からSecurity Actionsで招待と、フレンドでないメンバー同士のDMを止められます。止める期間は、DiscordのAPI仕様では最長24時間先までです。一方、Pause Invites FAQによると、招待の一時停止をAutoModで自動化することはできず、操作できるのはデスクトップ版の「サーバー管理」権限者だけです。
おすすめの分け方は、禁止語と明らかな宣伝文はDiscord標準のAutoModに任せて投稿前に止め、Raid ProtectionとActivity Alertsは通知を受けられるように設定しておきます。そのうえでVortexには「繰り返す人を段階的に処罰する」「モデレーターが寝ている時間帯でもレイドを自動で締め出す」「誰がいつ何をしたかを残す」の3つを任せる形です。AutoMod FAQに書かれている対応はブロック・通知・タイムアウトで、違反の回数に応じて処罰を重くする仕組みは説明されていません。メンション上限を両方で設定すると、標準側がブロックしてVortexには何も記録されないので、どちらか一方に寄せてください。
Vortexを選ばないほうがよい場面
次のどれかに当てはまるサーバーでは、Vortexを入れても期待どおりには動きません。
- メンバーが30人未満の身内サーバー:自動退出の対象です。まず標準のAutoModと認証レベルを設定し、段階処罰やログが必要になってから別のBotを検討します。
- ロール付与や招待者の追跡も1つのBotでまとめたい:モデレーション以外の機能は作らない方針で、招待者を数える機能もありません。
- 自分のサーバーで動かしたい:ソースはApache-2.0で公開されていますが、READMEはセルフホストを推奨せず、編集やコンパイルの手助けもしないと明記しています。独自のBotが必要なら、Discord Botの作り方|アプリ登録から24時間稼働までを手順どおりにで自作の手順を確認してください。
Vortexが動かない・反応しないときの確認順
wikiのTroubleshootingと「Ignoring Roles and Channels」をもとに、確認の順番を並べると次のようになります。
- コマンドの書き方:公開ソースのコマンドはすべて
>>で始まるテキスト形式で、スラッシュコマンドの登録処理はありません。/で打っても候補に出ないのは正常です。 - ロール順と権限:Vortexロールに管理者権限を与えて最上部へ移し、それで直るなら権限不足が原因です。
- 除外の一覧:
>>ignoreで、対象の人やチャンネルが除外されていないかを見ます。モデレーター自身で試しても、権限者として除外されるので反応しません。 - Automodの有効状態:
>>settingsで該当機能がONか、罰則が1つ以上登録されているかを確認します。 - ミュートが効かない:Mutedロールが各チャンネルに設定されているか、メッセージ送信を「許可」にする別ロールの上書きがチャンネルに無いかを見ます。許可の上書きを持つロールがあると、ミュート中でも発言できます。
- 特定チャンネルのメッセージログを残したくない:そのチャンネルでVortex本体(ロールではなくBotユーザー)に「メッセージ履歴を読む」の拒否を設定します。
- Discord側の障害:Discordのステータスページで遅延や障害が出ていないかを確かめます。
ここまでで解決しなければ、前述のサポートサーバーでサーバーIDと>>settingsの画面を添えて質問します。
よくある質問
Vortexは日本語化できますか?
できません。表示言語の設定がなく、応答もwikiも英語です。非公式の日本語訳は2022年9月時点のwikiが対象です。「日本語版のVortex」として紹介されるBotは本物ではないので、ユーザーIDで照合してください。Mod管理ツールのVortex(Nexus Mods)の日本語化は別製品の話です。
Vortexは無料で使えますか?
モデレーションコマンド、Automod、メッセージとモデレーションのログ、Anti-Raidモードは無料です。ボイスログ、サーバーログ、語句フィルター、短縮URLの展開はVortex Proの機能で、2021年10月8日更新のwikiには1サーバー月5米ドル・25サーバー限定と書かれていますが、現在の料金と募集状況はPatreonで確認してください。
特定のチャンネルをVortexの対象から外せますか?
外せます。>>ignore #チャンネルでそのチャンネルのAutomodが止まり、>>unignore #チャンネルで戻ります。招待リンクの判定だけを止めたいならチャンネルのトピックに{invites}と書き、特定のサーバーの招待リンクだけを全体で許すなら>>antiinvite whitelist add <サーバーID>を使います。
BANした人がVPNやサブアカウントで戻ってきたら検知できますか?
できません。DiscordのAPIがBotに渡すユーザー情報とメンバー情報にIPアドレスの項目は無く、VortexにもBAN回避を判定する機能はありません。公開ソースでは、Proのサーバーログが参加者のアカウント作成日時を表示し、作成から16分未満なら🆕の印を付けるところまでです。作りたての捨てアカウントで戻ってくる相手には、認証レベル「高」(登録5分以上・参加10分以上)と、Anti-Raidモードを組み合わせて発言までの時間を稼ぎます。
Invite TrackerとVortexの違いは何ですか?
Invite Trackerは、誰の招待リンクで何人が参加したかを数えるBotです。Vortexにはその機能が無く、招待に関するコマンドは、他サーバーの招待リンクの削除(antiinvite)と、使用回数の少ない招待の一括削除(>>inviteprune)です。Invite Trackerのドキュメントでは、導入後に「サーバー管理」権限を持つ人が/setupで追跡が動いているかを確かめて参加通知のチャンネルを選び、/invitesで各メンバーの招待数を、/leaderboard invitesでランキングを表示します。既存の招待の使用回数を取り込む/syncinvitesは、2回実行すると招待数が二重に数えられるため導入時に1回だけ使うよう注意書きがあります。レイドがどの招待リンクから来たかの検知と通知も無料で使えるので、経路の把握はInvite Tracker、荒らしの処罰はVortexと分けて併用できます。