工具集修复 - 随从经验获取(模组制作者资源)

工具集修复 - 随从经验获取(模组制作者资源)

修复了DA工具集utility_h-include的一个错误,该错误导致新模块中雇佣的追随者无法获得经验值,除非使用变通方法。

模组制作者资源和教程

引用 DA 工具集维基:

[quote]注意,使用工具集 v1.0.982.0 时,调用 UT_HireFollower() 会导致招募的随从无法获得经验值。这是因为调用了

[code] WR_SetFollowerState(oFollower, FOLLOWER_STATE_ACTIVE, TRUE, 0, '''TRUE''');[/code]

而该函数为

[code] void WR_SetFollowerState(object oCreature, int nState, int nSendEvent = TRUE, int nMinLevel = 0, '''int bPreventLevelup''' = FALSE)[/code][/quote]这是由于 utility_h.nss 包含文件中的一个错误导致的,在正常情况下,工具集会从数据库中读取该文件。关于向模块添加新随从的教程,通常会详细介绍几种规避此问题的修复方法。

在我的测试中,我发现如果 Override 文件夹中存在一个可包含的 nss 文件,编译带有相应 #include 的脚本时会优先使用它。因此,通过修复导出的本地 utility_h.nss 副本中的一行代码,我消除了上述变通方法的需要。

[b]使用方法[/b]: 此脚本本身不做任何事,旨在作为向模块添加随从的模组制作者的资源。 只需将附件中的 "zz_fix_xp_gain" 文件夹解压到你的 %Userprofile%\Documents\BioWare\Dragon Age\packages\core\override 文件夹中。如果你此时正在运行《龙腾世纪》工具集,按 F5 刷新或重启程序以使更改生效。 此后,如果你已有包含 "UT_HireFollower" 命令的脚本,请重新编译它们。你的随从应该就能正常获得经验值了。

[b]实现方法[/b]: 我以本地副本的形式打开了核心包含文件 utility_h.nss。在其中,我将第 851 行从 [code] WR_SetFollowerState(oFollower, FOLLOWER_STATE_ACTIVE, TRUE, 0, TRUE); [/code]改为 [code] WR_SetFollowerState(oFollower, FOLLOWER_STATE_ACTIVE, TRUE, 0, FALSE); [/code] 然后,我导出了这个修改后的文件,并删除了本地副本,只保留了数据库副本和我自己的修改版。我将其从工具集导出文件夹中取出,放入自己的文件夹中,并以 "z" 开头,以确保它在加载顺序中排在最后。然后,我刷新了工具集并重新编译了我的脚本。我的随从现在无需对模块脚本进行任何调整,就能正常获得经验值。

建议: 每当你编译脚本时,会有许多文件进入你的工具集导出文件夹。其中一些文件可能会覆盖其他脚本模组。对于这些问题,我推荐使用我可靠的 [url=https://www.nexusmods.com/dragonage/mods/5836]Flotsam Cleaner[/url]。