脚本合并器 - 全新自动化版

脚本合并器 - 全新自动化版

适用于重制版、次世代版和经典版的新版脚本合并工具,拥有全新的界面,并支持Windows浅色和深色主题。

[color=#6fa8dc][b]注意[/b]:如有需要且在合理可行的情况下,我的所有模组都将针对《巫师3 重制版》和《往事之歌》进行更新。模组将大致按独立下载量顺序处理。可能会有少数例外。请查看每个模组页面了解特定详情。本模组状态:[/color]
[b][color=#f1c232]W3 重制版:更新已发布![/color][/b]
[b][color=#a64d79]往事之歌:未测试[/color][/b]

[center][color=#f1c232][size=6]Script Merger - 全新自动化版[/size][/color][/center]
[b]Script Merger - 全新自动化版(SM-FAE)[/b]可发现你的《巫师3》模组之间的冲突,并帮助你解决它们。它会检查你的模组所更改的一切内容:脚本、XML 文件,以及打包在模组 bundle 内的文件。能够合并的,它会合并成一个组合文件。无法合并的,它会按加载顺序列出,让你看到哪个模组胜出,并进行更改。它适用于《巫师3 重制版》(5.x)、次世代版(4.x)和经典版(1.32)。

[img]https://staticdelivery.nexusmods.com/mods/952/images/8405/8405-1792193286-452953023.png[/img]

[color=#e69138][size=5]入门指南[/size][/color]
第一次接触合并?它没有听起来那么难,而且你在这里所做的任何操作都不是永久性的。

[color=#e69138]基本概念[/color]
《巫师3》模组通过替换游戏文件来改变游戏。当两个模组更改同一个文件时,它们就会冲突:游戏只会使用其中一个模组的副本,另一个模组对该文件的更改就会丢失。这可能会导致模组失效,或使游戏无法启动。

SM-FAE 会发现这些冲突。在能够合并的情况下,它会将副本合并成一个保留每个模组更改的文件,并将其放入一个独立的模组中:合并模组 [color=#6fa8dc][font=Courier New]mod0000_MergedFiles[/font][/color],设置为优先于它所合并的模组。你的模组和游戏自身的文件永远不会被更改,而且[b]删除所有合并[/b]可以撤销一切。所以尽管放手尝试吧。

[color=#e69138]无法合并的内容[/color]
有些文件本质上无法合并:纹理、模型、菜单,以及其他内容无法组合的文件。SM-FAE 会在[b]不可合并[/b]部分列出这些冲突。这不是错误,也不是 SM-FAE 未能完成的事情。列出它们是为了让你看到这些冲突,并决定哪个模组应该胜出。

对于每个此类文件,游戏会使用加载顺序编号最低的模组的副本,SM-FAE 会将该模组列在首位。要让另一个模组胜出,请更改加载顺序:在 SM-FAE 本身中(双击某个模组),或在你的模组管理器中。许多 Vortex 用户会在 SM-FAE 中检查冲突,并在 Vortex 中设置顺序。

[img]https://staticdelivery.nexusmods.com/mods/952/images/8405/8405-1792193294-1854280407.png[/img]

[color=#e69138]日常流程[/color]
[list]
[][b]首次启动。[/b]SM-FAE 会找到你的游戏文件夹(Steam 或 GOG),并请你确认。[/]
[][b]刷新[/b]会扫描你的模组。bundle 内的文件会在你点击刷新时扫描,这样可以保持启动速度。[/]
[][b]创建所有脚本合并[/b]会一次性合并所有脚本冲突。对于 XML 文件和打包文本,勾选你想要的冲突,然后点击[b]创建所选合并[/b]。[/]
[][b]当只有你能决定时。[/b]如果两个模组更改了相同的行,SM-FAE 无法在它们之间做出选择,KDiff3 会打开,旁边配有指南。指南会解释你所看到的内容以及该选择什么,而且总有一条简单的出路:不保存关闭 KDiff3,然后卸载其中一个冲突的模组。[/]
[][b]不可合并冲突。[/b]检查每个冲突中哪个模组胜出,并在你想要另一个模组胜出的地方更改加载顺序。[/]
[][b]更新或移除模组后,[/b]SM-FAE 会删除过时的合并,然后你再次合并。[/]
[/list][img]https://staticdelivery.nexusmods.com/mods/952/images/8405/8405-1792193277-1418267081.png[/img]

一旦所有冲突都解决,杰洛特会给你竖起大拇指:

[img]https://staticdelivery.nexusmods.com/mods/952/images/8405/8405-1792193290-1116666233.png[/img]

不喜欢这样?在选项中关闭[b]没有冲突时显示巫师[/b],或显示你自己的图片:将其放入 SM-FAE 的 [color=#6fa8dc][font=Courier New]Images\Custom[/font][/color] 文件夹。该选项旁边的[b]?[/b]会说明如何操作。

[color=#e69138][size=5]功能[/size][/color]
[list]
[][b]所有类型的冲突:[/b]脚本、散装 XML 文件,以及 bundle 内的文本和其他文件。[/]
[][b]合并[/b]脚本、XML 文件和打包文本。打包合并会打包进合并模组自己的 bundle 中。[/]
[][b]不可合并冲突[/b]按加载顺序列出,胜出者在前,每个模组都带有其加载顺序编号,你可以更改。[/]
[][b]模组问题检查:[/b]为旧版游戏制作的模组,以及安装后游戏无法从其加载任何内容的模组,会显示在列表上方的栏中。[/]
[][b]KDiff3 指南[/b]用于只有你能决定的冲突。[/]
[][b]搜索[/b]在两个列表中均可使用,可按模组名称或文件路径搜索。[/]
[][b]筛选器[/b]用于冲突列表:隐藏仅因你选择的某个模组而存在的冲突,而不更改你的加载顺序或合并。[/]
[][b]在需要的地方提供帮助:[/b]搜索框和选项中都有[b]?[/b]。[/]
[][b]自动化:[/b]合并、清理过时合并并退出,无需点击。[/]
[][b]浅色和深色主题[/b],采用 SM-FAE 自己的蓝色,在高显示缩放下也可用。[/]
[][b]键盘快捷键[/b]用于主要操作。[/]
[/list]
[color=#e69138][size=5]选项[/size][/color]
[b]菜单[/b]中的选项按功能分组:[b]检查冲突范围[/b]、[b]冲突列表自动折叠[/b]、[b]合并[/b]、[b]自动化[/b]和[b]用户界面[/b]。将鼠标悬停在任意选项上可查看解释它的工具提示。

有两个自动化选项默认关闭:[b]自动创建所有脚本合并[/b]和[b]所有合并完成时自动退出[/b]。对于大型模组集合,并从模组管理器启动 SM-FAE 时,它们会让它自行合并并关闭。

[img]https://staticdelivery.nexusmods.com/mods/952/images/8405/8405-1792193291-1168407714.png[/img]

[color=#e69138][size=5]要求[/size][/color]
[list]
[][b]Windows 10[/b] 或更高版本。[/]
[][b].NET 8 桌面运行时[/b],来自 [url=https://dotnet.microsoft.com/en-us/download/dotnet/8.0]Microsoft 下载页面[/url]。如果你启动 SM-FAE 时没有任何反应,通常就是这个原因。[/]
[/list]
[color=#e69138][size=5]下载与安装[/size][/color]
有两个下载:
[list]
[][b]完整版[/b]包含 SM-FAE 使用的工具:KDiff3、带《巫师3》插件的 QuickBMS,以及 wcc_lite。如果你不确定,请选这个。[/]
[][b]独立版[/b]仅包含 SM-FAE,用于升级,或如果你已经拥有这些工具。[/]
[/list]已经在使用 SM-FAE?升级说明位于 [url=https://www.nexusmods.com/witcher3/mods/8405?tab=posts]Posts[/url] 选项卡的置顶帖中。

[color=#e69138]手动安装[/color]
将压缩包解压到你选择的一个新的空文件夹中,然后启动 [b]WitcherScriptMerger.exe[/b]。

[color=#e69138]使用 Vortex[/color]
Vortex 会将原版 Script Merger 安装到 [color=#6fa8dc][font=Courier New][Witcher 3]\WitcherScriptMerger[/font][/color]。将该文件夹重命名,例如重命名为 [color=#6fa8dc][font=Courier New]WitcherScriptMerger.old[/font][/color],在其位置创建一个新的 [color=#6fa8dc][font=Courier New]WitcherScriptMerger[/font][/color] 文件夹,并将 SM-FAE 解压到那里。从那时起,Vortex 会启动 SM-FAE,你也可以自己启动它。

[color=#e69138]使用 Witcher 3 Mod Manager(W3MM)[/color]
[url=https://www.nexusmods.com/witcher3/mods/2678]W3MM[/url] 不包含 Script Merger,因此请先按上述方法手动安装 SM-FAE。然后在 W3MM 中,点击[u]顶部菜单中[/u]的[b]设置[/b](不是带有书本图标的大设置按钮),进入[b]配置设置[/b],点击[b]更改 Script Merger 路径[/b],然后选择你解压 SM-FAE 的文件夹中的 [b]WitcherScriptMerger.exe[/b]。从那时起,W3MM 会使用 SM-FAE。

[color=#e69138]Steam Deck[/color]
[color=#6fa8dc][b]注意:[/b]尽力而为。这些步骤是基于较早的候选版本制定的,之后未再重新测试。[/color]
[b]Steam Deck 步骤[/b]
[spoiler]
[list=1]
[]从 Discover 商店安装 ProtonTricks。[/]
[]从 [url=https://dotnet.microsoft.com/en-us/download/dotnet/8.0]Microsoft 下载页面[/url]下载 .NET 8 桌面运行时的 Windows x64 安装程序,并运行它。ProtonTricks 会要求你选择一个游戏:选择《巫师3》,然后按照步骤安装。[/]
[]单独启动 ProtonTricks(需要一段时间)。选择 "Select the default wineprefix",然后选择 "Run winecfg",在 "Drives" 选项卡上,勾选 "Show dot files"。[/]
[]将 SM-FAE [b]完整版[/b]压缩包解压到《巫师3》安装文件夹内的 [color=#6fa8dc][font=Courier New]WitcherScriptMerger[/font][/color] 文件夹中,在 Deck 上该路径为 [color=#6fa8dc][font=Courier New]/home/deck/.steam/steam/steamapps/common/The Witcher 3[/font][/color]。然后你就有了 [color=#6fa8dc][font=Courier New]/home/deck/.steam/steam/steamapps/common/The Witcher 3/WitcherScriptMerger/WitcherScriptMerger.exe[/font][/color]。[/]
[]运行该 WitcherScriptMerger.exe,并在 ProtonTricks 中再次选择《巫师3》prefix。SM-FAE 会启动并要求你提供《巫师3》文件夹,该文件夹现在位于 [color=#6fa8dc][font=Courier New]Z:\home\deck\.steam\steam\steamapps\common\The Witcher 3[/font][/color]。[/]
[/list]设置完成:安装一些模组,然后开始合并。

[b]该候选版本的已知问题:[/b]打开选项窗口会导致 SM-FAE 崩溃,目前尚无修复方法。要更改选项,请改为编辑 [color=#6fa8dc][font=Courier New]WitcherScriptMerger.dll.config[/font][/color]。要查看需要更改什么,请在 Windows 上按你的喜好设置 SM-FAE,然后从那里的同一文件中复制。[/spoiler]

[color=#e69138][size=5]重制版(5.x)[/size][/color]
[list]
[][b]为旧版游戏制作的模组。[/b]其脚本为 4.04 制作的模组会替换游戏自身的脚本,并移除重制版在其中所做的更改,即使没有任何冲突。SM-FAE 的模组问题检查会发现这些模组并以琥珀色显示,在合并此类模组之前,你可以选择将其排除。[/]
[][b]将游戏更新到 5.x 后,[/b]点击[b]删除所有合并[/b]并重新合并。为 4.04 制作的合并会把旧代码带回来。[/]
[/list]
[color=#e69138][size=5]帮助、常见问题与故障排除[/size][/color]
[list]
[][b]关于 SM-FAE 的问题或疑问:[/b][url=https://www.nexusmods.com/witcher3/mods/8405?tab=posts]Posts[/url] 选项卡。[/]
[][b]SM-FAE 的 bug:[/b][url=https://www.nexusmods.com/witcher3/mods/8405?tab=bugs]Bugs[/url] 选项卡。[/]
[][b]合并特定模组时遇到的问题:[/b]这些模组的 Posts 选项卡。[/]
[/list]如果存在错误,请始终提及你遇到的具体错误。

[color=#e69138]启动 SM-FAE 时没有任何反应。[/color]
安装 .NET 8 桌面运行时(参见要求)。

[color=#e69138]"Can't find the Scripts folder at the expected location"[/color]
SM-FAE 指向了错误的文件夹。请选择游戏的主文件夹,即包含 bin、content 和 Mods 文件夹的那个文件夹。如果仍然失败,请在 Steam、GOG Galaxy 或 Epic 中验证游戏文件。

[color=#e69138]不可合并部分是不是错误?[/color]
不是。那些文件本质上无法合并。SM-FAE 列出它们是为了让你看到哪个模组胜出,并在你想要另一个模组胜出时更改顺序(参见入门指南)。

[color=#e69138]为什么会打开 KDiff3?[/color]
因为两个模组更改了相同的行,只有你能决定保留哪一个。随它一起打开的指南会说明该怎么做,包括简单的出路。

[color=#e69138]恢复原版 Script Merger[/color]
首先删除 [color=#6fa8dc][font=Courier New][Witcher 3]\Mods\mod0000_MergedFiles[/font][/color] 文件夹,[u]再[/u]启动原版 Script Merger。否则它会将 SM-FAE 的合并视为一个独立模组:合并很可能会失败,或者游戏无法启动,而你无论如何都得删除该文件夹。

[color=#e69138][size=5]致谢与许可[/size][/color]
SM-FAE 基于 [url=https://www.nexusmods.com/witcher3/users/26045039]AnotherSymbiote[/url] 的原版 Script Merger。非常感谢其所有的辛勤工作![url=https://www.nexusmods.com/witcher3/users/40489465]Partoutatix[/url] 和 [url=https://www.nexusmods.com/witcher3/users/2339958]woodbyte[/url] 后来创建了"非官方补丁",并将其整合到 Script Merger 中。也感谢他们。

特别感谢 [url=https://www.nexusmods.com/witcher3/users/89683013]Aeltoth[/url] 和 [url=https://www.nexusmods.com/witcher3/users/120776493]ElementaryLewis[/url],他们在 WolvenKit Discord 上帮助了无数用户和像我这样的模组开发者。

[b]第三方工具[/b]
[list]
[][url=https://kdiff3.sourceforge.net]KDiff3[/url],作者 Joachim Eibl,用于合并文本文件。[/]
[][url=http://aluigi.altervista.org/quickbms.htm]QuickBMS[/url] 及其《巫师3》插件,作者 Luigi Auriemma,用于扫描和解包 .bundle 文件。[/]
[]wcc_lite,作者 CD PROJEKT RED,用于将合并的文件打包成 .bundle 文件。[/]
[/list][size=1]Script Merger 的源代码从一开始就依据 GPL-2.0 许可证公开,SM-FAE 延续了这一做法:其源代码位于 [url=https://github.com/Phaz42/WitcherScriptMergerFreshAndAutomated]GitHub[/url] 上。[/size]