Home Homebrew Decompilato Banjo-Kazooie per Nintendo 64: Possibile porting su PC con miglioramenti moderni

Decompilato Banjo-Kazooie per Nintendo 64: Possibile porting su PC con miglioramenti moderni

131
0

Banjo-Kazooie, celebre platform del catalogo Nintendo 64, è stato completamente decompilato grazie al lavoro di un team di sviluppatori indipendenti.

La decompilazione consiste nel processo di ingegneria inversa che trasforma il codice eseguibile di un videogioco originariamente scritto per una console specifica in codice sorgente leggibile, in questo caso nel linguaggio di programmazione C.

Banjo-Kazooie ora è l’ultimo titolo per Nintendo 64 a beneficiare di questo processo, consentendo la creazione di porting per PC.

La disponibilità del codice decompilato permette agli sviluppatori e ai modder di introdurre una serie di miglioramenti e nuove funzionalità al gioco, tra cui frame rate migliorato, supporto per schermi ultra-wide, risoluzioni 4K e ray tracing.

Questi aggiornamenti offrono un’esperienza di gioco moderna e arricchita, adattando Banjo-Kazooie agli standard tecnologici attuali.

Per poter giocare a una versione su PC di Banjo-Kazooie, gli utenti dovranno disporre di una ROM legalmente acquistata del gioco originale per Nintendo 64.

Il software utilizzerà gli asset presenti nella ROM, come modelli di personaggi, audio e texture, combinandoli con il codice decompilato per creare una versione nativa per PC.

Questo approccio mira a ridurre il rischio di problemi legali, in quanto i progetti di ingegneria inversa, come questo, non utilizzano contenuti trapelati o materiali protetti da copyright.

La decompilazione di Banjo-Kazooie si aggiunge a una crescente lista di progetti di decompilazione di giochi Nintendo 64, come The Legend of Zelda: Ocarina of Time e The Legend of Zelda: Majora’s Mask, che hanno già visto versioni per PC create in modo simile.

Recentemente, è stato introdotto uno strumento denominato N64: Recompiled, progettato per ricompilare automaticamente i binari dei giochi Nintendo 64 in codice C, riducendo significativamente il tempo necessario rispetto ai metodi di decompilazione tradizionali.

Tuttavia, secondo il creatore dello strumento, Nerrel, questo processo automatizzato non è privo di difetti e spesso richiede interventi manuali per garantire la compatibilità con l’hardware moderno, rendendo le decompilazioni manuali più precise e affidabili.

Preparazione e strumenti di compilazione

Per iniziare il processo di costruzione del gioco decompilato, è necessario eseguire alcuni passaggi preliminari:

Aggiornamento dei Submoduli Git

  • Prima di procedere, è importante aggiornare i submoduli utilizzati dal progetto eseguendo il seguente comando: git submodule update --init --recursive

Caricamento della ROM di base

  • Scaricare e utilizzare la versione 1.0 statunitense del gioco originale, denominandola baserom.us.v10.z64. È necessario verificare che la ROM corrisponda all’hash SHA1: 1fe1632098865f639e22c11b9a81ee8f29c75d7a.

Compilazione completa del progetto

  • Una volta configurati gli strumenti e caricata la ROM di base, per estrarre e costruire tutto il codice sorgente, eseguire: make

Valori Supportati per <module_id>

Durante la fase di costruzione, è possibile specificare diversi moduli del gioco utilizzando il parametro <module_id>. I moduli attualmente supportati includono:

  • core1, core2: Moduli centrali del gioco.
  • MM, TTC, CC, BGS, FP, lair, GV, CCW, RBB, MMM, SM: Diverse aree e livelli del gioco.
  • fight, cutscenes: Moduli per le sequenze di combattimento e le scene di intermezzo.

Prerequisiti di Sistema

Per compilare correttamente il progetto, sono necessari alcuni prerequisiti software su una distribuzione Ubuntu 18.04 o superiore. Eseguire i seguenti comandi per installare le dipendenze richieste:

  1. Aggiornamento del Sistema e Installazione dei Pacchetti: sudo apt-get update && sudo apt-get install -y $(cat packages.txt)
  2. Installazione di Rust: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
  3. Installazione delle Dipendenze Python: python3 -m pip install -r requirements.txt

Altre versioni del gioco

Oltre alla versione USA v1.0, è possibile utilizzare altre versioni della ROM, come us.v11, jp, o pal. Per fare ciò, rinominare la ROM corrispondente a baserom.<version>.z64 (ad esempio, baserom.us.v11.z64), quindi eseguire il comando di costruzione specificando la versione: make VERSION=us.v11

Download: Source code Banjo-Kazooie

Fonte: videogameschronicle.com

LASCIA UN COMMENTO

Per favore inserisci il tuo commento!
Per favore inserisci il tuo nome qui

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.