ASI 支持插件 for RAGE Plugin Hook - 让经典 MOD 在 RPH 中重生ASI Support for RAGE Plugin Hook 0.4.6 BETA
GTA5 MOD 兼容性解决方案 | ASI 插件转 UASI 终极工具 | 支持版本 1.0.2245.0
MOD 核心介绍
重要声明:本项目已不再维护,但在可预见的未来仍将保持功能可用。
这是一个革命性的 RPH 插件,能够将传统的 ASI MOD 转换为 UASI(通用 ASI)格式,使其能够在 RAGE Plugin Hook 环境中像原生 ASI 一样加载运行。除原始 DirectX 访问("Present callbacks")外,所有功能均已实现,因此绝大多数 ASI 插件都能正常加载并完美工作。
工作原理
首个版本完全使用 C++/CLI 编写:原生 C++ 代码用于与 ASI 插件交互,而"CLI"(托管)部分则负责与 .NET Framework 和 RAGE Plugin Hook 通信。然而,这种混合代码方式带来了诸多问题:错误难以追踪、程序难以维护,且插件对许多用户无法正常工作。
新版设计以兼容性和用户友好性为核心:托管代码独立存在于 "AsiSupport.dll"(RPH 插件)中,所有非托管代码(运行所需的最小化原生代码)均置于 UnvAsiIntrf.dll(即"通用 ASI 接口")。UnvAsiIntrf.dll 由终端用户支持,因其为纯 C++ 编写;AsiSupport.dll 也不会在用户具备 RPH 所有必需依赖项时引发任何问题。
开发建议:本工具专为激活旧版 ASI 插件而设计。如果您是新开发者,强烈建议直接使用 RPH 进行开发,以获得更佳性能。
技术架构优势
代码分离设计
托管与非托管代码完全隔离,大幅提升稳定性和可维护性
性能优化
预分配参数缓冲区,将最大原生参数数量提升至 32 个
智能错误处理
进程损坏状态异常(如访问违规)现已得到妥善处理
热重载支持
大多数 ASI 插件无需重启游戏即可卸载和重载
系统需求
.NET Framework 4.6 或更高版本
RAGE Plugin Hook(最新稳定版)
GTA V 版本 1.0.2245.0 或更早版本(需更新版本清单)
版本更新日志
修复尝试绘制无效纹理时可能发生的崩溃
更新版本清单(支持至 1.0.2245.0)
线程崩溃现在可向玩家通知;移除已弃用的 SHVDN 支持
原生参数上限增至 32 个;添加 ScriptHookVDotNet 支持
重写为纯 C#,移除 C++/CLI 依赖;引入 UASI 文件格式
功能展示
自动将 ASI 文件转换为 UASI 格式,保持原始功能完整性,转换速度提升 40%
支持动态更新 Versions.manifest,适配最新 GTA V 游戏版本
硬编码值转移至可编辑配置文件,提供 ReloadAsiConfig 热重载命令
插件异常不再导致游戏崩溃,显示用户友好的错误信息而非直接闪退
兼容性特性
支持 90%+ ASI 插件兼容 Windows 7/8/10/11支持 LSPDFR 生态与 ScriptHookV 共存
文件列表
【主插件文件】 RAGE Plugin Hook 托管插件,负责加载和管理所有 UASI 文件,提供与 RPH 的无缝集成
【通用 ASI 接口】 纯 C++ 编写的非托管库,作为 UASI 脚本与 API 处理器之间的桥梁,实现原生函数调用转发
【版本清单文件】 包含所有已知的 GTA V 游戏版本信息,支持手动更新以适配新版游戏,当前最高支持 1.0.2245.0
【配置文件】 存储插件运行参数,包括可选的未知版本处理、原生函数忽略等高级设置
【转换输出】 自动生成的通用 ASI 文件,存储于缓存目录,支持热重载和自动更新检测
注意事项:请勿删除 UnvAsiIntrf.dll,否则插件将无法与原生 ASI 代码通信
安装使用指南
确保已安装 .NET Framework 4.6 或更高版本,RAGE Plugin Hook 已正确部署至 GTA V 根目录
将 AsiSupport.dll 和 UnvAsiIntrf.dll 复制到 GTA V 根目录的 Plugins 文件夹中
启动 RAGE Plugin Hook,在插件管理器中启用 AsiSupport,建议设置为自动加载
将需要转换的 ASI 插件放入 Plugins 或游戏根目录,插件启动时将自动转换为 UASI 格式
如遇新版本 GTA V 支持问题,手动编辑 Data/ASI Support/Versions.manifest,添加新版本号信息
高级配置命令
热重载配置文件,无需重启游戏即可应用新设置
启用后忽略未知原生调用,返回 0 而非崩溃,提升兼容性
开发者提示:可通过设置将 GetGameVersion() 固定返回 -1,处理版本检测相关问题
故障排除
游戏冻结:检查是否有 ASI 与 RPH 原生功能冲突,尝试禁用其他插件
AI 不移动:确认 Simple Trainer 的 "Everyone Ignore Player" 选项已关闭
版本不匹配:更新 Versions.manifest 或使用版本忽略模式
加载循环:检查 UASI 文件是否损坏,删除缓存后重新生成
重要:本插件仍为 BETA 版本,可能存在不稳定情况。建议仅在 ScriptHookV 未更新时使用
用户评测
在 ScriptHookV 未更新的时期,这个 MOD 再次成为不可或缺的工具。我很高兴地报告,重新加载 ASI 功能运行完美,已经连续两个补丁版本无问题了!再次感谢!
非常感激这个插件,在 GTA 更新和 SHV 过时期间提供了完美备份。目前遇到的唯一问题是启用此插件后,BejoIjo 的 LSPDFR 终极备份插件会失效,请求警车支援时车辆生成但不会移动。
不确定你是否已解决,但我遇到了同样问题。最终发现是 Simple Trainer 的设置 "Everyone Ignore Player" 默认启用,导致 AI 警察不移动。禁用后使用终极备份已正常游玩数日。
请问这个在 3095 版本还能工作吗?
实现足够通用,不需要更新。只有版本清单可能需要更新以匹配最新 ScriptHookV 版本——但这仅影响使用该功能的脚本。如果脚本在 SHV 某版本上工作,ASI Support 也应该正常工作,前提是 GetGameVersion() 返回值不受过时版本清单影响。
当前最新 GTA 补丁无法工作,无法在游戏中使用任何训练器。希望能更新。
只会导致无限加载转盘。
这个能和最新的 RAGE Plugin Hook 一起工作吗?
应该可以。如果想最大化兼容性,可以更新 "Data/ASI Support/Versions.manifest" 添加新版本。如果我有时间会自己更新。
每次安装 scripthookv 后,寻找掩护再尝试上车游戏就会冻结。有人知道修复方法或 ScriptHookV 的替代品吗?
评分总结:平均 4.2/5 星 | 127 条评测 | 89% 用户认为在 SHV 更新空窗期"不可或缺"
资源下载
未经允许不得转载! 作者:biga666,转载或复制请以超链接形式并注明出处火龙网。
原文地址:https://www.huolongwang.com/gtav/1566.html发布于:2025-11-15










还没有评论,来说两句吧...