FFVIIHook - INI和开发者控制台解锁器

FFVIIHook - INI和开发者控制台解锁器

解锁开发者控制台,允许使用控制台命令并轻松更改游戏的CVars,同时允许从游戏的配置文件夹加载松散的INI配置文件。

杂项

FFVIIHook (for FFVII Remake)

另外请查看 重生版本

遗憾的是,Nexusmods 不再为这类代码模组提供太多下载积分。如果您想支持未来的模组,请考虑在 Ko-fi 上提供少量支持 :)

Ko-fi


安装时,只需将 xinput1_3.dll 解压到 "End\Binaries\Win64" 文件夹中,放在 "ff7remake_.exe" 文件旁边(下划线很重要,因为游戏包含两个 EXE 文件,没有下划线的 EXE 将无法生效)。

完成后,钩子即已生效。现在您可以解压附带的 Engine.ini 来使用您喜欢的任何自定义 CVar,或者通过打开开发者控制台来轻松测试任何自定义 CVar(请查看 Engine.ini 中的说明,了解应将其放置在何处)。

# 功能

  • 开发者控制台现已自动解锁,只需在游戏中按 波浪号 (~)反引号 (`) 键即可将其打开(如果控制台未出现,请查看下方的故障排除部分)。

  • 游戏现在会从标准的 UE4 INI 文件(如 Engine.ini / Input.ini 等)中读取内容,前提是这些文件位于 "**Documents\My Games\FINAL FANTASY VII REMAKE\Saved\Config\WindowsNoEditor**" 文件夹中(WindowsNoEditor 可能需要手动创建)。请参阅附带的 Engine.ini 了解如何设置自动 CVar 更改等。

  • 可以通过在某个 EXE 文件旁边创建一个空白的 "usefullscreen.txt" 文件,强制游戏内分辨率选择器对所有分辨率使用独占全屏模式(独占全屏仅在 DX11 模式下才能正常工作,请在游戏启动选项中添加 "-dx11"(不含引号)以启用它!)。

  • 游戏现在可以读取松散文件(如 UAsset 或 INI 文件),而无需将其存储在 .PAK 中,并且松散文件将优先于 .PAK 中的文件(这对希望快速测试其模组的模组制作者非常有用 - 在其他游戏中,这允许在运行时热交换资源,不确定是否适用于 FFVIIR,如果有人尝试过,请告诉我们效果如何)。

  • 防止游戏覆盖在 Engine.ini 中自定义的 "t.MaxFPS" 和 "r.SetRes" CVar(例如,如果您已设置 r.SetRes 使用独占全屏)。

有关游戏注册的约 1390 个 CVar 列表,请参阅我的 pastebin:https://pastebin.com/sLqrhLXE

# 故障排除

点击展开

如果游戏在安装此模组后无法加载,您可能需要安装最新的 VC 运行库,地址为 https://docs.microsoft.com/en-US/cpp/windows/latest-supported-vc-redist?view=msvc-170 - 请下载 vc_redist.x64.exe 文件。如果遇到任何其他问题,欢迎在此处发帖!

对于使用 Lutris 在 Linux 下玩游戏的用户,您可能会发现钩子因某些原因无法加载。幸运的是,baoulettes 找到了一个解决方案:https://forums.nexusmods.com/index.php?/topic/10858168-ffviihook-ue4-dev-console-unlocker/page-37#entry103505913

Steam Deck 用户可以执行类似操作,通过编辑游戏的启动选项,将其设置为 WINEDLLOVERRIDES="xinput1_3=n,b" %command% 应可使其正常工作。

如果控制台因某些原因不显示,或您的键盘没有波浪号键,您可以通过创建一个 "Documents\My Games\FINAL FANTASY VII REMAKE\Saved\Config\WindowsNoEditor\Input.ini" 文件并包含以下内容来重新绑定控制台键:

[/Script/Engine.InputSettings]
ConsoleKeys=P

在保存之前请确保游戏已关闭。保存后,重新启动游戏并在菜单处按 P 键,控制台应该会显示出来!您可以将 P 改为其他任何您喜欢的键,大多数键似乎都有效,但像 F1-F12 这类功能键却出于某种原因存在问题。

我还听说 Engine.ini / DefaultEngine.ini 文件相关的某些内容可能会阻止控制台正常显示 - 不太确定为什么会这样,但如果您仍然无法访问控制台,可以尝试先移除任何之前的 INI 模组(包括任何 .PAK 文件模组,因为大多数之前的 INI 调整都存储在 .PAK 中)。显然,这对某些人有效。

如果游戏开始显示奇怪的白色/绿色伪影:这似乎是由于游戏无法在超过 4096 像素的情况下正确渲染阴影造成的(因此,如果您的分辨率 × r.ScreenPercentage 的任何一侧大于 4096,您很可能会看到白色/绿色伪影)。HaYDeN 为 FFVIIR 制作的 Flawless Widescreen 插件包含一个 "GreenFix V2" 选项,可能对此有所帮助。

如果使用 FFVIIHook 开始导致控制器问题:请尝试将 FFVIIHook 的 xinput1_3.dll 重命名为以下名称之一:dxgi.dllX3DAudio1_7.dllXAPOFX1_5.dll

# 其他游戏

我也为其他游戏制作了一些类似的模组,欢迎查看!

此解锁器的代码基于我的 DQXIHook DLL(勇者斗恶龙 XI)(https://github.com/emoose/DQXIHook),未从其他地方使用任何代码。