
任务核心
一个在《龙之信条2》中制作自定义原生任务的框架。在DD2自带的日志中制作你自己的任务,设定目标、目的地、触发器等。
查看大图[center]
[size=6][b][color=#d7b86a]QuestCore[/color][/b][/size]
[size=4][b]你的任务显示在游戏日志中。[/b][/size]
如果你喜欢这个模组,我有一个可选的捐赠链接:[url=https://ko-fi.com/sonicakp]在 Ko-Fi 上捐赠[/url][/center]
[center]
[size=4][b][color=#d7b86a]Vermund 还有更多故事要讲。[/color][/b][/size][/center]
[center][size=4][b][color=#d7b86a]属于你的。[/color][/b][/size][/center]
[line]
[size=4][b][color=#d7b86a]创建自定义原生任务[/color][/b][/size]
[b]QuestCore[/b] 是一个任务框架和 Lua API,让你能够在 [b]龙之信条 2 自带的任务日志[/b]中创建自定义任务。你的任务会拥有自己的日志页面、步骤、清单、地图目的地以及游戏自带的任务通知。
编写任何任务:一个小忙、一个探索任务,甚至是一系列随着玩家推进而展开的任务链。决定它如何开始、需要做什么以及如何结束。QuestCore 负责处理日志部分,而你的任务规则或你自己的模组负责处理世界中发生的事情。
[quote][b]这是一个框架,不是任务包。[/b]它为创作者提供了制作任务的工具,为玩家提供了运行任务所需的框架。随附的 [b]Template Test Quest(模板测试任务)[/b] 是一个供你修改的测试示例模板,而不是一个完整的冒险。[/quote]
[line]
[center][size=5][b][color=#d7b86a]功能[/color][/b][/size][/center]
[size=4][b][color=#e7cf93]真正的任务日志[/color][/b][/size]
为你的任务设置标题、摘要、步骤详情和历史记录。它使用原生日志界面,包括[b]查看详情[/b]、任务接受、更新/完成通知,以及已完成/已失败任务页面。
[size=4][b][color=#e7cf93]步骤和清单[/color][/b][/size]
构建包含多个阶段的任务。通过到达目的地、与某人交谈、击败指定敌人、携带所需物品或完成清单来推进。清单目标可以按任意顺序完成,并拥有各自关于需要做什么和已经做了什么文本。你自己的 Lua 规则可以处理任何更具体的情况。
[size=4][b][color=#e7cf93]在世界中开始的任务[/color][/b][/size]
在对话后、到达某地、击杀敌人、携带或收到物品,或完成另一个任务后开始任务。添加时间要求或你自己的条件。规则可以组合,因此任务可能只在某个特定故事任务和与正确的人对话后才开始。你也可以将 QuestCore 任务串联在一起。
[size=4][b][color=#e7cf93]地图标记和目的地[/color][/b][/size]
使用坐标或游戏命名的地图点设置目的地。这些支持世界地图和小地图标记、日志地图以及[b]前往地图[/b]。目的地会随着任务进入不同阶段而变化,并且可以拥有自己的地点或角色标签。
[size=4][b][color=#e7cf93]时间限制、奖励和失败[/color][/b][/size]
使用[b]游戏内时钟[/b]为某个阶段或整个任务设置截止时间。睡觉和等待都会计入其中。设置你自己的成功和失败文本,在完成时奖励[b]金币和物品[/b],或使用 API 在你的模组需要时使任务失败或重新开始。
[size=4][b][color=#e7cf93]进度随游戏保存[/color][/b][/size]
游戏会将当前任务阶段、已完成的清单目标以及完成或失败状态保存在你的正常存档中。时间限制使用单独的每个周目数据文件。
[line]
[center][size=5][b][color=#d7b86a]面向玩家[/color][/b][/size][/center]
将 QuestCore 与任何需要它的自定义任务模组一起安装,然后通过你正常的日志来跟进这些任务。普通游玩不需要使用开发者菜单。
随附的[b]自定义任务[/b][b]模板[/b]演示了一个任务是如何组合起来的。它的一些目标故意需要你自己的代码或测试菜单才能完成。如果你只想玩其他自定义任务,可以保持 [b]QuestCore_Template.lua[/b] 处于移除状态。
[line]
[center][size=5][b][color=#d7b86a]制作你自己的任务[/color][/b][/size][/center]
随附模板会逐步介绍任务的各个部分,并带有解释需要修改内容的注释和可供复制的示例。
[quote][b][color=#ffff00]任务创建仅通过编辑 Lua 文件完成。[/color][/b][/quote]
[list=1]
[]复制 [b]reframework/autorun/QuestCore_Template.lua[/b],并在同一文件夹中为你的副本起一个新名称。[/]
[]选择一个唯一任务 ID,然后逐节编写你的标题、日志文本、步骤和目标。[/]
[]设置开始规则、目的地、完成条件以及任何奖励或时间限制。[/]
[]使用 [b]REFramework > Script Generated UI > QuestCore menu (dev)[/b] 进行测试,然后进行完整游玩流程测试,包括保存和加载。[/]
[/list]
开发者菜单可让你开始、推进、完成、失败和重新开始任务,勾选目标,并检查哪些开始条件已满足。[b]Where am I?[/b] 会提供可复制的坐标。[b]Talk[/b] 和 [b]Kills[/b] 会显示你刚刚遇到的 ID,图片浏览器可帮助你选择现有的日志图片。
[b]reframework/data/QuestCore/[/b] 文件夹包含[b]NPC、敌人、物品、现有任务和日志图片[/b]的参考表。
[quote][b]测试前请备份你的存档。[/b]测试按钮会改变真实任务进度,完成任务会发放其配置的奖励。临时菜单更改不会重写你的 Lua 文件。[/quote]
[line]
[center][size=5][b][color=#d7b86a]供其他模组使用的 API[/color][/b][/size][/center]
QuestCore 也可以将现有模组连接到日志。你的代码可以开始和推进任务、勾选目标、更改日志文本和目的地、检查进度,并触发完成或失败。回调可让你的代码对任务阶段、对话和敌人死亡作出反应。
[b]模板的第 10 节[/b]涵盖了在单个文件中实现一个任务及其逻辑、连接单独模组,以及使用预定义任务槽来生成契约或请求。QuestCore 不会为你创建遭遇或对话;你的模组提供该行为,并告诉日志发生了什么。
[quote][color=#ffff00][size=5][b][font=Trebuchet MS]使用 API 的主要示例:[url=https://www.nexusmods.com/dragonsdogma2/mods/1341]Guild Contracts[/url],作者 [url=https://www.nexusmods.com/profile/ArrythmiaFPS]ArrythmiaFPS[/url]。[/font][/b][/size][/color][/quote]
[line]
[center][size=5][b][color=#d7b86a]安装[/color][/b][/size][/center]
[i]注意:个别任务模组可能有它们自己的额外要求。[/i]
[quote][b]使用 Fluffy Mod Manager 安装[/b][/quote]将 QuestCore 压缩包添加到 Fluffy Mod Manager,启用它,并在已安装 REFramework 的情况下启动游戏。
[b]手动安装:[/b]
将压缩包中的 [b]reframework[/b] 文件夹解压到你的龙之信条 2 游戏文件夹中,并允许文件夹合并。保持随附的文件夹结构不变。
[line]
[center][size=5][b][color=#d7b86a]任务 ID 和兼容性[/color][/b][/size][/center]
QuestCore 会创建自定义日志条目,而不是要求你替换原版任务。每个任务在所有已安装的 QuestCore 模组中都必须使用[b]60000 或更高的唯一 ID[/b]。两个任务使用相同 ID 会发生冲突。
[b]创作者:[/b]在你的模组页面列出你的任务 ID,发布后不要更改它们,并在更改阶段和清单条目的顺序或数量时务必小心。现有存档会记住与该结构对应的进度。随附模板使用 [b]990100[/b];开发者菜单为其测试任务使用 [b]990199[/b],因此请在自己的发布中避免使用这两者。
更改相同日志系统的模组可能需要兼容性测试。使用依赖 QuestCore 的任务时,请保持 QuestCore 处于安装状态,并请报告你发现的任何冲突。
[line]
[center][size=5][b][color=#d7b86a]当前限制[/color][/b][/size][/center]
[list]
[][b][color=#e7cf93]对话:[/color][/b]交谈条件会在对话结束时计数。它(目前)不会添加新的对话选项[/]
[][b][color=#e7cf93]日志图片:[/color][/b]任务会借用现有游戏任务的图片。尚不支持自定义日志图片[/]
[][b][color=#e7cf93]物品目标:[/color][/b]这些会检查玩家携带的物品。它们不会自动移除或交出物品——如果需要,你自己的代码需要处理这一点[/]
[][b][color=#e7cf93]时间限制数据:[/color][/b]截止开始时间保存在 [b]reframework/data/QuestCore/QuestCore_Deadlines.json[/b][/]
[/list][quote][b][color=#ffff00]注意:这是一个早期框架版本,某些方面可能会发生变化,并需要进一步的游戏内测试。[/color][/b][/quote]
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。