• Windows 11 24H2가 GTA 산 안드레아스에서 스키머 비행기와 관련된 20년 된 버그를 유발했다

    구성 파일에 몇 개의 숫자를 추가하는 것으로 20년 동안 지속된 버그가 수정되었습니다.

    article image

    게임 개발자 Adrian은 여가 시간을 이용해 게임 버그를 수정하는 작업을 꾸준히 진행해왔으며, 현대 컴퓨터 환경을 위한 Grand Theft Auto: San Andreas (GTA: San Andreas)를 포함한 다수의 게임에 지속적인 패치를 배포하고 있습니다. 최근 저희의 관심을 끈 버그 사례 중 하나는 GitHub 사용자 hiddenmask58이 며칠 전 제기한, Windows 11 24H2로 업데이트한 GTA: San Andreas에서 Skimmer 수상비행기가 사라지는 현상입니다. 해당 사용자에게 따르면, 모드(modded) 버전은 물론 SilentPatch가 적용된 순정 버전에서도 이 문제가 발생합니다. 다행히 Adrian이 이 문제를 접하고 24시간 이내에 해결책을 찾아냈으며, 그 내용을 Silent의 블로그를 통해 공유했습니다.

    조사 결과, 이 문제의 근본 원인은 vehicles.ide 설정 파일 내의 정보 누락에 있었습니다. Skimmer에 대한 항목에서 전륜 및 후륜 스케일(wheel scale)을 포함하는 마지막 네 개의 매개변수가 빠져 있었기 때문입니다. 이 문제는 GTA: San Andreas 출시 초기부터 존재했던 것으로 보이지만, 과거 Windows 운영체제가 해당 정보를 불러오는 방식 때문에 약 20년 동안 감지되지 않았습니다.

    실제로 이 정보 누락은 일종의 '의도된' 부분이었습니다. Skimmer는 수상비행기이며, 게임 내의 다른 모든 보트들 역시 이 네 개의 매개변수가 빠져 있었습니다. 이전 버전의 게임(예: GTA III 및 GTA: Vice City)에서는 이 차량이 보트로 정의되었으나, GTA: San Andreas로 오면서 비행기로 변환되었습니다. 당시 개발자들이 이러한 차량에 필수적인 네 개의 추가 매개변수를 추가하는 것을 누락하면서 버그가 발생한 것으로 분석됩니다.

    하지만 이 오류는 운영체제가 누락된 정보를 처리하는 방식 때문에 20년 이상 감지되지 않았습니다. Windows 98부터 Windows 11 23H2까지의 이전 Windows 버전에서는 운영체제가 vehicles.ide 파일에서 Skimmer보다 앞에 있는 차량의 바퀴 스케일 값(0.7)을 불러왔습니다. 그러나 Windows 11 24H2에서 메모리 처리 방식이 변경되면서 이 문제가 드러나게 되었습니다. 운영체제가 이전 차량의 매개변수를 사용하지 않고 스택 포인터(stack pointer)를 4바이트만큼 조정하는 과정에서 바퀴 스케일 값이 비정상적으로 거대한 수치로 산출된 것입니다.

    따라서 Windows 11 24H2에서 패치되지 않은 버전으로 게임을 실행할 경우, Skimmer는 게임 엔진이 렌더링하기에 너무 거대한 값으로 설정되어 아예 보이지 않습니다. 게다가 이 문제를 수정하지 않고 강제로 CJ를 수상비행기 조종석에 배치하면, 인게임 고도가 1.087 사천조 광년(quadrillion light-years) 높이로 측정되어 캐릭터가 우주인 상태가 되어버립니다.

    새로 업데이트된 Windows PC에서 게임을 정상적으로 즐기려면, GTA: San Andreas 설치 디렉토리로 이동하여 data\vehicles.ide 파일을 찾아주십시오. 파일을 메모장으로 열고 '460, Skimmer' 항목을 찾은 후, 해당 라인의 끝에 -1, 0.7, 0.7, -1을 추가하고 파일을 저장하면 됩니다. 또는 SilentPatch가 GitHub에서 이 게임에 대한 핫픽스(Hotfix)를 배포할 때까지 기다리는 방법도 있습니다. 이 핫픽스에는 다른 게임 내 버그 수정 사항도 포함될 것입니다. 이 방법을 사용하면 Skimmer 수상비행기를 다시 정상적으로 비행하며 GTA: San Andreas의 50번째 재플레이를 진행할 수 있습니다.

    최신 뉴스, 분석 및 리뷰를 피드에서 받아보시려면 Google News에서 Tom's Hardware를 팔로우해 주세요. '팔로우' 버튼을 클릭하는 것을 잊지 마세요.

    [출처:] https://www.tomshardware.com/video-games/pc-gaming/windows-11-24h2-reveals-a-20-year-old-bug-in-gta-san-andreas-related-to-the-skimmer-seaplane