GTA: San Andreas gibi klasik oyunlar için yayınladığı “SilentPatch” yamalarıyla tanınan oyun geliştiricisi ve mod yapımcısı Silent, tam yirmi yıldır oyunun kodlarında gizlenmiş ilginç bir hatayı keşfetti ve düzeltti. İşin tuhaf yanı, bu hatanın belirginleşmesini tetikleyen şeyin Windows 11’in yeni bir ön izleme sürümü (24H2) olmasıydı. Öte yandan bu hata, oyunun PC’ye çıktığı sene olan 2005’ten beri bulunuyordu.
Her şey Silent’ın aldığı oldukça spesifik bir hata raporuyla başladı. Bir kullanıcı, Windows 11’i 24H2 sürümüne güncelledikten sonra oyundaki deniz uçağı Skimmer’ın tamamen ortadan kaybolduğunu bildiriyordu. Uçak, ne hile (trainer) ile çağrılabiliyor ne de haritadaki normal belirme noktalarında görünüyordu.
GTA: San Andreas’ta “Skimmer” Adlı Uçak ya Kayboluyor ya da Uzaya Fırlıyordu
Silent, bunun öylesine bir hata olmadığını; geçen kasım ayından beri benzer yorumlar aldığını fark etti. Hatta bir kullanıcı, sanal makine üzerinde yaptığı testle durumu teyit etti. Windows 11 23H2’de sorunsuz çalışan uçak, 24H2’ye güncellenince kayboluyordu.
Silent, kendi sanal makinesinde 24H2’yi kurup durumu doğruladıktan sonra işler daha da garipleşti. Geliştirici, hileyle Skimmer’ı zorla çağırmaya çalıştığında uçağın CJ ile birlikte 1.087 katrilyon ışık yılı gibi akıl almaz bir mesafeye fırlatıldığını gördü. Elbette San Andreas’ın bu olayı gösterecek bir mekanizması yoktu; bunun yerine kamera sonsuzluğa fırlatıldığında görülen meşhur patlama efekti ortaya çıkıyordu.
Peki, uçağın bu şekilde davranmasına ne sebep oluyordu? Silent, yaptığı detaylı incelemede sorunun kökenine inmeyi başardı. Problemin temelinde, oyunun Skimmer aracını tanımlayan “vehicles.ide” dosyasındaki eksik parametreler yatıyordu.
Görünüşe göre Skimmer, serinin önceki oyunu Vice City’de bir tekne olarak tanımlanmıştı. San Andreas’ta araç tipi uçağa çevrildiğinde, Rockstar’daki bir geliştirici uçağın ön ve arka tekerlekleri için gerekli olan bazı ekstra parametreleri eklemeyi unutmuştu. Oyun, bu eksik parametreler nedeniyle Skimmer’ı bir nevi “tekne gibi” algılamaya çalışıyordu. Silent’ın bu eksik parametreleri eklemesiyle sorun tamamen çözüldü.
Olayın en ilginç yanı ise bu hatanın neden 20 yıl sonra, özellikle Windows 11 24H2 ile belirginleştiğiydi. Silent’a göre Windows 11, doğrudan sorumlu değil. Asıl sorun, oyunun tanımlanmamış (başlatılmamış yerel değişkenler gibi) davranışlara dayanmasıydı. Bu durum, teorik olarak Windows 10, 7, XP hatta 98’de bile ortaya çıkabilirdi; sadece matematiksel tesadüfler bugüne kadar buna engel olmuştu. Windows 11 24H2, bu değişkenlerin bellekteki durumunu değiştirerek hatayı tetiklemişti.
Silent, ayrıca bu hatanın oyunun orijinal Xbox sürümünde ve GTA: The Definitive Edition gibi daha sonraki sürümlerde Rockstar tarafından zaten düzeltilmiş olduğunu da keşfetti. Ancak PC versiyonunda bu durum tam 20 yıl boyunca gizlenmeyi başarmıştı.
Kaynak: PCGamer