Come gli speedrunner di Ocarina of Time rompono il gioco in modi nuovi

rispetto dt immagine in primo piano 2
Questa storia fa parte della serie ReSpec di Jacob Roach, che copre il mondo dei giochi e dell'hardware per PC.

ReSpec è normalmente una colonna sul meraviglioso mondo tecnico dei giochi per PC, ma a volte ci sono argomenti che sono troppo belli per lasciarsela sfuggire. La leggenda di Zelda:Ocarina del tempo è universalmente acclamato come uno dei migliori giochi per nintendo 64 mai realizzato, e sebbene non sia un titolo per PC, gli speedrun più tecnici e di altissimo livello del gioco mostrano come funzionano i giochi a un livello fondamentale. Ancora più importante, queste incredibili imprese sono possibili solo con un grande sforzo della comunità.

Contenuti

  • Tutt'altro che arbitrario
  • Hacking al volo

Video consigliati

Ocarina del tempo è un gioco che richiederebbe a un giocatore normale circa 30 ore per essere battuto; gli speedrunner più abili, che mirano a giocare il più velocemente possibile, possono batterlo in circa tre ore e 40 minuti senza problemi. Ma la categoria Any% del gioco, che incarica i giocatori di completare il gioco indipendentemente dai metodi utilizzati, è scesa a tre minuti, 54 secondi e 566 millisecondi. E sì, quei millisecondi contano. Il secondo detentore del record è a meno di un secondo intero dal record mondiale.

Gioco Ocarina of Time per Nintendo 64.

Anche se è un'impresa così straordinaria, non è tutto Ocarina del tempo gli speedrun portano in tavola. Ai Summer Games Done Quick 2022, una maratona semestrale di speedrunning per beneficenza, c'è stata una vetrina che ha evidenziato un gruppo di speedrunner che riprogrammano il gioco al volo per visualizzare nuova grafica, riprodurre nuova musica e persino eseguire una chat di Twitch sovrapposizione. E tutto ciò è stato fatto su una copia standard del gioco senza preprogrammazione.

IL Ocarina del tempo la comunità di speedrunning ha continuato a rompere il gioco in modi apparentemente impossibili. Ho contattato due delle menti più importanti della community per scoprire cosa fa funzionare il classico gioco per Nintendo 64, e tutto si riduce a un exploit: Arbitrary Code Execution.

Tutt'altro che arbitrario

Console e giochi nintendo 64.
Rob Tek/Shutterstock

L'esecuzione di codice arbitrario, o ACE, suona molto più intimidatorio di quanto non sia in realtà. È un termine utilizzato nella sicurezza informatica che in pratica significa eseguire codice (o programma) che non dovrebbe essere eseguito. Ecco come dannyb, uno speedrunner per Ocarina del tempo che detiene il record del secondo posto nella categoria Any%, ha descritto ACE in Ocarina del tempo: "Arbitrary Code Execution in OoT è un exploit in base al quale un giocatore può utilizzare azioni di gioco per organizzare una serie di dati in memoria per imitare il codice del gioco e quindi manipolare la posizione in cui il gioco sta cercando di eseguire il codice per essere il luogo in cui l'abbiamo appena fatto arrangiare”.

Con le azioni giuste, dannyb afferma che i giocatori sono in grado di "eseguire essenzialmente qualsiasi codice che ci piace dall'interno del gioco e far sì che il gioco fare cose per cui non era programmato. Queste azioni includono cose apparentemente inutili come il nome che inserisci quando avvii il file gioco. Questa è esattamente l'azione che ha permesso Ocarina del tempo essere battuto così in fretta.

In un gioco come Ocarina del tempo, il gioco controlla la sua memoria per verificare che sia soddisfatto un determinato requisito per completare il gioco. L'obiettivo in uno speedrun Any% è riorganizzare la memoria per guardare il nome del tuo personaggio invece di dove apparirebbe normalmente. Questo si chiama Stale Reference Manipulation, o SRM, e dannyb dice che l'exploit è ciò che ha rotto Ocarina del tempo gli speedrun si aprono in maniera importante.

[Precedente record mondiale] OoT Any% Speedrun in 3:55.300!

“ACE in qualsiasi videogioco ha sempre bisogno di queste due cose: un controllo ottimizzato su una regione di memoria tale che il giocatore possa farlo fare in modo che i dati imitino il codice e la possibilità di modificare la posizione dell'esecuzione del codice in modo che sia il luogo in cui si trova il codice personalizzato bugie. Nel 2019, in OoT è stato scoperto un problema tecnico chiamato Stale Reference Manipulation, che ha aperto il secondo requisito in grande stile ", ha affermato dannyb.

Nel caso di un normale Ocarina del tempo corri, le azioni apparentemente casuali si sommano per indurre il gioco a controllare le aree (come il nome del tuo personaggio) per i requisiti di completamento quando non dovrebbero. È un processo in due parti. Crea un carico utile di dati, come il nome del tuo personaggio, e manipola la memoria con SRM per puntare verso quel carico utile.

Hacking al volo

OoT Triforce Percent ACE Showcase: TASBot ci porta qui insieme a SGDQ 2022! (Beta + nuovi contenuti)

È così che battono gli speedrunner Ocarina del tempo in pochi minuti, ma non spiega completamente come è stata in grado di aggiungere la vetrina Triforce% dal nome amorevole nuove texture, modelli, musica, codice e persino una sovrapposizione di Twitch al gioco senza alcuna modifica al cartuccia. Savestate, una delle menti dietro questo progetto lungo anni, ha spiegato che si tratta di preparare la console Nintendo 64 a comprendere i dati del controller come dati di gioco.

È una vetrina possibile solo grazie a TASBot, che è in grado di eseguire input a velocità disumane. Come spiega Savestate, “Modifichiamo un'istruzione in memoria per iniziare a leggere i dati del controller come istruzioni N64. Normalmente, questo andrebbe in crash, ma grazie a TASBot, è in grado di simulare i controller e manipolarli in modo disumano velocità per assomigliare alle istruzioni N64 in modo che il gioco esegua i dati del controller come un insieme di predeterminati Istruzioni."

I corridori possono aggiungere qualsiasi codice desiderino al gioco semplicemente tramite gli input del controller.

In breve, la vetrina Triforce% utilizza ACE e SRM come un normale Ocarina del tempo speedrun, ma sta cambiando in modo specifico il modo in cui la console Nintendo 64 comprende le istruzioni. Con quella configurazione, i corridori sono in grado di aggiungere qualsiasi codice desiderino al gioco semplicemente tramite gli input del controller. Savestate ha continuato: “Non è stata apportata alcuna modifica alla cartuccia del gioco. Per inserire dati personalizzati in memoria, utilizziamo un problema tecnico che ci consente di iniziare ad aggiungere e modificare elementi memoria con l'aiuto di TASBot mentre si interfaccia solo con la console N64 tramite il suo controller porti”.

Porta del controller sul Nintendo 64.

Questi exploit non vengono scoperti solo casualmente. Savestate ha spiegato che il file Ocarina del tempo La comunità ha sviluppato strumenti per esaminare come è organizzata la memoria nel gioco, oltre a programmi per simulare diverse disposizioni di memoria. Emulatori come Project64 aiutano molto, consentendo ai corridori e agli sviluppatori di strumenti di esaminare passo dopo passo il modo in cui il gioco esegue il codice.

Ocarina del tempo è uno dei giochi più iconici mai realizzati e la solida e dedicata community di speedrunning ha permesso al gioco di prosperare con nuovi sviluppi per decenni dopo il suo rilascio originale. Exploit come quello che alimenta il più veloce Ocarina del tempo gli speedrun banalizzano la sfida normalmente associata a battere un gioco il più velocemente possibile, ma anche loro evidenziare l'incredibile competenza tecnica e lo sforzo della comunità che va a sezionare e analizzare amato Giochi.

Anche la community è consapevole di questo equilibrio, secondo dannyb: "La categoria Speedrun Any% di OoT è l'unica nelle nostre classifiche principali che consente ACE come un modo valido per completare l'obiettivo. Per tutto il resto, bandiamo ACE per preservare l'unicità che ha dato vita a quelle categorie in primo luogo.

Questo articolo fa parte di Rispec – una colonna bisettimanale in corso che include discussioni, consigli e rapporti approfonditi sulla tecnologia alla base dei giochi per PC.

Raccomandazioni della redazione

  • Zelda: Ocarina of Time entra a far parte della Video Game Hall of Fame
  • L'espansione N64 di Switch Online non sarà completa senza controller traslucidi