# Discord Bot 實戰工作坊 ## 這堂課要做什麼? 今天的目標不是學更多語法,而是完成一個可以實際互動的 Discord Bot。 在這 1.5 小時內,你需要做到: - 想出一個明確主題 - 完成至少 2 個指令 - 加入 1 個 AI 功能(Gemini) - 讓其他人可以進你的 server 試玩 --- ## 規則 你的 Bot 需要符合: - 至少 2 個指令 - 至少 1 個 AI 功能 - 有明確用途或互動設計 - 其他人能理解怎麼使用 不建議: - 純聊天 bot(輸入一句 → AI 回一句) - 題目過大(例如萬能助理、完整 RPG) 建議先做「最小可完成版本」,再考慮擴充。 --- ## 主題方向(選一個即可) ### 遊戲 / 互動 - 海龜湯延伸 - 猜單字 / 猜角色 - 簡單劇情互動 ### 學習 - 單字 / 題目練習 - 問答 bot - 重點解釋 ### 社群娛樂 - 抽卡 - 今日運勢 - 簡單生成內容(迷因、句子) 重點不是做大,而是做清楚。 --- ## AI 工具使用方式 常見錯誤: ``` 幫我寫一個 discord bot ``` 建議問法: ``` 我已經有一個 discord bot(python, discord.py) 我要新增一個 !quiz 指令 功能: 1. 隨機出題 2. 使用者回答後判斷正確與否 請幫我寫這個 function ``` 原則: - 描述目前進度 - 明確說要補哪一段功能 - 優先問「小問題」 --- ## 範例拆解 主題:英文單字 bot 最小版本可以是: - `!word` → 顯示一個單字 - `!quiz` → 出一題 - `!explain` → 用 AI 解釋 不要一開始就做完整系統,先讓基本流程跑起來。 --- ## Step 1:先定義你的 Bot(不要急著寫 code) 請先寫下: ``` Bot 名稱: 主題: 要解決什麼問題 / 提供什麼互動: 指令 1: 指令 2: AI 用在哪: 今天最少要完成什麼: ``` 完成後再開始實作。 --- ## Step 2:實作順序 建議依序完成: 1. 讓 bot 能回應基本指令 ``` !test → 回應固定訊息 ``` 2. 接入 AI(Gemini) > 上次進度 3. 完成第一個功能 4. 完成第二個功能 --- ## 常見問題 1. Bot 沒反應 - token 設定錯誤 - intents 未開啟 2. API 無回應 - API key 未設定 - request 格式錯誤 遇到問題可以: - 查錯誤訊息 - 問 AI(提供完整錯誤) --- ## 試玩與交流 可以去玩玩看別人的 bot,並簡單觀察: - 這個 bot 的用途是什麼 - 哪個設計是好的 - 有沒有讓人困惑的地方 重點是理解「別人怎麼設計互動」。 --- ## 收尾 今天完成的是第一版。 如果你覺得這個 bot 有潛力,可以繼續延伸,作為期末分享小專案的主題。 --- ## 補充(有時間再做) - 定時任務(自動發訊息) - 記錄使用者資料 - 多人互動設計 - 訊息格式優化(embed) --- ## 核心原則 小而完整的作品,比大型但未完成的設計更重要。