MMA10 杀手

MMA10 杀手

讨厌退出时那个毫无意义的GTA IV错误吗?是啊,我也是。咱们趁它睡觉时干掉它。

一款用于 [b]GTA IV Complete Edition 1.2.0.59[/b] 的 ASI 插件,用于修复退出游戏时的两个烦人问题:
[list]
[]the [b]MMA10[/b] error box(以及可能随之出现的 Rockstar launcher 错误),以及[/]
[]游戏在最终关闭前[b]长时间卡在黑屏[/b]。[/]
[/list]它只在[b]游戏关闭时[/b]起作用。游戏进行期间它完全不做任何事。

[heading]工作原理[/heading]
[spoiler][heading][b][color=#e4e4e7][size=2]MMA10。[/size][/color][/b][color=#e4e4e7][size=2]当游戏释放内存时,它会逐个询问自己的内存堆“这是你的吗?”。MMA10 意味着没有任何一个堆回答“是”。在某些模组配置下,会残留一个失效或垃圾指针(日志中会出现类似[/size][/color][/heading]
[code]0xCDCDCDCD[/code])的值,而游戏只在关闭时才尝试释放它。就在游戏离开主循环准备关闭的那一刻,MMA10Killer 会在该列表的[ b]末尾[/b]额外添加一个内存堆。游戏自身的内存堆仍然会先被询问,因此所有真实内存都会像以前一样被准确释放。只有那些不属于任何堆的指针才会到达这个额外的堆,它接受该指针但不做任何处理。
[b]退出卡死。[/b]有时游戏自身的关闭代码会因这种失效指针而崩溃,随后 Windows 会花很长时间收集崩溃数据,然后进程才消失。从游戏开始关闭的那一刻起,MMA10Killer 会捕获未被其他任何程序处理的崩溃,向其日志写入一行内容,并立即结束进程。
[b]游戏进行期间它不做任何事。[/b]如果 MMA10 或崩溃发生在[i]你正在游玩时[/i],你仍然会看到它,而且你应该看到:那意味着确实出了问题,隐藏它可能会导致之后更严重的问题。[/spoiler]
[heading]许可证与致谢[/heading]
[spoiler]MIT(见 [url=https://github.com/bassisthip63-ui/MMA10Killer/blob/main/LICENSE]LICENSE[/url])。作者 bassisthip63-ui,与 Claude(Anthropic)合作完成。与 Rockstar Games 或 Take-Two Interactive 无关联。请在你合法拥有的游戏副本上使用它。[/spoiler]
[url=https://github.com/bassisthip63-ui/MMA10Killer/blob/main/MMA10Killer_1.1.zip]https://github.com/bassisthip63-ui/MMA10Killer/blob/main/MMA10Killer_1.1.zip[/url]