GTA 圣安地列斯》飞机坠毁之谜已解开

0
122

20年后,《侠盗猎车手:圣安地列斯》中经常出现的飞机坠毁之谜终于解开了。

《侠盗猎车手:圣安地列斯》中经常出现的飞机坠毁事件源于一些有问题的代码,这些代码既有漏洞又不完善,部分原因是游戏最初目标硬件的技术限制。前 Rockstar 开发人员分享的这一信息终于为困扰《侠盗猎车手:圣安地列斯》玩家近二十年的谜团提供了答案。

神秘坠机事件是《侠盗猎车手》系列中众多诡异遭遇之一。虽然不一定是《侠盗猎车手:圣安地列斯》独有,但在 2004 年的游戏中却特别常见,以至于许多玩到相对完整的人都会多次遇到,尤其是在拉斯文图拉斯地区。

GTA: San Andreas Plane Crashes Are Partially a Result of 2004 Hardware Limitations

前 Rockstar 开发人员 Obbe Vermeij 在最近的一次社交媒体更新中终于揭开了这一谜团。这位曾在《GTA:圣安地列斯》中担任技术总监的开发人员证实,飞机坠毁并非有意为之,但也不能将其归类为简单的 Bug。他将这一现象定性为一些有缺陷的代码导致的结果,这些代码负责生成飞机在玩家附近进行飞越。

由于 2004 年硬件技术上的限制,逻辑本身非常简陋。具体来说,虽然代码的目的是在生成飞机之前确保飞机路径上没有任何障碍物,但这种检查的成本非常高,因此 Vermeij 选择使用 “绝对最小值”,这导致保障措施经常无法检测到薄薄的障碍物,而这些障碍物会与飞机相撞,导致飞机坠毁。游戏中偶尔也会出现飞机没有足够的初始动力来保持高度的情况,导致飞机下降到预先计算好的飞行路线以下,撞上障碍物后坠毁。

4 Reasons For GTA: San Andreas Plane Crashes

  1. 简陋的飞行路径验证未能考虑到薄障碍物。
  2. 一架飞机在没有足够动力维持高度并保持在预先计算的安全路径上的情况下启动。
  3. 地图模型及其碰撞检测在飞机本身之后加载。
  4. 飞行路径验证中的一个错误导致误报。

当地图模型及其碰撞检测在飞机之后加载时,会出现一个单独的问题,这会导致相同的结果。推特用户 @__silent_甚至在最近泄露的游戏代码中发现了一个会导致误报的 bug,Vermeij 随后承认这是飞机坠毁的第四个潜在原因,而他在 20 年前根本没有意识到这一点。

网上流传的大量《GTA:圣安地列斯》终极版的游戏画面证实,这些问题在2021年的高清重制版中依然存在。Vermeij 透露,由于这个问题,他曾考虑在原版游戏的开发过程中完全取消飞车,但最终决定放弃。虽然不乏社交媒体报道称《GTA 5》飞机也会偶尔坠毁,但这种特殊现象似乎要少见得多,而且目前还不清楚其起源是否与其对应的《圣安地列斯》相似。