快速修复 REFramework 启动崩溃(RE2 01149)
【免费下载链接】REFrameworkMod loader, scripting platform, and VR support for all RE Engine games项目地址: https://gitcode.com/GitHub_Trending/re/REFramework
REFramework 启动崩溃只出现在 RE2 非光追版:01149 之后的版本进游戏即闪退。下面是 3 步可落地的修复方案。
TL;DR 速览
- 升级到包含修复提交
a490918的最新构建。 - 无法升级时,回退到01148。
- 动手前先删除游戏目录里旧版 REFramework.dll,避免新旧文件混用。
影响范围界定
| 受影响 | 不受影响 |
|---|---|
| REFramework 01149 及之后的构建 | REFramework 01148 及之前的构建 |
| RE2 非光追版(re2.exe / bhd2.exe 启动) | RE2 光追版 |
| Windows 平台 | RE3、RE4、RE7、RE8 等其他 RE Engine 游戏 |
🔍 故障根因
旧版 REFramework 按游戏逐个编译:RE2 非光追版走RE2_TDB66宏,内存偏移按旧版 TDB 66 引擎布局写死。01149 起项目改用统一 DLL(REFRAMEWORK_UNIVERSAL),改由GameIdentity在运行时识别游戏,并把 RE2 的默认引擎参数固定为新版 TDB 70 布局,源码注释明确说明不会为旧二进制做运行时覆盖。于是非光追版老二进制被注入后,偏移按新布局计算,第一次渲染设备 hook 时落到错误地址、触发访问冲突,这就是 REFramework 启动崩溃的直接机制。
佐证源码:shared/sdk/GameIdentity.cpp、shared/sdk/TDBVer.hpp。
🔧 修复操作
方案 1:升级到包含 a490918 的修复构建
- 获取包含
a490918的最新构建;需要源码时用git clone https://gitcode.com/GitHub_Trending/re/REFramework。- 验证:确认构建产物的提交号或时间戳晚于 01149。
- 删除游戏目录中的旧版 REFramework.dll。
- 验证:在资源管理器中搜索,确认目录里已无旧版 DLL。
- 把新版 DLL 放到 re2.exe 同目录并启动游戏。
- 验证:进入主菜单后按 Tab 打开 REFramework 菜单,版本号正确显示,REFramework 启动崩溃消失。
方案 2:回退到 01148
- 下载01148或更早的稳定构建。
- 验证:下载文件可正常解压,DLL 时间戳为 01149 之前。
- 移除当前 01149 的 DLL 与配置文件后,再解压旧版到游戏目录。
- 验证:目录中只保留 01148 的 DLL,无残留文件。
- 启动游戏。
- 验证:能进主菜单,菜单版本号显示 01148,常用脚本正常加载。
方案 3:改用 RE2_TDB66 独立构建(高级用户)
- 用
RE2_TDB66编译选项构建 per-game 版本(TDBVer.hpp中该宏会把 TDB_VER 固定为 66,偏移匹配旧引擎布局)。- 验证:构建产物只含 RE2 目标代码,无统一版宏定义。
- 用它替换游戏目录中的统一版 DLL 并启动游戏。
- 验证:主菜单无闪退,菜单版本号显示为独立构建。
- 跑一遍你常用的模组与脚本。
- 验证:模组正常加载,无新崩溃。
📋 环境与配置自检
- 框架版本:REFramework 为 01148 或含
a490918的构建(菜单标题可见版本号) - 运行时依赖:已安装最新的 Visual C++ Redistributable(x64)
- 文件完整性:游戏目录只有一份 REFramework.dll,且与下载版本一致
- 配置残留:旧版本的配置与脚本缓存已备份并清除
- 启动入口:你启动的是非光追版 re2.exe,而非光追/DX12 入口
- 游戏本体:RE2 为最新官方版本,与框架支持的版本一致
📁 相关源码模块
shared/sdk/GameIdentity.cpp(运行时识别游戏与引擎版本,替代旧的编译期宏)shared/sdk/TDBVer.hpp(统一构建与 RE2_TDB66 旧布局的引擎参数表)src/D3D11Hook.cpp(DX11 渲染设备 hook 入口,非光追版最先走到这里)src/REFramework.cpp(框架主入口,负责渲染 hook 的初始化顺序)src/mods/Graphics.cpp(游戏内图形选项与渲染资源,用于启动后核对状态)
这次 REFramework 启动崩溃从社区反馈到修复提交a490918的响应很快,也暴露了统一 DLL 重构后旧引擎布局这类边界问题的代价。GameIdentity把版本参数收敛到单一入口的设计,让同类偏移类问题今后更容易定位和回归测试。保持框架与游戏版本匹配、非光追版玩家优先使用修复构建,就能避开这次闪退。
核心关键词:REFramework 启动崩溃、RE2 非光追版、01149 版本回退、内存偏移冲突、TDB 版本识别
【免费下载链接】REFrameworkMod loader, scripting platform, and VR support for all RE Engine games项目地址: https://gitcode.com/GitHub_Trending/re/REFramework
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考