Ideas and draft for quest system design - etorth/mir2x GitHub Wiki
任务系统设计比较复杂,没有头绪。计划中的任务类型:
- 单人任务,最为普遍。
- 多人任务,需要多人协作,每个人有一个任务单步完成状态,整个多人任务有一个状态。每个人的单步任务可以相同,也可以根据分工而不同。
- 副本任务,需要进入一个副本和某boss对话,boss怪需要先处于任务状态,和玩家对话,然后进入战斗状态。
每个任务实体应该是一个ServerObject with uid:
- 一个quest可以是多人协作的,每个人有一个单独的fsm。一个fsm总是被一个人使用。
- fsm之间可以交互,一个fsm的状态改变可以是另一个fsm的输入。
- fsm负责向player发送lua script用于安装各种trigger,当player的trigger被激发时,激发事件作为对应fsm的输入,若不激发,player不发送消息到fsm,fsm处于idle状态。
搜索油管 quest system design, or, quest graph.