---
# System prepended metadata

title: Discord Bot 實戰工作坊

---

# 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）

---

## 核心原則

小而完整的作品，比大型但未完成的設計更重要。