📊 表结构

字段名 数据类型 默认值 说明
id MEDIUMINT UNSIGNED 0 游戏对象模板ID (主键1)
quest MEDIUMINT UNSIGNED 0 任务ID (主键2)

🔑 核心字段详解

🆔 id - 游戏对象模板ID

详细说明:对应gameobject_template.entry,指定可以开始任务的游戏对象模板。 取值范围:对应gameobject_template.entry
  • 复合主键的一部分
  • 一个游戏对象可以开始多个任务
  • 对应游戏对象的模板ID
  • 必须是已存在的游戏对象模板

📋 quest - 任务ID

详细说明:对应quest_template.ID,指定游戏对象可以开始的任务。 取值范围:对应quest_template.ID
  • 复合主键的一部分
  • 同一个任务可以被多个对象开始
  • 对应任务的模板ID
  • 必须是已存在的任务

💡 实际案例

公告板 配置任务公告板

游戏对象ID=12345可以开始任务ID=1000

INSERT INTO gameobject_queststarter VALUES( 12345, 1000 );

多任务 一个对象开始多个任务

游戏对象ID=12346可以开始任务1001、1002、1003

-- 第一个任务 INSERT INTO gameobject_queststarter VALUES(12346, 1001); -- 第二个任务 INSERT INTO gameobject_queststarter VALUES(12346, 1002); -- 第三个任务 INSERT INTO gameobject_queststarter VALUES(12346, 1003);

任务物品 配置任务物品开始任务

书籍对象ID=12347可以开始任务ID=2000

INSERT INTO gameobject_queststarter VALUES( 12347, 2000 );

查询 查询游戏对象可以开始的任务

查询游戏对象ID=12345可以开始的所有任务

SELECT gqs.id, gqs.quest, gt.name, qt.Title FROM gameobject_queststarter gqs JOIN gameobject_template gt ON gqs.id = gt.entry JOIN quest_template qt ON gqs.quest = qt.ID WHERE gqs.id = 12345;

⚡ 快速参考

用途说明

任务公告板多任务开始
任务物品书籍、信件
特殊触发任务触发对象
复合主键id + quest

关联表

gameobject_template游戏对象模板
quest_template任务模板
gameobject_questender任务结束表
creature_queststarter生物任务开始

常见对象类型

公告板多任务
书籍阅读任务
信件信件任务
宝箱发现任务

任务流程

开始queststarter
进行quest_template
结束questender
奖励quest_reward

🔗 相关表格

❓ 常见问题

Q1: 游戏对象如何开始任务?
玩家点击或交互游戏对象时,如果该对象在gameobject_queststarter表中有记录,玩家就可以从该对象接受任务。
Q2: 一个对象可以开始多个任务吗?
可以,一个游戏对象可以开始多个任务,只需在表中添加多条记录即可。
Q3: 任务公告板如何配置?
公告板类型的游戏对象通常可以开始多个任务,为每个任务添加一条gameobject_queststarter记录。
Q4: 这个表和creature_queststarter的区别?
creature_queststarter针对生物NPC,gameobject_queststarter针对游戏对象(如公告板、书籍、宝箱等)。