天脉资讯
财经视野 科技数码 探索发现 教育学习 娱乐红人 时尚秘籍 文化艺术 游戏天地 星座解读 宠物小乖 营养美食 大燕公益 商业快讯

Win11 24H2更新让《GTA:圣安地列斯》20年老漏洞显现

2025-04-24来源:天脉网编辑:瑞雪

近期,游戏玩家社区中热议起了一个奇怪的现象:在Windows 11最新的24H2系统上运行经典游戏《侠盗猎车手:圣安地列斯》时,游戏中的Skimmer水上飞机竟然神秘消失了。这一发现最初由科技媒体NeoWin报道,迅速引起了玩家们的广泛关注。

面对这一离奇问题,SilentPatch的开发者Silent站了出来。SilentPatch是一个专注于修复老游戏漏洞和提升其兼容性的非官方项目,Silent对这个问题展开了深入调查。起初,Silent怀疑问题可能源于其他MOD或特定的系统配置,但在纯净版游戏上反复测试后,他确认只要在Windows 11 24H2系统上运行,Skimmer就会消失。

Silent进一步在游戏中测试发现,不仅Skimmer在常规位置消失,而且通过游戏内命令强制生成飞机后,角色CJ会被弹射到天空中,距离高达约1.087千万亿光年,游戏画面随之失控或直接卡死。这一发现更加令人困惑。

Silent通过深入分析游戏代码,终于找到了问题的根源。原来,Skimmer的物理边界框(bounding box)计算出现了错误,其Z值被设置成了一个荒谬的数字(-4.30747210e+33),导致游戏误判了飞机的位置。进一步追踪后,Silent发现这是因为游戏配置文件vehicles.ide中Skimmer的定义不完整,缺少了轮子尺寸参数。

据Silent解释,在《GTA: Vice City》时期,Skimmer被归类为船只,无需这些参数。但在《圣安地列斯》中,Skimmer被改为了飞机,而Rockstar Games却没有更新相关配置。因此,游戏代码在读取数据时未能初始化相关变量,导致其值依赖于内存堆栈中的随机数据。在过去的20年里,在Windows 10等版本中,Skimmer前一个车辆Topfun的轮子尺寸值(0.7)恰好残留在内存中,意外地让Skimmer能够勉强正常运行。

然而,Windows 11 24H2的更新改变了内存堆栈的使用方式,特别是涉及LeaveCriticalSection函数的实现,覆盖了这些残留值,导致Skimmer的物理计算彻底失控。Silent强调,这并不是Windows 11的问题,而是《GTA San Andreas》代码本身的漏洞,长期以来一直依赖内存布局的“侥幸”运行。

为了解决这一问题,Silent计划在下一版SilentPatch中修复这一漏洞。同时,他也为玩家提供了一个临时解决方案:手动编辑游戏目录下的datavehicles.ide文件,找到Skimmer的相关行,并添加轮子尺寸参数(0.7),即可恢复飞机的正常显示和使用。

中金力挺腾讯游戏:长青IP稳健前行,维持跑赢行业评级不变
中金发布研报称,腾讯控股(00700)SPARK 2025腾讯游戏发表4月22日举办,本次发表会共发布46款产品的最新动态,包含多款新游的测试信息。整体看,中金认为腾讯游戏2025年趋势仍然较好。2025年下…

2025-04-24

动视暴雪前高管Humam Sakhnini出任Discord新CEO,4月28日正式上任
钛媒体App 4月24日消息,当地时间4月23日,游戏社交平台Discord宣布任命动视暴雪前高管Humam Sakhnini为CEO,4月28日生效。Sakhnini还将加入Discord董事会。公司成立以…

2025-04-24