平滑地图重制版

平滑地图重制版

使用控制器或WASD平滑地平移和缩放地图。更快地打开地图。

描述

让地图的使用更加流畅:

  • 在高刷新率显示器上,使用手柄或键盘平移地图时更加流畅。包括区域地图和世界地图。
  • 通过加快动画速度并在动画播放时加载地图,让地图加载更快。

一些说明:

  • 重制版游戏中的地图已经以 60 fps 运行。此模组将解除地图帧率上限,使其与游戏帧率匹配,因此无论何种情况看起来都很流畅。
  • 使用鼠标拖拽地图的方式不变——它本来就很流畅,现在手柄和 WASD 平移也已与之匹配。

兼容性

始终与 Smooth UI Remastered 兼容——只需将 Smooth Map(无论你使用哪个变体)加载在 Smooth UI 之上即可。

与其他地图模组兼容有两种途径:

方案 1:兼容补丁

如果有可用的兼容版本,你可以将所需的其他地图模组与对应模组的 Smooth Map 版本一同安装。目前可用的版本有:

  • 配合 Map Remastered 使用:下载 Map Remastered 版本并将其加载在 Map Remastered 之上。(注意:不支持 Map Icons - Remastered)
  • 配合 Gwent Players Map 使用:下载 Gwent Players Map 版本并将其加载在 Gwent Players Map 之上。
  • Nexus 上可能还有其他兼容补丁——如果你的地图模组未在此列出,请尝试在 Nexus 上搜索。

方案 2:Conjunction Map Framework

你可以使用由 KyleCo76 制作的 Conjunction Map Framework(CMF)来组合多个地图模组(前提是这些模组有可用的适配器)。

  • 从本页面下载 Conjunction Map Framework 和“Smooth Map - Conjunction Map Framework Version”。请务必阅读 Conjunction Map Framework 上的说明以成功组合你的模组。你想要组合的地图模组必须有可用的 Conjunction Map Framework 适配器。
  • CMF 版本的重要说明:与 Smooth Map 的其他版本不同,CMF 版本的 Smooth Map 包含与 CMF 对接的脚本。脚本应为自包含的,无需手动合并。额外的好处是,由于包含脚本,它有一个配置菜单,允许你调整地图帧率和地图打开行为。

安装说明

  1. 选择与你正在使用的其他地图模组相匹配的版本。你只需下载一个版本。
  2. 如果使用 Vortex 安装,安装将自动完成,你可以继续下一步。如果手动安装,请将模组文件夹解压到你的 The Witcher 3/Mods 目录中。
  3. 确保该模组的优先级高于其他涉及地图的模组。

包含 Smooth UI 和 Map Remastered 的加载顺序示例(优先级更高者靠前):

  1. Smooth Map - Map Remastered Version
  2. Map Remastered
  3. Smooth UI Remastered

技术说明

地图平移代码完全包含在 panel_worldmap.redswf 文件中。

此模组采用了比旧次世代版本更精细的方法。次世代版本加快了计时器并相应调整了平移速度(这正是 CDPR 在重制版中所做的!),而此模组每帧运行,检查自上一帧以来经过的时间,并据此移动地图。这种方法适用于任何帧率,并减少了因固定计时器与实际帧率不能整除而产生的抖动。

此外,此模组调整了加载动画的时序,并允许地图在滑入时淡入,这意味着地图出现所需的时间明显减少。

对地图代码的修改是使用字节码补丁器完成的;请参阅下方的 AI 使用披露。

补丁器和 Smooth Map 代码是开源的:https://github.com/subcasual/smoothmap

AI 使用披露

此模组是在 Claude Code 的帮助下开发的。修补地图需要编辑 panel_worldmap.redswf 中的 actionscript。我曾尝试使用 FFDec 编辑 actionscript 并重新编译,但它在重新编译 worldmap 时失败了。

在我模组的先前版本中,我通过在 FFDec 中手动修改字节码中的常量来绕过这个问题。在此版本中,情况不仅仅是编辑常量,所以我让 Claude 构建了一个字节码补丁器,根据 actionscript 的修改来编辑字节码。因此,对地图的 actionscript 修改是由人工驱动的,但实现修改的机制在很大程度上依赖 Claude。我还与 Claude 一起构建了工具,以自动化构建模组和兼容补丁的过程。

致谢