DiscordSRV | 教學
一位普通、快爆肝的大學生,目前就讀桃園某大學資訊工程系。

使用此插件前,請先完成架設機器人

前置:

1. 一個 Minecraft 安裝插件的伺服器 (Spigot/Paper/Bukkit皆可)
2. 插件本體 (取得連結)
我知道,一坨英文不想看也看不懂對吧XD

這顆按鈕按下去就對了

下載完成後並開啟伺服器,讓他跑出插件資料夾 plugins/DiscordSRV

第一步,連結機器人
開啟 DiscordSRV/config.yml 與 Discord Developers Portal

Click to Reveal Token 按下去顯示那一長串的東西並複製

切換至 DiscordSRV/config.yml 找到 下方這個設定 並覆蓋 BOTTOKEN,這樣就算連結完成了。

BotToken: "BOTTOKEN"

第二步,將剛剛建立的機器人加入伺服器
切換回 Discord Developer 頁面,並將分頁切換至 “OAuth” 並下拉,並在 “SCOPES” 選擇第二排中間的 “bot
下方 “Bot Permissions” 直接勾選 “Administrator” 即可,也可以只選擇個別權限,這邊直接用管理員來進入。
上方完成後應該會長的像這樣

點選下面網址旁邊 Copy 並貼上瀏覽器後應該就會詢問你機器人要加入到哪個伺服器,當然你要有管理員權限才可以新增機器人,選擇後加入即可完成此步驟。

第三步,連結發言與控制台
切換至 DiscordSRV/config.yml 並找到

# 玩家發言、主要訊息連結頻道
Channels: {"global": "000000000000000000"}
# 控制台頻道ID,留白表示不使用
DiscordConsoleChannelId: "000000000000000000"

在這些的上方有一些說明可閱讀,這邊只教學如何連結

取得頻道 ID:
開啟 Discord 設定,在 進階 中開啟 開發者模式

開啟完成後對頻道點右鍵,就可以看到複製ID (只支援文字頻道!)
將複製到的 ID 貼上到 global 與 DiscordConsoleChannelId 後面的一長串 000000 …

# 玩家發言、主要訊息連結頻道
Channels: {"global": "842035527091645450"}
# 控制台頻道ID,留白表示不使用
DiscordConsoleChannelId: "428182406977207746"

以上存檔,第三步完成,可以開啟伺服器了。

開啟伺服器,看看剛剛連結的發言文字頻道,看到這個就表示設定成功且正常囉~

FAQ

Q 開啟伺服器後機器人沒有上線。
A 請檢查位於標題列下方的【使用此插件前,請先完成架設機器人】之【BOT USER 設定說明】設定區塊。

Q 為甚麼我聊天的頻道會有 console 端的東西?
A 請檢查此文章【第三步】,兩個頻道不能設定相同。

Q 為甚麼我的聊天沒有同步?
A 請檢查 此文章【第三步】, Channels 必須為 “global”,如果你是用其他聊天插件 (TownyChat) 請查看該插件的技術文件,綁定 DiscordSRV 的時候是否為 global,否則預設就是 global。

如果有任何問題,可以在下方留言或是到我的 Discord 來告訴我打錯了,還是教錯了~
還真的不會,進來 Discord 我們會撥空教你一步一步弄好,祝開服順利

綁定帳號篇

我也想要有跟其他伺服器一樣使用指令綁定才可以發言!
不要緊張不要慌,先開啟你的 Discord 伺服器設定

再來開啟插件 config.yml 設定檔案,找到以下設定

MinecraftDiscordAccountLinkedRoleNameToAddUserTo: "這邊變更為剛剛輸入的身分組名稱"

注意:這樣只是綁定帳號,沒有「強制」綁定帳號,所有路人(未綁定玩家)都可以在「與 Minecraft 聊天的連結頻道聊天」
強制綁定帳號要再設定下方,變更為 true 即可。

DiscordChatChannelRequireLinkedAccount: false

綁定提示訊息可以變更 messages.yml 中的 …

CodeGenerated: "&6驗證碼 &e%code%&6. 私密給予 %botname% &7(在 Discord 旁列表尋找)&6 來綁定 Discord 與 Minecraft 帳號。"
UnknownCode: "驗證碼無法識別,請重試。"
InvalidCode: "您確定這是您的驗證碼?驗證碼為四位數字。"
DiscordAccountLinked: "Discord帳號已連接給 **%name% (%uuid%)**"
DiscordAccountAlreadyLinked: "您的帳號已與 %username% (%uuid%) 綁定。"
DiscordLinkedAccountRequired: "您嘗試發送訊息至遊戲中,但這個伺服器要求您將 Minecraft 帳號綁定至 Discord。\n請登入伺服器輸入 `/discord link` 來進行綁定帳號。\n```%message%```"
DiscordLinkedAccountCheckFailed: "無法檢查您的帳號是否已綁定,請稍後再試。"
# Minecraft
ClickToCopyCode: "點擊複製"
MinecraftAccountLinked: "&a您的 Minecraft 帳號已經連接 Discord 帳號 &6&l%username%&a。"
MinecraftAccountAlreadyLinked: "&a您的 Minecraft 帳號已綁定至 Discord。如果您有足夠的權限,可以輸入 /discord unlink 來取消綁定。"
LinkedCommandSuccess: "&a您的 Minecraft 帳號已和 %name% 綁定。"
UnlinkCommandSuccess: "&c您的 Minecraft 帳號已和 %name% 解除綁定。"
MinecraftNoLinkedAccount: "&c您的 Minecraft 帳號並未綁定至 Discord 帳號。"
LinkingError: "&c因為內部錯誤現在無法進行綁定帳戶,請聯繫伺服器管理人員。"
MinecraftNobodyFound: "&c未找到任何和 \"%target%\"匹配的 Discord ID/Discord 名稱/Minecraft 名稱/Minecraft UUID 。 "

如果,想要讓玩家在登入伺服器前就綁定帳號,開啟 linking.yml …

Require linked account to play:
  Enabled: false // 改成 true
  Listener priority: LOWEST // 建議:HIGH

  Not linked message: |-
    &7您必須綁定您的 &9Discord 帳號&7 才可以登入伺服器。
    &7您的驗證碼為 &b{CODE}&7,記下您的驗證碼後將驗證碼以私訊方式傳送給 &b{BOT}&7 來綁定您的 Minecraft 帳號。
    &7Discord 伺服器連結 » &b{INVITE} &7(請手動輸入)"

  Messages:
    DiscordSRV still starting: "&c目前無法檢查連線狀態,請稍後再試。"
    Not in server: "&c您目前不在我們的 Discord 伺服器中,請加入 {INVITE}。"
    Failed to find subscriber role: "&c在 Discord 上找不到任何訂閱權限組。"
    Failed for unknown reason: "&c驗證帳號時發生未知錯誤,請聯繫管理員。"
    Kicked for unlinking: "&c您因為解除綁定帳號所以被踢出伺服器。"

記得要變更 config.yml 中的 DiscordInviteLink,不然會沒有邀請連結哦 …

感謝您的閱讀🧡

若您對本篇文章有任何建議或回饋,點擊下方圖片加入我的 Discord 伺服器來討論!

%d 位部落客按了讚: