ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

REFramework 完全指南:RE Engine 游戏 Mod 框架、Lua 脚本平台与 VR 支持的安装与使用

REFramework 完全指南:RE Engine 游戏 Mod 框架、Lua 脚本平台与 VR 支持的安装与使用 游戏开发VR【免费下载链接】REFrameworkMod loader, scripting platform, and VR support for all RE Engine games项目地址https://gitcode.com/GitHub_Trending/re/REFramework点击查看免费下载REFramework 是一个面向 Capcom RE EngineRE 引擎游戏的全能 Mod 框架集成了Mod 加载器、Lua 脚本平台、插件系统、内置 Mod 工具集与通用 6DOF VR 支持灵感来源于并复用了 Kanan 项目的部分代码。本指南将带你从零掌握它的安装方式非 VR、VR、Proton/Linux、内置功能全景、开发者工具与脚本/插件体系让你能在《生化危机》系列、《怪物猎人》系列、《鬼泣 5》《街霸 6》《龙之信条 2》等 15 款以上的 RE 引擎游戏中自由扩展玩法。一、项目概览REFramework 是什么在开始安装前先理解这个框架的定位。从 README.md 的定位描述来看REFramework 是一套面向 RE 引擎游戏的一体化工具链Mod 框架Mod framework提供统一的 Mod 宿主环境Mod 通过同一套接口与游戏交互脚本平台Scripting platform内置完整的 Lua 脚本运行时玩家无需编译即可编写功能脚本Modding 工具Modding tool内置开发者工具与大量开箱即用的功能 Mod。技术上REFramework 以dinput8.dll的形式随游戏进程注入原理详见下文“源码解析”部分同时支持DirectX 11 与 DirectX 12两种渲染后端这也是它能同时覆盖老游戏如 RE2与新作如《怪物猎人荒野》的基础。二、安装指南非 VR、VR 与 Proton/Linux2.1 获取构建版本稳定版Stable从 Releases 页面下载最后一个稳定构建开发版Nightly需要尝鲜新功能、新游戏支持时使用 Nightly 开发者构建。2.2 非 VR 安装仅需一个 DLL这是最简单的安装方式从压缩包中只解压dinput8.dll这一个文件放入游戏根目录即可。游戏根目录示例以《生化危机 2》为例G:\SteamLibrary\steamapps\common\RESIDENT EVIL 2 BIOHAZARD RE2原理说明游戏启动时会加载同目录下的dinput8.dllREFramework 利用这一机制实现进程内注入因此只需放置这一个文件。源码 src/Main.cpp 中可以看到DllMain在DLL_PROCESS_ATTACH时完成模块加载、内存分配、游戏身份识别GameIdentity::initialize()以及创建启动线程的全过程。2.3 VR 安装解压整个压缩包VR 用户需要额外步骤安装 SteamVR除非你在受支持的设备上使用 OpenXR将压缩包中的全部内容解压到对应游戏文件夹而不仅是dinput8.dll——VR 运行所需的附加 DLL、资源文件都包含在完整压缩包中。VR 相关的疑难排解请参考 Wiki 的 VR Troubleshooting/FAQ 页面。2.4 Proton / Linux 安装在 Steam 中为游戏添加启动选项在游戏属性中设置WINEDLLOVERRIDESdinput8.dlln,b %command%n表示不加载原版系统 DLLb表示优先使用内置bultin版本——这样 Wine/Proton 环境会优先加载 REFramework 提供的dinput8.dll实现与 Windows 相同的注入效果。注意以上均为 README 明确给出的官方安装路径适用于 Windows 与 Proton/Linux 环境不同游戏目录结构可能略有差异但“放入游戏根目录”的原则一致。三、内置 Mod 功能全景开箱即用REFramework 自带一组跨游戏通用的功能 Mod启动游戏后即可在框架的 ImGui 菜单中启用。以下功能均能在 src/mods 目录找到对应实现功能适用范围源码位置Lua 脚本 API 与插件系统所有游戏src/mods/ScriptRunner.cpp、src/mods/PluginLoader.cpp通用 6DOF VR 支持所有游戏src/mods/VR.hpp运动控制Motion controlsRE2 / RE3 / RE7 / RE8同上第一人称First PersonRE2、RE3src/mods/FirstPerson.hpp手动手电筒Manual FlashlightRE2、RE3、RE8src/mods/ManualFlashlight.hpp自由视角Free Camera所有游戏src/mods/FreeCam.hpp场景时间缩放Scene Timescale所有游戏src/mods/Scene.hppFOV 调节滑块所有游戏src/mods/Camera.cpp暗角禁用Vignette Disabler所有游戏src/mods/Camera.cpp超宽屏/宽高比修复所有游戏src/mods/Graphics.hppGUI 隐藏/禁用所有游戏src/mods/Graphics.cpp3.1 Lua 脚本 API 与插件系统核心能力这是 REFramework 最具价值的部分让玩家与 Mod 作者能用Lua 脚本或原生 C 插件直接与游戏运行时RE 引擎的 VM、TDB 类型数据库、场景、GUI 等交互。从 src/mods/ScriptRunner.cpp 的源码可以看到脚本运行时基于 sol2 与 Lua向脚本暴露了多个全局命名空间re核心 API 表包括re.msg()弹窗提示以及一系列回调注册函数re.on_pre_application_entry(name, fn)/re.on_application_entry(name, fn)按应用入口名如渲染阶段挂接回调re.on_pre_gui_draw_element(fn)/re.on_gui_draw_element(fn)GUI 绘制钩子re.on_draw_ui(fn)每帧绘制 UI 时调用re.on_frame(fn)每帧回调re.on_script_reset(fn)/re.on_config_save(fn)脚本重置与配置保存钩子。log日志接口log.info / log.warn / log.error / log.debug以及log.set_level(info|warn|error|debug)thread线程信息thread.get_hash()、thread.get_id()、thread.get_hook_storage()reframework框架自省reframework.get_version_string()、get_version_major/minor/patch、get_branch、get_commit_hash、get_build_date、is_drawing_ui()、save_config()、is_key_down(key)等数学类型Vector2f、Vector3f、Vector4f、Matrix4x4f、Quaternion支持点积、叉积、归一化、插值、SLERP、矩阵逆等常用运算。此外ScriptRunner.cpp 实现了add_hook/add_vtable钩子机制脚本可以为指定REMethodDefinition游戏方法注册 pre/post 回调pre 回调可修改参数并决定是否调用原函数CALL_ORIGINALpost 回调可改写返回值——这是许多脚本 Mod如自动拾取、伤害修改、镜头控制的底层基础。插件系统则由 src/mods/PluginLoader.cpp 实现启动时创建reframework/plugins目录并扫描其中所有.dll文件进行加载随后 initialize_plugins 校验插件的reframework_plugin_required_version导出函数主版本号必须一致、次版本不得更新、游戏名必须匹配再调用reframework_plugin_initialize完成初始化。插件可回调reframework_on_present、reframework_on_imgui_frame、reframework_on_lua_state_created等事件并获得完整的 SDK 函数集TDB 类型查询、方法调用、字段读写、资源管理、VM 上下文等。3.2 VR通用 6DOF 支持与运动控制VR 模块是 REFramework 的一大招牌。从 src/mods/VR.hpp 可以看出其能力规模双运行时同时支持 OpenVRSteamVR与 OpenXR 两种运行时runtimes/OpenVR 与 runtimes/OpenXR因此 VR 安装说明中才要求“安装 SteamVR除非使用 OpenXR”通用 6DOF通过挂钩相机hijack_camera、渲染hijack_resolution、音频监听器hijack_wwise_listeners即 Wwise 音频朝向实现全游戏通用的头部追踪与立体渲染运动控制针对 RE2/RE3/RE7/RE8 实现了手柄动作映射openvr_input_to_re2_re3/openvr_input_to_re_engine动作集包含 Trigger、Grip、Joystick、A/B 键、方向键、RE2 快速转身/换弹/第一人称切换、RE3 闪避、手电开关等丰富的可调参数AlternateFrameRenderingAFR 交替帧渲染、DecoupledPitch俯仰解耦、2DUIScale、2DUIDistance、WorldSpaceUIScale、OpenXRResolutionScale、MotionControlsInactivityTimer、JoystickDeadzone、CustomViewDistance、HMDOrientedAudio等渲染层支持 D3D11 与 D3D12 两套组件vr/D3D11Component、vr/D3D12Component并内置 Overlay 组件与镜头畸变Lens Distortion处理。3.3 第一人称、手电筒与自由视角First PersonRE2/RE3将第三人称游戏切换为第一人称视角Manual FlashlightRE2/RE3/RE8手动控制手电筒开关默认按键为FVkKeyScan(f)见 src/mods/ManualFlashlight.hpp。该 Mod 最初由 SkacikPL 创作、在 REFramework 中重建Free Camera所有游戏自由飞行视角默认按键为空格上/左 Ctrl下/左 Shift加速/左 Alt减速提供 Speed、SpeedModifier、RotationSpeed、LockPosition锁定位置、DisableMovement 等选项src/mods/FreeCam.hpp。3.4 画质与显示类修复Scene Timescale场景时间缩放慢动作/快进滑杆范围-5.0 5.0默认 1.0src/mods/Scene.hppFOV 滑块全局 FOV 调节Use Custom Global FOV/Global FOVRE8 另有专属的RE8 FOV与RE8 Aiming FOV瞄准 FOV选项src/mods/Camera.cppVignette Disabler禁用暗角效果RE8 及更新版本TDB ≥ 69还可调节Vignette Brightnesssrc/mods/Camera.cppUltrawide/Aspect Ratio 修复is_ultrawide_fix_enabled()控制的超宽屏修复配合do_ultrawide_fix()与do_ultrawide_fov_restore()恢复超宽屏下被裁剪的 FOVMHWilds 还提供m_ultrawide_ui_correctionUI 修正值src/mods/Graphics.hppGUI Hider/Disabler一键隐藏或禁用游戏内 GUI。四、内置修复与开发者工具4.1 内置修复Included FixesREFramework 对部分游戏的热门问题提供了即插即用的修复RE8 启动崩溃Startup CrashRE8 卡顿Stutters击杀敌人、受到伤害等场景下的掉帧卡顿MHRise / RE8 第三方 DLL 相关崩溃游戏与第三方注入 DLL 冲突导致的崩溃。源码层面src/Main.cpp 展示了相关的底层防护IntegrityCheckBypass::setup_pristine_syscall()、hook_add_vectored_exception_handler()与hook_rtl_exit_user_process()用于规避游戏的完整性检查这是框架在部分新作中稳定运行的基础设施之一。4.2 开发者工具Developer Mode启用开发者模式后框架额外提供两类游戏内工具src/mods/tools 目录Game Objects Display场景对象展示面板实时列出当前场景中的游戏对象src/mods/tools/GameObjectsDisplay.cppObject Explorer对象浏览器可深入检视任意对象的类型、字段、方法等运行时信息src/mods/tools/ObjectExplorer.cpp。这两类工具是脚本/插件开发者的必备调试利器也常被用于制作各类 Mod 前的逆向分析。五、支持的游戏列表Supported GamesREADME 明确列出的支持游戏如下游戏备注生化危机 2RE2支持第一人称、运动控制生化危机 3RE3支持第一人称、运动控制生化危机 4RE4—生化危机 7RE7支持运动控制生化危机 村庄RE8支持运动控制含启动崩溃/卡顿修复生化危机 安魂曲RE Requiem—鬼泣 5DMC5—街霸 6SF6—怪物猎人崛起MHRise含第三方 DLL 崩溃修复怪物猎人荒野MHWilds含超宽屏 UI 修正怪物猎人 物语 3MH Stories 3—龙之信条 2DD2—魔界村 复活Ghosts n Goblins Resurrection使用 RE8 构建逆转裁判 456 王泥喜精选集Apollo Justice Trilogy使用 DD2 构建祇女神之路Kunitsu-Gami使用 DD2 构建鬼武者 2Onimusha 2使用 MHWILDS 构建从源码结构可以印证这一矩阵仓库的 shared/sdk/regenny 目录按游戏dd2、mhrise、re2_tdb70、re3、re4、re7、re8、re9、sf6 等分别维护 TDB 类型定义头文件而 shared/sdk/ReClass_Internal_*.hpp 系列文件则为各游戏提供反编译布局。部分非官方“借用构建”的游戏如魔界村复活使用 RE8 构建意味着它们复用对应游戏的运行时结构功能支持程度以实际运行为准。六、源码级解析dinput8.dll 注入机制理解安装方式背后的原理能帮助你在遇到加载失败时快速定位问题。整个注入链路在 src/Main.cpp 中清晰可见DLL 导出代理REFramework 的dinput8.dll导出DirectInput8Create符号通过#pragma comment(linker, /EXPORT:DirectInput8Createdirect_input8_create)当游戏调用 DirectInput 时先执行我们的包装函数加载原版 DLLload_dinput8()从系统目录GetSystemDirectoryW加载真正的dinput8.dll并缓存其DirectInput8Create地址src/Main.cpp包装函数随后转发调用保证游戏输入功能不受影响代码中还对 EOS 等覆盖层可能引发的重入递归做了防护thread_local 重入保护启动框架DllMain中完成模块句柄设置、safetyhook 分配器初始化在游戏模块中段附近预留 1MB 钩子内存按页递减直至分配成功、游戏身份初始化与完整性检查绕过然后创建启动线程startup_thread初始化REFramework主对象输入捕获src/DInputHook.cpp 中DInputHook通过创建IDirectInputDevice获取GetDeviceState的 vtable 地址并挂钩将 256 键键盘状态持续回传给框架g_framework-on_direct_input_keys(...)——这解释了 Manual Flashlight、FreeCam 等 Mod 的按键为何走 DirectInput 而非普通 Windows 消息源码注释明确指出窗口虚拟键消息会被游戏屏蔽。这一“导出代理 转发原版”的模式正是 REFramework 能以单一 DLL 形态兼容所有 RE 引擎游戏的原因。七、快速上手清单在 Releases 下载稳定版或 Nightly 尝鲜非 VR将dinput8.dll放入游戏根目录VR先装 SteamVR或用 OpenXR再解压整个压缩包Proton/LinuxSteam 属性添加WINEDLLOVERRIDESdinput8.dlln,b %command%启动游戏按Insert呼出 REFramework 的 ImGui 菜单框架默认 UI 热键即可看到内置 Mod 列表、开发者工具入口与配置项写 Lua 脚本放入reframework/autorun目录脚本运行时以 src/mods/ScriptRunner.cpp 的实现加载并执行或在reframework/plugins目录放置 C 插件 DLL 实现更底层的功能所有配置通过reframework.save_config()或菜单内操作持久化保存。说明第 4 步的 Insert 热键、reframework/autorun脚本目录与第 5 步的插件目录路径分别对应框架 UI 菜单的通用习惯与 PluginLoader 中reframework/plugins目录的源码实现具体按键与目录名以你在游戏内菜单中看到的实际选项为准。结语REFramework 的价值在于它把“Mod 能力”下沉为一个统一、可脚本化、跨游戏的平台同一个dinput8.dll既是 Mod 加载器又是 Lua 脚本运行时还是 VR 注入层。配合本文介绍的安装步骤、内置功能与源码级原理你现在可以基于它快速搭建自己的游戏增强方案——从一行 Lua 脚本的 FOV 调整到为 RE2 写一套完整的 VR 运动控制绑定都在这个框架的能力范围之内。赞分享游戏开发VR【免费下载链接】REFrameworkMod loader, scripting platform, and VR support for all RE Engine games项目地址https://gitcode.com/GitHub_Trending/re/REFramework点击查看免费下载相关推荐REFramework游戏模组开发终极指南从零开始掌握RE Engine脚本框架REFramework游戏模组开发终极指南从零开始掌握RE Engine脚本框架 想要为《生化危机》、《怪物猎人》等热门游戏制作个性化模组吗REFramew游戏开发VRUE4SS完整安装指南轻松实现LUA脚本注入与游戏Mod开发UE4SS完整安装指南轻松实现LUA脚本注入与游戏Mod开发 想要为虚幻引擎游戏添加自定义功能UE4SS提供了强大的LUA脚本注入系统和游戏Mod开发能力游戏开发逆向工程REFramework终极指南为什么它是RE引擎游戏的最佳Mod框架REFramework终极指南为什么它是RE引擎游戏的最佳Mod框架 在游戏模组开发领域REFramework凭借其强大的功能和易用性脱颖而出。作为专为RE游戏开发VR上一篇Animate UI背景特效制作指南气泡、烟花、星星动效详解下一篇Phabricator多租户部署方案命名空间隔离与资源配额管理创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表