这插件到底怎样运作?我将以一个简单的伐木任务为例来描述。请注意“事件”、“条件”和“目标”之间的区别。
首先,你需要创建一个和NPC的对话。玩家可在对话内的多个选项中进行选择,NPC会根据选项做出不同的反应(例如NPC会在玩家要求工作时告诉他去砍些树) 。同时,在某些地方会有“事件”被触发,增加一个获得木头的“目标”。它将会把该玩家标记为开始任务的人。从现在开始,NPC会在对话中使用不同的选项,例如他会让玩家快点干活。这些选项将会基于“条件”被选择。
当玩家完成“目标”时(例如通过摧毁木头),“事件”将会触发,将这个玩家标为采集木头的人。当玩家返回NPC处并与其对话时,NPC将以“条件”来核对玩家是否真的拥有那块木头。如果是的话,他将触发给予奖励的“事件”。
我们没有创建任何“任务”对象,只是创建了一个能触发“事件”并与“条件”进行核对的对话。“目标”当然也不是“任务”,它只能在玩家得到木头时标记该玩家,不能单独存在。另一方面,该对话可以在之后开始其他任务(例如挖一些矿石),所以“目标”也不是“任务”
不要为举的例子感到失望,这些只是简化后的过程,所以我可以更简单的解释这个系统,其实用BetonQuest可以做到更多
这些对话可以像在Baldur's Gate或是Skyrim一样有多种路线,任务可以有多种方式来结束,也可以有很多不同的影响玩家声誉的结局,就靠你来决定了。
这个插件也包含了一个在书中的日志。你玩过Morrowind吗? 它们差不多一样,我们只是保留了你查看日志的顺序,所以你不必翻好几百页。现在完成任务并不需要显示像“你收集了所有的矿石,现在回到矿工那儿!”这样的信息。反之,它可以更新玩家的日志,加入像这样的新的记录:“我收集了所有的矿石,我需要回到矿工那儿去拿奖励!”。这样会显得真实得多。
特色
- 你的冒险不止一条路可以走
- 强大的事件系统:可以在任何地方发生你想的事情
- 强大的条件系统:你可以限制任何事情的(不)发生
- 拥有队伍系统,这带来了团队任务
- 与NPC的对话的多样性
- 所有的日志记录在一本书中
- 独立的任务物品背包
- 可以对物品操作,甚至是书中的文本
- 可以给玩家增加标签(tag)来储存信息
- 完善的荣誉系统
- 位置监听:当玩家进入指定区域会触发事件
- 每日任务和可重复任务
- 任务可以分配到不同的包(方便管理)
- 支持Citizens2
- MythicMobs, Skript, WorldGuard和Vault的混合(意思就是全部支持)
- 多语言支持并且非常容易翻译
- 玩家可以选择自己的语种
- 可以使用API创建你自己的事件、条件、目标(Developer)
- 支持SQLite&MySQL数据库
- 可备份的配置及数据
- 自动升级
适用版本:1.9.X-1.12.X