📊 表结构
| 字段名 | 数据类型 | 默认值 | 说明 |
|---|---|---|---|
| QuestId | INT UNSIGNED | 0 | 任务ID (主键) |
| RewardMailSenderEntry | INT UNSIGNED | 0 | 邮件发送者ID |
🔑 核心字段详解
🆔 QuestId - 任务ID
详细说明:任务ID,对应quest_template.ID。
取值范围:对应quest_template.ID
- 表的主键
- 指定需要发送奖励邮件的任务
- 一个任务只能有一个邮件发送者
- 必须与quest_template中的ID匹配
📧 RewardMailSenderEntry - 邮件发送者ID
详细说明:邮件发送者的NPC ID,对应creature_template.entry。
取值范围:对应creature_template.entry
- 邮件发送者的NPC ID
- 显示在邮件的发送者字段
- 可以是任务给予者或其他NPC
- 必须与creature_template中的entry匹配
- 邮件会显示该NPC的名称
💡 实际案例
任务 Quest ID 747 - 任务奖励邮件
任务完成时发送奖励邮件,发送者为任务给予者NPC
-- QuestId=747, RewardMailSenderEntry=任务给予者NPC ID
DELETE FROM quest_mail_sender WHERE QuestId = 747;
INSERT INTO quest_mail_sender VALUES
(747,356);任务 Quest ID 2 - 特殊NPC发送者
任务"The Jasperlode Mine"使用治安官杜汉作为邮件发送者
-- QuestId=2, RewardMailSenderEntry=治安官杜汉NPC ID
DELETE FROM quest_mail_sender WHERE QuestId = 2;
INSERT INTO quest_mail_sender VALUES
(2,797);任务 Quest ID 15 - 剧情NPC发送者
任务"The Report"使用守卫托马斯作为邮件发送者
-- QuestId=15, RewardMailSenderEntry=守卫托马斯NPC ID
DELETE FROM quest_mail_sender WHERE QuestId = 15;
INSERT INTO quest_mail_sender VALUES
(15,489);⚡ 快速参考
邮件发送者
| QuestId | 任务ID |
| RewardMailSenderEntry | NPC ID |
| 显示名称 | NPC名称 |
| 发送者 | 邮件字段 |
常见发送者
| 任务给予者 | 最常见 |
| 特殊NPC | 市长/首领 |
| 系统NPC | 游戏系统 |
| 剧情NPC | 剧情角色 |
邮件内容
| 奖励物品 | 任务奖励 |
| 奖励金钱 | 金钱奖励 |
| 感谢文本 | 感谢玩家 |
| 后续提示 | 后续任务 |
关联表
| quest_template | 任务模板 |
| creature_template | NPC模板 |
| quest_offer_reward | 任务奖励 |
| quest_mail_sender | 邮件发送者 |
🔗 相关表格
- quest_template - 任务模板表
- creature_template - NPC模板表
- quest_offer_reward - 任务奖励表
❓ 常见问题
Q1: 邮件发送者的作用?
邮件发送者用于指定任务奖励邮件的发送NPC,邮件会显示该NPC的名称作为发送者,增强游戏的沉浸感。
Q2: 如何选择发送者?
通常选择任务给予者作为邮件发送者,也可以选择特殊NPC(如市长、首领)或剧情NPC,根据任务背景选择合适的NPC。
Q3: 邮件何时发送?
任务完成时自动发送奖励邮件,邮件包含奖励物品、金钱和感谢文本,发送者为配置的NPC。
Q4: 不配置会怎样?
如果不配置quest_mail_sender,任务奖励邮件可能使用默认发送者或不发送邮件,取决于任务配置。