☰
一个 dll 通吃 18 款游戏:开源 Mod 框架 REFramework 实操指南
2026/10/17 2:36:20 网站建设 项目流程

一个 dll 通吃 18 款游戏:开源 Mod 框架 REFramework 实操指南

【免费下载链接】REFrameworkMod loader, scripting platform, and VR support for all RE Engine games项目地址: https://gitcode.com/GitHub_Trending/re/REFramework

想给 RE4 戴上 VR 头显,顺手把视野拉宽、把准星挪个位——过去得翻好几套各管一格的模组。现在只要往游戏目录里丢一个 dll。这就是REFramework:一个开源、免费、本地运行的 RE 引擎模组加载器,把 Lua 脚本、C++ 插件和 VR 支持全塞进了同一个 dll 里。

🎯 REFramework 到底能干什么:核心能力速览

  • 一个 dll 通吃全系:RE2/3/4/7/8/9(Requiem)、怪猎 Rise/Wilds/Stories3、街霸6、鬼泣5、DD2 等 18 款 RE 引擎游戏共用同一个dinput8.dll,运行时自动识别当前是哪款游戏。
  • 脚本与插件双入口:Lua 脚本热插热拔,C++ 插件直接按名字钩住游戏方法;想上强度还能用 C# 插件框架。
  • VR 支持:全系 6DOF 通用 VR,RE2/3/7/8 额外带体感动作控制,兼容 OpenVR 与 OpenXR。
  • 开箱即用的小 Mod:第一人称、手动手电、自由摄像机、场景时间轴、FOV 滑条、超宽屏修正、GUI 隐藏等,装完就能调。
  • 带开发者工具箱:开发者模式里内置 GameObjects 显示、Object Explorer,能直接翻游戏内存里的对象。

上图是它内置的节点式可视化界面样式:把游戏里的调用关系当成一个个"插头"连起来,比对着地址表找偏移量友好得多。

🚀 最快上手路径:从下载进游戏目录到跑通 VR

  • 只玩平面、不开 VR:下载最新 release 的 zip,只解压出dinput8.dll到游戏目录。注意只放这一个文件,多放会破坏抗锯齿。
  • 要开 VR:先装 SteamVR(或接 OpenXR 头显),再把整个 zip 解压进对应游戏目录。
  • Linux / Proton:在 Steam 启动项加WINEDLLOVERRIDES="dinput8.dll=n,b" %command%即可。
  • 多久能跑起来:不编译的话,解压进目录、进游戏,一两分钟就见菜单。系统要求 Windows(或 Proton/Wine),显卡支持 DirectX 11 或 12 都行。
  • 要自己编译(可选):需要 Visual Studio 2022(C++23)+ CMake,先拉子模块再编译单个游戏 target,几分钟一个。
git clone https://gitcode.com/GitHub_Trending/re/REFramework git submodule update --init --recursive cmake --build ./build --config Release --target RE2

上面三条:拉代码 → 补齐第三方依赖(imgui、minhook、sol2 等都在子模块里)→ 只编你要的那款游戏,省得全量编译。

🔍 拆开看:REFramework 一个 dll 怎么"混进"所有 RE 游戏

它不靠外挂注入,而是伪装成游戏本来就会加载的dinput8.dll(DirectX 输入库)。游戏一启动就去调它,于是"顺理成章"进来了——像混进餐厅后厨的传菜通道,每道菜出锅的瞬间贴张小纸条。

进去之后它做两件事:

  • 钩住渲染管线:同时挂上 D3D11 和 D3D12 的Present,在每帧画面上叠一层 ImGui 菜单,所有滑条、开关都画在这层上。
  • 靠反射按名字办事:dll 启动时先探测当前是哪款游戏、哪个 TDB 版本,再分发到对应内存布局。之后你用 Lua 或 C++ 直接按类型名、方法名去调游戏函数,不用手填偏移。仓库里这个 C++ 插件就是典型:
// 人话:按名字找到"武器开火"这个游戏方法,把我们的逻辑挂在它前面 API::get()->tdb()->find_method("snow.player.PlayerWeaponCtrl", "start") ->add_hook(pre_start, post_start, false);

它对应的源码在 examples/weapon_stay_big_plugin/weapon_stay_big.cpp:挂上钩子后,每帧把武器大小常量写回 1.0,武器就不再变大。整个 Mod 就几行。

⚖️ 横向对比:REFramework 比单游戏脚本强在哪

维度REFramework单游戏脚本/补丁通用引擎调试器
覆盖游戏18 款全系通用通常单款视引擎而定
脚本语言Lua + C++ + C#多为单语言C++ 为主
VR 支持6DOF 全系 + 体感基本无基本无
部署一个 dll 拖进目录每游戏一套需配环境
费用/开源开源免费各异各异

真正的差异不在单项,而在"一份 dll 覆盖全系"这件事本身:同一套脚本 API 换个游戏目录就能复用,改 FOV 的脚本不用为 RE2 和 RE4 各写一遍。加上 VR 这条线是内置而非外挂,平面玩家和 VR 玩家共用一个生态。

📦 谁在用、怎么用:三个真实场景速写

  • 平面玩家调手感:装完进游戏,菜单里把 FOV 拉到 110、关掉暗角,再开个第一人称,全程不碰内存地址。
  • VR 玩家:装 SteamVR,整个 zip 拖进 RE4 目录,戴上头显就能在 6DOF 里走位;RE2/RE3 还能用手柄挥刀。
  • 脚本作者:用 Lua 监听UpdateMotion每帧回调,按名字读写玩家坐标做移动平滑;想深入就写 C++ 插件钩方法,仓库 scripts/re2_smooth_movement.lua 就是现成范本。

生态与参与(简短收尾)

代码全开源,直接改源码、提 PR 就能参与;想写脚本先看项目 Wiki,想碰 C++ 就看 examples/ 里的插件样板。未来值得盯的方向是两个:一是把 TDB 反射层扩展到更多 RE 引擎新作品(RE Requiem、Pragmata 已在路上),二是让 Lua/C++/C# 三种入口的 API 更统一。对想"一套工具玩转整个 RE 引擎宇宙"、又在意开源可控的玩家和开发者来说,REFramework 现在是这条路上最省心的起点。

【免费下载链接】REFrameworkMod loader, scripting platform, and VR support for all RE Engine games项目地址: https://gitcode.com/GitHub_Trending/re/REFramework

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询