改进的UI性能

改进的UI性能

改善各种菜单的性能,减少卡顿。

概览

让背包、铁匠、炼金和制作菜单加载得更快,尤其是在你携带大量物品时。

本模组仅使用脚本注解,因此不会覆盖原版脚本、不替换任何 UI 文件,也无需合并脚本。

需求

  • 《巫师 3:狂猎》重制版,已在 5.01c 版本上测试
  • 无需其他内容

安装

模组管理器: 像安装其他模组一样安装压缩包。

手动安装: 将压缩包中的 Mods 文件夹复制到游戏文件夹中,最终路径为:\Mods\modImprovedUIPerformance。

卸载时,只需删除文件即可。存档仍可正常加载。

功能说明

  • 铁匠: 在使用键盘和鼠标时,大型物品列表现在加载得更快。手柄默认已使用这种更快的方式。
  • 拆解: 列表不再逐项刷新,这主要对模组 Dismantle Info 有帮助。
  • 背包: 当标签页加载时,游戏通常会为每个物品搜索一个空闲槽位,物品越多耗时越长。本模组让大型标签页跳过此搜索。游戏自带的背包仅在手柄下允许这样做,因此使用键盘和鼠标时,你还需要一个能更改背包网格的模组,例如 Sort Everything。
  • 排序: 标签页不再连续构建两次,这主要对 Sort Everything 的排序有帮助。
  • 新物品: 如果没有物品被标记为新物品,背包打开得更快。
  • 炼金与制作: 配方检查频率降低。默认情况下,游戏每次打开菜单时也会加载所有炼金配方。使用本模组后,它们会保留在内存中,直到你已知的配方发生变化,因此重复访问会显著加快。

这也有助于其他使用这些菜单的模组,例如我另一个模组 Upgrade Items 中额外的铁匠标签页。

局限性

不要期望巨大的提升。本模组仅更改脚本,不触及 UI 本身,因此它可以减少不必要的工作,但无法减少 UI 显示物品所需的时间。大型背包仍然需要一些时间加载。

商人和储物箱无法通过这种方式改进,因为它们的网格无法从脚本访问。日志也不包含在内,因为其加载时间来自游戏中的循环,而且有太多其他模组会触及它,无法以合理兼容的方式进行更改。

实测结果

我在一个拥有 1,455 件物品且加载了完整模组列表的存档上进行了测试,每种情况运行了几次。由于硬件差异和许多其他因素,结果会有很大波动,但趋势应该是清晰的:

  • 打开背包,启用 Sort Everything 的排序: 约 675 毫秒 → 约 220 毫秒
  • 首次访问我遇到的最大标签页(727 件物品): 约 1700 毫秒 → 约 1000 毫秒
  • 打开时炼金脚本时间: 约 385 毫秒 → 首次 177 毫秒,之后约 60 毫秒
  • 打开时制作脚本时间: 104–118 毫秒 → 99–104 毫秒
  • 拆解标签页脚本时间: 202–208 毫秒 → 129–134 毫秒

在没有其他模组的情况下,收益较小但仍然存在,因为大部分改进来自跳过上述模组造成的额外工作。

存档数据

本模组会将物品的网格位置保存在你的存档中。游戏本身也会使用相同的值进行同样的操作,因此如果你决定移除本模组,也不会有任何问题。其他所有内容都存在于内存中,不会被保存。

兼容性

大多数模组可以与本模组一起正常工作。只有以下情况可能导致问题:

  • 替换这些菜单中某个菜单整个脚本的模组可能会在游戏启动时导致脚本错误。
  • 在游玩过程中更改炼金配方的模组可能会显示旧值,直到你学会一个配方或重启游戏。
  • 其他模组添加的 UI 标签页如果使用不寻常的布局,可能会显示异常。
  • 本模组会跳过大型铁匠列表的额外刷新以节省时间。如果某个模组仅通过此类刷新将其信息添加到列表中,则可能无法显示。