Il Realismo nella Finzione

Blake Stone: Aliens of Gold

Tradurre un FPS del 1993 poco fortunato

Premessa

Siamo nel 1996, da poco ho un già vetusto 386, il mio primo PC, i miei primi giochi. Tra questi spicca uno sparatutto in prima persona, Blake Stone: Aliens of Gold. Probabilmente molti non lo hanno mai sentito nominare. È un gioco del 1993 della Apogee che sfrutta l'engine del più famoso e rinomato Wolfenstein 3D, migliorandone però molti aspetti, dalla grafica (ci sono le texture sul pavimento e sul soffitto), alla luminosità dell'ambiente, all'interfaccia un po' più complessa. Sfortuna vuole che esattamente nello stesso periodo (siamo in dicembre) esca sul mercato un certo Doom che migliorava ulteriormente tutto il motore anche se alcune caratteristiche c'erano nello stesso Blake Stone. C'è da dire comunque che se vogliamo parlare di innovazione, Ultima Underworld: The Stygian Abiss batteva anche Doom ed era un RPG. Comunque, tornando a noi, questo gioco mi è rimasto nel cuore. Avevo comprato la versione shareware in un'edicola, ma non avevo mai acquistato il gioco completo, non so perché. Ma sappiamo che ora esiste un certo Good Old Games e che le promozioni sono all'ordine del giorno. È tempo di quelle invernali e lui, il mitico, è in offerta. Lo acquisto, lo installo, lo provo, funziona egregiamente su Windows 8.1 con DosBox. Ma, sull'onda del mio pallino degli ultimi mesi, mi chiedo: "Non sarebbe più bello se fosse scritto in italiano?". E quindi, dopo l'idea sulla UAP 091225 di Arcanum e la killapp 1.02+ di Fallout 2, ecco che un altro progetto matura nella mia testa. Qui però si tratta di una traduzione completa quindi più difficile pur trattandosi di un FPS.

La ricerca degli strumenti

Ho già sperimentato come trattare con giochi così vecchi funzionanti sotto DOS sia tecnicamente impegnativo, ma trattandosi di un gioco basato sul Wolfenstein 3D Engine, dovrebbe essere più facile reperire degli strumenti utili al mio scopo. Infatti trovo facilmente il Wolf3D Data Compiler (WDC). Inizialmente fatico un po' a capire come funziona, infatti riesco a leggere gli archivi *.BS6 ma non riesco a modificarli. Leggendo le istruzioni comprendo che per prima cosa va creato un nuovo progetto dove si andranno poi ad inserire tutte le modifiche che nel mio caso prevedono solo i testi riscritti. Con il menù View riesco ad individuare gli End Art che contengono "tutte" le scritte del gioco e con la funzione Export Multiple Chunks riesco ad esportarli in semplici file *.txt facilmente modificabili. Con Insert File il reinserimento è una banalità. Infine con Compile All tutti gli archivi *.BS6 vengono ricompilati con le modifiche. Il programma è molto potente, permette di modificare qualsiasi aspetto del gioco utilizzando altri piccoli programmi, c'è l'editor dei font, l'editor delle palette e altri, ma... E sì, c'è sempre un ma! Voglio modificare il menù principale, cerco le scritte, non le trovo. Riguardo tutto con più calma, non riesco a trovarle. Dove saranno? Ho il timore che la risposta sia quella che non vorrei sentire, nell'eseguibile del gioco. Provo ad aprire il file BS_AOG.EXE, cerco la parola MISSION, la trovo in mezzo ad un marasma di codice, ma (altro ma) il file è strano, non è come quelli di Ultima VI, i testi non sono così in chiaro. Lo sconforto mi assale, se non posso tradurre tutto è inutile pensare solo di iniziare. Guardo i menù del programma, sotto File c'è un UNLZEXE che mi fa ronzare qualcosa in testa. Termini già sentiti, faccio una ricerca. Scopro che gli eseguibili della Apogee, oltre ad essere ovviamente compilati, venivano tutti compressi con LZEXE. Forse quella funzione permette di decomprimerli. Ci provo, si apre una finestra che mi chiede di selezionare il file EXE compresso con LZEXE e poi di salvarlo. Sono le dieci di sera e non mi rendo conto che il file uscito è comunque un EXE. Non essendo un informatico, mi aspettavo che uscisse il codice sorgente perché purtroppo confondo ancora la compressione di un file con la compilazione. Vado a dormire.

I preparativi sono conclusi

Riprendo in mano il discorso di ieri sera. Riprovo a utilizzare la funzione UNLZEXE con il file BS_AOG.EXE. Guardo la dimensione del file originale e del nuovo file. Quello nuovo è più grande! Forse ho effettivamente decompresso il file. Controllo, è così! Ora le scritte sono in chiaro e modificabili con più facilità. Verifico se il gioco parte comunque anche con l'eseguibile decompresso e funziona senza problemi, quindi non ci sarebbe nemmeno la necessità di ricomprimerlo. Certo, è pur sempre un EXE e ormai so bene che il modo più efficiente per modificarlo è utilizzare un editor esadecimale stando attento a non variare la lunghezza delle stringhe. Il lavoro di sostituzione mi darà i soliti problemi di scelta delle parole più adatte, ma almeno posso metterci mano. In teoria ho tutto ciò che mi serve per pensare anche a questo progetto.

Il lavoro inizia

Il file BS_AOG.EXE è quello che mi dà più da pensare. Intanto cerco il testo e una parte la trovo a partire dall'offset 3AAB0, ma qui, come al solito è meglio cercare le varie scritte in base a come si trovano sullo schermo. Lavoro noioso ma necessario.

I ferri del mestiere

Di seguito elenco i programmi che sto utilizzando per la traduzione.

strumento autore utilizzo
Wolf3D Data Compiler 1.16.386 Adam Biser Traduzione End Art e decompressione file *.EXE
HxD 1.7.7.0 Maël Hörz Traduzione file *.EXE

Work in progress

Nella tabella che segue evidenzio lo stato di avanzamento dei lavori.

fase di lavoro progresso file
Traduzione briefing missioni, storia, manuale, messaggi in-game*.TXT degli End Art
Traduzione menù di giocoBS_AOG.EXE