MinecraftとDiscordでチャットのやり取りをする事ができたら、便利だと思いませんか?
DiscordSRVというプラグインなら、MinecraftサーバーとDiscordサーバーを連携させてやり取りが行えるようになります。
この記事では、DiscordSRVの機能と使い方を説明します。
DiscordSRV
サーバーが起動したりプレイヤーが参加すると、Discordにメッセージが行きます。
マインクラフト上でチャットするとDiscordにそのチャットが送られます。
もちろん逆にDiscordのチャットをマインクラフトに送ることも可能です。
また、死亡した時のメッセージなども送られます。
導入&設定
必要な環境: Spigotサーバー
Spigotサーバーの建て方 はこちら↓
https://riminosu13.hatenablog.com/entry/2020/08/13/231056
プラグインの導入
まずこのサイトからDiscordSRVをダウンロードします。↓
https://www.spigotmc.org/resources/discordsrv.18494/
ダウンロードしたファイルをサーバーの「plugins」フォルダに入れてください。
入れることができたらサーバーを起動するか/reloadなどでプラグインをサーバーに読み込ませてください。
「DiscordSRV」という名前のフォルダができていることを確認できたらOKです。
Discordのボット作成
Discordとマインクラフトのサーバーの架け橋となるボットを作成します。
下のURLからボット作成ページを開きます。
https://discord.com/developers/applications
※サイト上でDiscordにログインしてない場合はしてください。
右上にある「New Application」を押してください。
出てきた入力欄に任意のボットの名前を入れ「Create」を押して作成を完了します。
※Discordのアカウントがメールアドレス認証を完了していないと作成を完了することができません。
左の「Bot」を押してBotのタブを開き、右の「Add Bot」を押してください。
確認のメッセージが出るので、「Yes, do it!」を押します。
このような画面になっていたらボットの作成は成功です。
最後に、左の「Bot」を選択し「SERVER MEMBERS INSIST」を有効にしましょう。
※追記:「MESSAGE CONTENT INTENT」の有効化も必要になりました。2022/06/11
サーバーとボットの連携
プラグインを入れたサーバーと作成したボットを連携させます。
「Click to Reveal Token」を押してトークンを表示します。
表示された文字列をコピーしてください。
サーバーの「plugins」フォルダの中にある「DiscordSRV」フォルダの中の「config.yml」をメモ帳で開きます。
※ワードパッドで開くと文字化けが起こる可能性があります。
「BotToken: "BOTTOKEN"」の「BOTTOKEN」の部分を先ほどコピーした文字列に変更して保存してください。これでサーバーとボットの連携は完了です。
ボットをDiscordサーバーに追加
今度は「OAuth2」から「URL Generator」を開き「bot」にチェックを入れ、「Administrator」を選択し、生成されたURLをコピーします。
そのURLにアクセスすると、ボットの招待ページを開くことができます。
ボットを追加したいサーバーを選択し、「はい」を押します。
権限の確認が出るので、「認証」を押してください。
※管理者にチェックマークが入っていることを確認してください。チェックが入っていないとボットがメッセージを送信できなくなったりします。
この画面まで行けば追加完了です。
チャットのやり取りを行うテキストチャンネルを設定
Discordでユーザー設定を開きます。
「テーマ」から「開発者モード」をオンにしてください。
そうするとチャンネルのIDをコピーすることができるようになるので、やり取りを行うときに使いたいテキストチャンネルのIDをコピーしてください。
先ほど開いた「config.yml」をもう一度編集します。
「Channels: {"global": "000000000000000000"}」の「000000000000000000」の部分を先ほどコピーした文字列に変更して保存してください。
お疲れ様でした!これで設定は完了です!
以上がDiscordとマインクラフトでチャットできるプラグインの説明でした。
※LunaChatと一緒に入れると不具合が起きますが、「config.yml」の「DisabledPluginHooks: []」を「DisabledPluginHooks: ['LunaChat']」に変更すると大丈夫になります。