游戏内实时环境参数界面

游戏内实时环境参数界面

游戏内编辑器,用于实时修改当前设置的环境参数。所有数值均可记录,以便后续在环境修改中使用。

模组制作者资源和教程

实时游戏内环境参数界面

该模组面向其他模组作者:它允许你在游戏中实时交互式地修改当前环境参数,并将这些设置记录到脚本日志中。
它不会保存/恢复任何更改过的参数!
该模组仅旨在为参数调整提供实时可视化反馈,方便在游戏外用新数值优化自定义环境。

兼容1.30及以上所有版本(未修改任何原版脚本)。

限制

该模组基本上允许交互式更改当前使用的环境设置。
它支持在分层环境之间切换。
切换时仅显示该图层的数值处于激活状态。
但当退出envui界面时,数值应保持混合后的激活状态。
(该模组是故事板UI工作的副产品,作为列表菜单可重用性的概念验证而创建。因此我只在某些区域进行了测试!)

该模组提供了一个控制台命令来卸载所有分层环境:

envui_disable_envs()

用法

默认热键为F11,用于在杰洛特和希里的探索状态下打开环境界面。如需更改,您需在提供的input.settings文件中调整热键设置。

该模组有一个在线帮助弹窗,显示所有可用快捷键(欢迎提供翻译!)。环境UI启动后,默认帮助快捷键是F12。观看视频和/或确保自己熟悉这些快捷键。

打开环境UI时,时间会被保存并冻结。
所有你在交互时对时间做出的更改,一旦关闭模组就会被丢弃,并恢复到启动模组前的时间。

一些背景信息

大多数环境参数是为一天中的特定时间设置的(这些参数与时间无关)。对于同一设置,不同时间的多个不同值会创建一条曲线,引擎会根据当前游戏时间在曲线点之间插值。每个曲线点包含一个标量值(如视频中第一个所示)和一个四值向量(大多数时候/总是?为颜色定义)。
看起来曲线的标量向量并不会同时用于某个设置,不过我也可能弄错。具体使用哪个值(标量或向量)以及有效取值范围取决于(显然)所选设置。但我不太熟悉环境设置,如果设置名称本身没有提供相关信息,那我也不清楚...模组不会对设定值进行验证!

The set values are NOT verified by the mod!
设定值不会被模组验证!

如何从先前版本升级

  1. 删除 mods/modEnvUi 文件夹(如果存在 dlc/dlcEnvUi 文件夹也一并删除)
  2. 搜索并删除文档中 Documents/The Witcher 3/input.settings[MOD_EnvUi] 部分以及(如果存在)[MOD_EnvUi_InteractiveTime] 部分及其所有条目。
  3. 安装/升级所有依赖至所需版本
  4. 将压缩包解压至您的巫师游戏目录(压缩包中的dlc文件夹内容放入巫师3/dlc文件夹,mod文件夹内容放入巫师3/mod文件夹)
  5. 将下载包中 mods/modEnvUi/modEnvUi.input.settings 的内容添加到您 Documents/The Witcher 3/input.settings 文件的末尾

如何安装

  1. 首先安装依赖项(modBootstrap、modSharedImports、modRadishSeeds)
  2. 将压缩包解压至您的巫师游戏目录(即压缩包中的dlc文件夹内容放入巫师3/dlc文件夹,mod文件夹内容放入巫师3/mod文件夹)
  3. 将下载包中 mods/modEnvUi/modEnvUi.input.settings 的内容添加到你 文档/The Witcher 3/input.settings 文件的末尾(启动游戏后会自动重新排序)
  4. 在modBootstrap中启用自动启动,通过在文件 mods_registry.ws 的bootstrap注册表文件中的 createMods 函数里添加一行代码 add(modCreate_EnvUiMod());,使其看起来大致如下:

重要提示:

  • 确保你以 -debugscripts 参数启动游戏,否则将不会记录任何数值!
  • 确认在退出游戏后,Documents/The Witcher 3 目录下已创建scriptslog.txt文件且包含输出内容
  • scriptslog.txt 文件会在每次游戏启动时重新创建!请确保在再次启动游戏前保存您记录的数值!

如何卸载

  1. 删除 mods/modEnvUi 文件夹以及(如果存在)dlc/dlcEnvUi 文件夹
  2. 搜索并删除文档中 The Witcher 3/input.settings 文件里的 [MOD_EnvUi] 段落(如果存在的话,还包括 [MOD_EnvUi_InteractiveTime] 段落)及其所有条目。同时删除包含该模组启动快捷键的两行内容(Action=EUI_OpenMenu)。
  3. 从引导注册表文件 mods_registry.ws 中移除新增的行

鸣谢

@SilentM00n 关于编辑分层环境时所需的环境资源缓存技巧(参见ENV Helper)