怎麼在 Discord 記錄成員資料、遊戲 ID 和小號
要在 Discord 記錄成員資料、遊戲 ID(IGN)或小號,建立一張每位成員一列的資料表(IGN、階級、小號和一個 Discord 成員欄位),讓成員用斜線指令填寫。之後任何人都能用成員、IGN 或小號名稱查到一份資料。我們做的 CordBase 在 Free 方案就能做到。
公會通常把這些放在釘選訊息、幹部筆記,或一份沒人打開的試算表裡,結果每週都有人在聊天室問「Kaelmage 是誰的小號?」。這篇指南把名單放進 Discord。先說一個限制:沒有報名表單。成員要執行 /profile add,自己挑要填的選項。
完成後你會有
- 一個
/profile指令,有add、query、view、update和delete動作。 - 每位成員一列:IGN、Discord 成員、階級、小號、職責和備註。
- 可以用成員、IGN 或小號名稱查詢。
- 決定誰能新增、編輯和刪除資料的權限。
第 1 步:建立資料表
沒有現成模板有 IGN 或小號欄位。最接近的是成員名錄,但它的第一個文字欄位是時區,而 row 選擇器搜尋的就是那個欄位。所以這張要從頭建立。
- 到 cordbase.gg 使用 Discord 登入,選好你的伺服器,控制台詢問時把機器人加進去。
- 建立一張名為「Profile」的新資料表。指令名稱會自動填成
profile。 - 依照下面的順序加入欄位,完成後儲存。
- IGN:文字,必填。放第一個。
row選項會用第一個文字欄位自動完成,所以成員打 IGN 就能找到一份資料。 - Member:使用者,必填。成員從 Discord 的成員選擇器選自己。
- Rank:選項,用你們自己的階級當選項(例如 Officer、Raider、Trial)。
- Alts:文字。選一種格式並固定使用,例如
Name (Class), Name (Class)。 - Role:選項,填 Tank、Healer 和 DPS,或你的遊戲用的分類。
- Notes:文字。
順序很重要,因為 query 的結果只顯示前四個欄位,而之後加的欄位會排在最後。資料表建立後,欄位的 key 和類型就固定了,但你還是可以新增欄位和改名稱(見資料表說明文件)。
第 2 步:設定權限
權限在資料表的編輯頁面,所以儲存後再打開它。在資料表設定任何身分組之前,每位成員都能執行每個動作,包括刪除。這樣設定身分組:
- 給全體成員都有的身分組(例如
@Member,因為@everyone不能選)寫入權限。成員就可以add和update。 - 給幹部身分組管理權限,多了
delete。 - 如果你只想讓幹部輸入資料,給成員讀取、幹部寫入。
只要設定了任何身分組,沒有列出的身分組的成員就完全不能使用這張資料表。擁有 Discord「管理者」權限的人永遠有完整權限。
要清楚寫入權限代表什麼:它涵蓋每一列,不只是成員自己的那列。有寫入權限的人可以編輯任何人的資料,也沒有東西能阻止一位成員新增兩份資料。
第 3 步:成員新增自己的資料
/profile add ign:Kaelith member:@Mara rank:Raider role:Healer alts:Kaelmage (Mage), Kaelstab (Rogue)
Discord 會先要求必填選項(IGN 和 Member),接著成員可以加任何選填的選項。沒有東西會引導他們填欄位,所以把完整指令釘選在頻道裡。要修改資料,在 row 選項開始打字,從清單裡選:
/profile update row:Kaelith alts:Kaelmage (Mage), Kaelstab (Rogue), Kaeltank (Warrior)
更新會取代整個值,所以要把包含新小號的完整清單重打一次。「增加(加到目前的值上)」和「減少(從目前的值扣除)」模式只用於數字欄位,而這張資料表沒有數字欄位。
第 4 步:查詢成員
/profile view row:Kaelith顯示每個欄位,加上誰建立了這一列、最後一次更新是什麼時候。/profile query member:@Mara找出某位 Discord 成員的資料。/profile query alts:Kaelmage找出某個小號是誰的。文字篩選會找出任何含有那段文字的資料列,不分大小寫。/profile query rank:Officer limit:25最多列出 25 位幹部。篩選條件可以組合,所以rank:Raider role:Healer也行。
查詢會先列出最新的資料列,預設 10 筆,最多 25 筆。回覆會貼在頻道裡,所以在別人看得到的地方查詢。
變化版:每個角色一列
如果你想讓每個小號都有自己的職業、等級或裝備,就把資料表改成每個角色一列:IGN、Member、Class 和一個 Main 是/否欄位。這樣新增小號只是一般的 add,而 /profile query member:@Mara limit:25 會列出 Mara 玩的所有角色。代價是列數:一張 Free 資料表可以放 100 列,小號會把它們用掉。
什麼時候別的工具比較適合
如果你需要排序、公式或讓幹部批次編輯,試算表比較好。CordBase 沒有 CSV 匯入,也沒有 Google Sheets 同步。
如果資料裡有截圖和長篇介紹,大家是拿來讀而不是搜尋,每位成員一篇貼文的論壇頻道比較適合。資料表放的是短文字,不是圖片。
如果你想讓角色資料從遊戲裡抓取、不用人打字就保持最新,請用能從遊戲讀取公會名單的工具。CordBase 從不讀取遊戲資料,也沒有 API。
值得知道的限制
- Free:2 張資料表,每張 100 列。Pro(每月 $8)取消資料表數量限制,每張資料表可以有 10,000 列,並加入已儲存的檢視和批次編輯。
- 每張資料表最多 25 個欄位。這張資料表沒有數字欄位,所以沒有
leaderboard動作。如果你想要,可以加一個像 level 這樣的數字欄位。 - 沒有給成員的報名表單或逐步提示,也不會檢查 IGN 是否真的存在、是否屬於那位成員。
- 任何成員都可以執行
/delete-my-data,刪除自己在每個伺服器透過機器人建立的資料列。
常見問題
機器人可以一步一步引導成員填每個欄位嗎?
不行。沒有表單,也沒有逐步提示。成員執行 /profile add,Discord 會為每個欄位顯示一個選項。只有你設為必填的欄位(這裡是 IGN 和 Member)一定要填,其他可以跳過。
可以限制成員只能編輯自己的資料,或每人只能有一份嗎?
權限做不到。權限套用在整張資料表上,所以有寫入權限的人可以更新任何一列,成員也可以新增不只一份。如果你想嚴格控管,給成員讀取權限、幹部寫入權限,並用 /profile view 看是誰建立了某一列。
成員要怎麼查某個小號是誰的?
執行 /profile query alts:<name>。這個篩選會找出 alts 文字裡含有那個名稱的資料,不分大小寫。它只對有人打進 alts 欄位的小號有效,因為 CordBase 不會讀取遊戲裡的資料。