REFramework 快速上手指南:RE 引擎游戏完整的免费 Mod 与脚本平台
【免费下载链接】REFrameworkMod loader, scripting platform, and VR support for all RE Engine games项目地址: https://gitcode.com/GitHub_Trending/re/REFramework
REFramework 是一个免费开源的 Mod 加载器、Lua 脚本平台与 VR 方案,面向所有 RE 引擎游戏。它的目标是让 Mod 开发只涉及"写脚本"和"写插件"两件事,而不必从零处理注入、渲染挂钩和对象模型。正文按"适不适合你 → 能力全景 → 跑起来 → 边界 → 进阶 → 排错"的顺序展开。
先判断适不适合:谁该用,谁不该用
适合的人群与场景:
- 目标游戏运行在 RE 引擎上(生化危机 2/3/4/7/Village/Requiem、鬼泣 5、街霸 6、怪物猎人 Rise/Wilds/Stories 3、龙之信条 2 等,完整列表见文末)
- 想给游戏加第一人称、自由摄像机、FOV 调节、宽屏修复这类画面层功能
- 想跑 Lua 脚本改游戏行为,或想自己写 C++ 插件
- 想给不支持 VR 的游戏加 6DOF 头显体验
- 想修 RE8 启动崩溃、RE8 卡顿等已知问题
不适合的场景:
- 非 RE 引擎的游戏——框架通过挂钩游戏自身管线工作,换引擎就没有意义
- 纯改存档、改模型文件的需求——REFramework 作用于运行中的游戏进程,不是资产编辑工具
- 需要开箱即用的成品 Mod——它提供的是平台和少量内置 Mod,大部分功能要自己写或找脚本
能力全景:按能力域看 REFramework
脚本与插件层(所有支持的游戏)
- Lua 脚本 API:脚本放在
scripts/目录即可被加载,可直接查询和改写游戏内对象,示例见 scripts/ - 插件系统:C++ 插件,继承
Plugin基类接入,参考 examples/example_plugin/
VR 域
- 通用 6DOF VR:全部支持的游戏
- 完整运动控制(手柄交互、头部追踪):RE2 / RE3 / RE7 / RE8
- 依赖 SteamVR,或受支持头显上的 OpenXR 运行时;实现位于 src/mods/vr/
摄像机与画面(多数为全游戏通用)
- 自由摄像机:所有游戏
- 第一人称:RE2、RE3
- FOV 滑块:所有游戏
- 宽屏 / 宽高比修复:所有游戏
- 暗角关闭、GUI 隐藏:所有游戏
- 手动手电筒:RE2、RE3、RE8
- 场景时间缩放(Scene Timescale):所有游戏
内置修复
- RE8 启动崩溃
- RE8 击杀敌人 / 受击时的卡顿
- MHRise / RE8 与第三方 DLL 相关的崩溃
开发者工具(开发者模式)
- 游戏对象显示器:实时查看当前场景对象及属性
- 对象浏览器:遍历游戏对象层级
兼容 DirectX 11 与 DirectX 12。
从 0 到跑起来:一条完整操作动线
第 1 步,获取文件。普通使用下载 release 包即可;要编译源码则克隆仓库:
git clone https://gitcode.com/GitHub_Trending/re/REFramework第 2 步,装进游戏目录。
- 标准版:从 zip 里只取
dinput8.dll,放进游戏根目录(不是子文件夹) - VR 版:安装 SteamVR(或确认 OpenXR 头显就绪),把整个 zip 解压到对应游戏目录
- Linux / Proton:解压后在 Steam 启动选项里加
WINEDLLOVERRIDES="dinput8.dll=n,b" %command%
第 3 步,首次打开。启动游戏,按Insert键。看到开发者菜单即表示注入成功;界面里可开关各内置 Mod、调节 FOV 与时间缩放。
第 4 步,一个最小可运行示例。往scripts/目录放一个 Lua 脚本,游戏内即可生效。仓库自带一批可直接参考的脚本,例如 scripts/re2_smooth_movement.lua 和 scripts/re2_vr_crosshair.lua;各游戏的公共工具函数在 scripts/utility/。脚本内通过sdk.find_type_definition(...)拿到游戏类型、再调用其方法,就能读写位置、旋转等字段。
典型玩法与边界
VR 改造:能做到什么程度。所有支持的游戏都能拿到通用 6DOF 视角;但完整的手柄运动控制目前只覆盖 RE2/RE3/RE7/RE8。其他游戏(如 RE4、RE Village、怪物猎人系列)属于"能看不能动"的状态。边界很明确:没有对应的运行时(SteamVR/OpenXR),VR 功能不会启动。
卡顿与崩溃修复:范围有限但确定。内置修复只针对上面列出的三项(RE8 启动崩溃、RE8 特定卡顿、第三方 DLL 崩溃),不是通用反崩溃方案。其他问题需要自己写脚本处理。
Lua 脚本改游戏逻辑:能力取决于类型定义覆盖度。脚本能直接操作游戏内对象,改参数、换机制、加 UI 都在范围内。限制是:每款游戏可用的类型和方法集合不同,具体覆盖看 shared/sdk/regenny/ 下对应游戏的目录。
边界汇总:
- 仅限 RE 引擎游戏,非 RE 引擎无效
- 画面层功能依赖游戏本身的 DX11/DX12 管线挂钩
- 框架不修改游戏文件,全部作用在运行时进程内
深度定制(选读):编译、插件与 SDK
从源码编译需要 C++23 编译器(推荐 Visual Studio 2022,未测试非 MSVC)和 CMake。流程:克隆仓库后运行git submodule update --init --recursive,再执行cmake -S . -B build和cmake --build build --config Release;不指定 target 会构建全部游戏目标,只需某一款时可加--target RE2。仓库根目录的build_vs2022.bat可直接构建全部 Release 目标。细节见 COMPILING.md。
写插件以 examples/example_plugin/ 为模板:继承Plugin基类、注册到插件管理器、按需集成 DX11/12 渲染回调。
改游戏结构定义看 shared/sdk/regenny/,每款游戏一个子目录,存放由逆向工程生成的类型头文件,是理解游戏内部对象布局的入口。
排错速查:症状 → 原因 → 解法
| 症状 | 常见原因 | 快速解法 |
|---|---|---|
游戏无法启动 / 按Insert无反应 | dinput8.dll放进了子文件夹;框架版本与游戏版本不匹配 | 把dinput8.dll移到游戏根目录;确认版本对应关系 |
| VR 功能不工作 | 未装 SteamVR / OpenXR 运行时;头显连接或驱动异常 | 安装并启动运行时;检查头显连接与驱动版本 |
| Lua 脚本不生效 | 语法错误;脚本没放在scripts/目录 | 核对语法;确认目录正确;查看 REFramework 日志定位错误 |
| 编译失败 | VS 缺"C++ 桌面开发"工作负载;CMake 版本过低;子模块未初始化 | 补装工作负载;确认 CMake ≥ 3.20;运行git submodule update --init --recursive |
资源与目录地图
| 内容 | 位置 |
|---|---|
| 项目说明与安装文档 | README.md |
| 编译指南 | COMPILING.md |
| 插件模板 | examples/example_plugin/ |
| 单功能示例插件 | examples/weapon_stay_big_plugin/ |
| Lua 脚本与游戏工具函数 | scripts/、scripts/utility/ |
| 核心源码 | src/ |
| 内置 Mod 实现 | src/mods/ |
| VR 实现 | src/mods/vr/ |
| 各游戏类型定义(逆向 SDK) | shared/sdk/regenny/ |
| 第三方依赖(imgui、lua、sol2、spdlog 等) | dependencies/ |
支持的游戏:生化危机 2 / 3 / 4 / 7 / Village(RE8)/ Requiem、鬼泣 5、街霸 6、怪物猎人 Rise / Wilds / Stories 3、龙之信条 2、鬼灭… 完整为:Dead Rising Deluxe Remaster、Ghosts 'n Goblins Resurrection、Apollo Justice: Ace Attorney Trilogy、Kunitsu-Gami: Path of the Goddess、Onimusha 2: Samurai's Destiny、Onimusha: Way of the Sword、Mega Man Star Force Legacy Collection。
下一步
把dinput8.dll放进你玩的任意一款 RE 引擎游戏的根目录,启动后按Insert打开菜单,然后打开 scripts/re2_smooth_movement.lua,改一个参数、观察游戏变化——从这一步开始,你已经在用 REFramework 做 Mod 了。
【免费下载链接】REFrameworkMod loader, scripting platform, and VR support for all RE Engine games项目地址: https://gitcode.com/GitHub_Trending/re/REFramework
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考