Ocarina of Time speedrunners oyunu yeni yollarla nasıl bozar?

saygı dt öne çıkan resim 2
Bu hikaye, Jacob Roach'un PC oyun ve donanım dünyasını kapsayan ReSpec serisinin bir parçasıdır.

ReSpec normalde PC oyunlarının harika, teknik dünyası hakkında bir köşe yazısıdır, ancak ara sıra geçilemeyecek kadar iyi olan konular vardır. Zelda efsanesi:Zamanın Ocarina'sı biri olarak evrensel olarak takdir edilmektedir En iyi Nintendo 64 oyunları Şimdiye kadar yapılmış ve bir PC başlığı olmasa da, oyunun en yüksek seviyeli, en teknik hızlı oyunları, oyunların temel düzeyde nasıl çalıştığını ortaya koyuyor. Daha da önemlisi, bu inanılmaz başarılar ancak çok sayıda topluluk çabasıyla mümkündür.

İçindekiler

  • Keyfi olmaktan uzak
  • Anında hackleme

Önerilen Videolar

Zamanın Ocarina'sı normal bir oyuncunun yenmesi yaklaşık 30 saat sürecek bir oyundur; Oyunu olabildiğince hızlı oynamayı hedefleyen en yetenekli hız koşucuları, yaklaşık üç saat 40 dakikada sorunsuz bir şekilde oyunu yenebilirler. Ancak oyuncuların, kullanılan yöntemlerden bağımsız olarak oyunu tamamlamalarını sağlayan Any% kategorisi üç dakika, 54 saniye ve 566 milisaniyeye indi. Ve evet, o milisaniyeler önemlidir. İkinci sıradaki rekor sahibi, dünya rekorunun tam bir saniye gerisinde.

Nintendo 64 için Ocarina of Time oyunu.

Bu kadar dikkate değer bir başarı olmasına rağmen, hepsi bu değil Zamanın Ocarina'sı hızlı koşular masaya getirir. Yardım amaçlı altı ayda bir düzenlenen hızlı koşu maratonu olan Yaz Oyunları Hızlı Bitti 2022'de, Yeni grafikleri görüntülemek, yeni müzikleri çalmak ve hatta bir Twitch sohbeti yürütmek için oyunu anında yeniden programlayan bir grup speedrunner kaplama. Ve bunların hepsi oyunun stok kopyasında önceden programlama yapılmadan yapıldı.

bu Zamanın Ocarina'sı speedrunning topluluğu, oyunu görünüşte imkansız şekillerde bozmaya devam etti. Klasik Nintendo 64 oyununu neyin harekete geçirdiğini öğrenmek için topluluktaki önde gelen iki zihne ulaştım ve hepsi tek bir istismara bağlı: Arbitrary Code Execution.

Keyfi olmaktan uzak

Nintendo 64 konsolu ve oyunları.
Rob Tek/Shutterstock

Keyfi Kod Yürütme veya ACE, gerçekte olduğundan çok daha korkutucu geliyor. Bu, temelde çalıştırılmaması gereken kodun (veya bir programın) çalıştırılması anlamına gelen siber güvenlik alanında kullanılan bir terimdir. Bir speedrunner olan dannyb işte böyle Zamanın Ocarina'sı Any% kategorisinde ikinci sırayı elinde tutan kişi, ACE'yi şu şekilde tanımladı: Zamanın Ocarina'sı: “OoT'de Keyfi Kod Yürütme, bir oyuncunun oyun içi eylemleri kullanarak bellekteki bir grup veriyi düzenlemek için kullanabildiği bir istismardır. oyun kodunu taklit edin ve ardından oyunun kodu çalıştırmak istediği konumu, bunu az önce yaptığımız yer olacak şekilde değiştirin düzenlemek.”

Dannyb, doğru eylemlerle oyuncuların "esasen oyun içinde istediğimiz herhangi bir kodu çalıştırabileceğini ve oyunun yapmak için programlanmadığı şeyleri yapmak.” Bu eylemler, oyunu başlattığınızda girdiğiniz ad kadar gereksiz görünen şeyleri içerir. oyun. Bu tam olarak izin veren eylem Zamanın Ocarina'sı bu kadar çabuk yenilmek.

gibi bir oyunda Zamanın Ocarina'sı, oyun, oyunu yenmek için karşılanması gereken belirli bir gereksinim için hafızasını kontrol eder. Any% speedrun'daki amaç, karakterinizin tipik olarak göründüğü yer yerine ismine bakmak için hafızayı yeniden düzenlemektir. Buna Bayat Referans Manipülasyonu veya SRM denir ve dannyb, açığın kırılan şey olduğunu söylüyor Zamanın Ocarina'sı speedruns büyük bir şekilde açılır.

[Eski Dünya Rekoru] 3:55.300'de OoT Any% Speedrun!

"Herhangi bir video oyununda ACE'nin her zaman şu iki şeye ihtiyacı vardır: Oyuncunun yapabileceği şekilde belleğin bir bölgesi üzerinde ince ayarlı kontrol. oradaki verileri kodu taklit edin ve kod yürütme konumunu özel kodun bulunduğu yer olacak şekilde değiştirme yeteneği yalanlar. 2019'da OoT'de Stale Reference Manipulation adlı bir aksaklık keşfedildi ve bu da ikinci gereksinimi büyük ölçüde ortaya çıkardı" dedi.

Normal bir durumda Zamanın Ocarina'sı koş, görünüşte rastgele eylemler, olmaması gerektiği halde tamamlama gereksinimleri için oyunu kontrol alanlarına (karakterinizin adı gibi) kandırmak için toplanır. Bu iki aşamalı bir süreç. Karakterinizin adı gibi bir veri yükü oluşturun ve bu yükü işaret etmek için SRM ile belleği değiştirin.

Anında hackleme

OoT Triforce Percent ACE Vitrini: TASBot, SGDQ 2022'de Bizi Burada Bir Araya Getiriyor! (Beta + yeni içerik)

Speedrunners böyle yener Zamanın Ocarina'sı sadece birkaç dakika içinde, ancak sevgiyle adlandırılan Triforce% vitrininin nasıl ekleyebildiğini tam olarak açıklamıyor Yeni doku, modeller, müzik, kod ve hatta herhangi bir değişiklik yapılmadan oyuna bir Twitch kaplaması kartuş. Yıllardır süren bu projenin arkasındaki beyinlerden biri olan Savestate, her şeyin Nintendo 64 konsolunu denetleyici verilerini oyun verileri olarak anlayacak şekilde hazırlamakla ilgili olduğunu açıkladı.

Bu, yalnızca girdileri insanlık dışı hızlarda yürütebilen TASBot sayesinde mümkün olan bir vitrin. Savestate'in açıkladığı gibi, "Denetleyici verilerini N64 talimatları olarak okumaya başlamak için bellekteki bir talimatı değiştiriyoruz. Normalde bu çökerdi, ancak TASBot sayesinde denetleyicileri simüle edebiliyor ve onları insanlık dışı bir şekilde manipüle edebiliyor. oyunun denetleyici verilerini önceden belirlenmiş bir dizi olarak yürütmesi için N64 talimatları gibi görünecek hızlar talimatlar."

Koşucular, sadece denetleyici girişleri aracılığıyla oyuna istedikleri kodu ekleyebiliyorlar.

Kısacası, Triforce% vitrini ACE ve SRM'yi normal bir şekilde kullanıyor Zamanın Ocarina'sı speedrun, ancak özellikle Nintendo 64 konsolunun talimatları anlama şeklini değiştiriyor. Bu kurulumla, koşucular sadece denetleyici girişleri aracılığıyla oyuna istedikleri herhangi bir kodu ekleyebilirler. Savestate şöyle devam etti: “Oyun kartuşunda herhangi bir değişiklik yok. Özel verileri belleğe almak için, içine bir şeyler eklemeye ve değiştirmeye başlamamızı sağlayan bir aksaklık kullanıyoruz. N64 konsoluyla yalnızca denetleyicisi aracılığıyla arabirim oluştururken TASBot'un yardımıyla bellek limanlar.”

Nintendo 64'teki denetleyici bağlantı noktası.

Bu istismarlar da rastgele keşfedilmez. Savestate açıkladı Zamanın Ocarina'sı topluluk, oyunda hafızanın nasıl düzenlendiğine bakmak için araçlar ve farklı hafıza düzenlemelerini simüle etmek için programlar geliştirdi. Project64 gibi öykünücüler, koşucuların ve araç geliştiricilerin oyunun kodu adım adım nasıl yürüttüğünü incelemelerine izin vererek çok yardımcı olur.

Zamanın Ocarina'sı şimdiye kadar yapılmış en ikonik oyunlardan biridir ve sağlam, özel hız koşusu topluluğu, oyunun orijinal olarak piyasaya sürülmesinden sonra on yıllar boyunca yeni gelişmelerle gelişmesine izin vermiştir. En hızlı güç veren gibi istismarlar Zamanın Ocarina'sı hızlı koşular, normalde bir oyunu olabildiğince hızlı yenmekle ilişkilendirilen zorluğu önemsizleştirir, ancak aynı zamanda sevgiliyi incelemeye ve analiz etmeye giden inanılmaz teknik uzmanlığı ve topluluk çabasını vurgulayın oyunlar.

Dannyb'e göre topluluk da bu dengenin farkında: "OoT'nin Any% speedrun kategorisi, ana liderlik tablolarımızda hedefi tamamlamak için geçerli bir yol olarak ACE'ye izin veren tek kategori. Geri kalan her şey için, en başta bu kategorileri hayata geçiren benzersizliği korumak için ACE'yi yasaklıyoruz.”

Bu makalenin bir parçası ReSpec - PC oyunlarının arkasındaki teknoloji hakkında tartışmalar, tavsiyeler ve derinlemesine raporlar içeren iki haftada bir devam eden bir sütun.

Editörlerin Önerileri

  • Zelda: Ocarina of Time, Video Game Hall of Fame'e katıldı
  • Switch Online'ın N64 genişletmesi yarı saydam denetleyiciler olmadan tamamlanmış sayılmaz