📊 表结构

字段名 数据类型 默认值 说明
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_questender VALUES( 12345, 1000 );

多任务 一个对象结束多个任务

游戏对象ID=12346可以结束任务1001、1002、1003

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

宝箱 配置宝箱结束任务

宝箱对象ID=12347可以结束任务ID=2000

INSERT INTO gameobject_questender VALUES( 12347, 2000 );

查询 查询游戏对象可以结束的任务

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

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

⚡ 快速参考

用途说明

任务交付点交付任务
宝箱打开完成
特殊触发任务完成对象
复合主键id + quest

关联表

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

常见对象类型

宝箱收集任务
祭坛仪式任务
旗帜占领任务
传送门到达任务

任务流程

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

🔗 相关表格

❓ 常见问题

Q1: 游戏对象如何结束任务?
玩家点击或交互游戏对象时,如果该对象在gameobject_questender表中有记录,且玩家已完成任务目标,就可以交付任务。
Q2: 一个对象可以结束多个任务吗?
可以,一个游戏对象可以结束多个任务,只需在表中添加多条记录即可。
Q3: 宝箱如何配置任务结束?
宝箱类型的游戏对象通常用于收集任务,玩家打开宝箱时交付任务,添加gameobject_questender记录。
Q4: 这个表和creature_questender的区别?
creature_questender针对生物NPC,gameobject_questender针对游戏对象(如宝箱、祭坛、旗帜等)。