Romhacking.it Forums

Traduzioni => Rom Hacking => Discussione aperta da: Scrooge il Settembre 26, 2006, 19:57:06

Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Scrooge il Settembre 26, 2006, 19:57:06
Ciao

Sto facendo un po' di prove con una rom NES, tale Duck Tales 2, per fare un po di pratica

Ai fini della traduzione, grazie all'emulatore NESticle sono riuscito a costruire la tabella dei caratteri.
Ma ai fini dell'apprendimento questa soluzione non mi soddisfa. Ho provato a cercare dei pezzi di testo con la ricerca relativa, ma non trovo nulla. So per certo che è presente una compressione, infatti importando la tabella trovata ho individuato un dizionario delle parole/sillabe più comuni.

Come avrei potuto individuare la tabella dei caratteri se non avessi avuto a disposizione l'emulatore?
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Phoenix il Settembre 26, 2006, 21:03:42
CitazioneCiao

Sto facendo un po' di prove con una rom NES, tale Duck Tales 2, per fare un po di pratica

Ai fini della traduzione, grazie all'emulatore NESticle sono riuscito a costruire la tabella dei caratteri.
Ma ai fini dell'apprendimento questa soluzione non mi soddisfa. Ho provato a cercare dei pezzi di testo con la ricerca relativa, ma non trovo nulla. So per certo che è presente una compressione, infatti importando la tabella trovata ho individuato un dizionario delle parole/sillabe più comuni.

Come avrei potuto individuare la tabella dei caratteri se non avessi avuto a disposizione l'emulatore?
Avresti potuto usare il metodo descritto nella guida dei SadNes, ovvero confrontare i salvataggi, però credo che non essendo un rpg, non hai la possibilità di inserire un nome personalizzato.
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Gemini il Settembre 26, 2006, 21:19:45
Ultimamente creo le tabelle direttamente partendo dal codice asm del gioco con vari trucchetti che ho imparato con il tempo, per esempio monitorando gli accessi alla vram. Non sarà il metodo più semplice del mondo, però è sicuramente il migliore.
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Scrooge il Settembre 26, 2006, 21:24:47
No, purtroppo il metodo dei salvataggi in questo caso non mi aiuta, non ci sono nomi da inserire.

L'unica cosa che mi viene in mente è cercare le zone della rom che hanno la struttura classica dei puntatori (es 00xx00xx), quindi la parte che si ipotizza del testo (xxxxxxxFFxxxxxFF) e sostituire per ogni parola un xx con un carattere a casaccio,

se si ha fortuna si ha beccato il dizionario :(

però mi sembra piuttosto sciocco come metodo, potrei metterci giorni a provare tutte le zone che assomigliano a tabelle dei puntatori
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Phoenix il Settembre 26, 2006, 21:45:08
oppure, potresti dare uno sguardo alla ram nel momento in cui viene visualizzato un messaggio. Se il testo è compresso come dici tu, allora sicuramente in ram troverai anche quello decompresso.
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Sephiroth 1311 il Settembre 26, 2006, 22:01:18
Ma Ducktales 2 non è quel gioco dove il caro Scrooge deve recuperare i pezzi di una mappa?
Se sì, lo avevo su Gameboy... quanti ricordi.
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Scrooge il Settembre 26, 2006, 22:39:29
CitazioneMa Ducktales 2 non è quel gioco dove il caro Scrooge deve recuperare i pezzi di una mappa?

Sì è proprio quello, diciamo che è un giochino a cui sono particolarmente affezionato :D
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: |GeO| il Settembre 28, 2006, 14:43:07
Potresti anche individuare i testi con un rom corrupter e di conseguenza analizzare gli stessi. Metodo molto grezzo, molto meglio scandagliare in ram...
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: gufino2 il Settembre 29, 2006, 00:32:43
a volte però usare un rom corrupter per individuare qualcosa in una rom è un'esperienza che può portare un uomo alla pazzia  :D  
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: |GeO| il Settembre 30, 2006, 11:34:56
Vero, ma in alcune occasioni mi ha salvato, quindi secondo me vale la pena di fare un tentativo.
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Scrooge il Settembre 30, 2006, 11:35:58
Beh ho provato a leggere la rom con tile layer pro, ho individuato i caratteri, notando che non seguono l'ordine dell'alfabeto e a volte sono interposti a oggetti di grafica, come le freccette su/giù, il contorno delle finestre di testo.

Guardando dal tile layer pro ho visto che l'ordine era pressapoco questo:

RAWB?CES

allora ho provato a ricercare la parte BASE(4,2,8,7) di "BASEMENT"(parola presente nel primo testo del gioco) con la ricerca relativa, non ottenendo risultati. Questo perchè in realtà nei tile tra E e S si trova il tile per lo spazio vuoto, impossibile da riconoscere sul tile layer.


Questo metodo non è molto veloce però può funzionare.
Per leggere nella RAM invece come devo procedere?


 
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Phoenix il Settembre 30, 2006, 12:43:56
A quanto ho capito allora, quando parlavi di compresisone, ti riferivi a DTE E mte giusto?
se così fosse, analizzare la RAM, servirebbe semplicemente a restringere il campo di ricerca, limitato esclusivamente alla ram, niente di più. Sinceramente ho lavorato pochissimo su ROM (prediligo la PSX) però il concetto di base è quello.
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Scrooge il Settembre 30, 2006, 19:53:29
Sì la compressione riguarda il testo, e credo si tratti di MTE avendo più di due caratteri per codice hex.
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Phoenix il Ottobre 01, 2006, 00:10:02
CitazioneSì la compressione riguarda il testo, e credo si tratti di MTE avendo più di due caratteri per codice hex.
Allora c'è poco da fare. Guardare in RAM servirebbe solo a restringere lo spazio di ricerca del testo.
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Gemini il Ottobre 01, 2006, 01:51:44
CitazioneAllora c'è poco da fare. Guardare in RAM servirebbe solo a restringere lo spazio di ricerca del testo.
È un buon metodo, certo, ma non tutti i giochi permettono di vedere la frase in chiaro nella RAM. La maggior parte dei titoli che fa uso di mte/dte sfrutta metodi assai avanzati per evitare in toto il passaggio dalla RAM e lavorano direttamente sui dati grezzi non manipolati, vedi Innocent Sin che utilizza un sistema efficientissimo per appendere nuove stringhe a quelle attualmente in stampa.
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Phoenix il Ottobre 01, 2006, 09:30:46
Citazionenon tutti i giochi permettono di vedere la frase in chiaro nella RAM
Tentar non nuoce...  :D  
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Scrooge il Ottobre 01, 2006, 19:33:44
Ho trovato tutti i caratteri che mi servivano.
Appena i miei studi me lo permetteranno, inizierò anche la traduzione.
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Scrooge il Ottobre 02, 2006, 12:39:00
Ecco un primo screenshot (http://img181.imageshack.us/my.php?image=dt202wh9.jpg), per la traduzione di EASY mi sono ripreso alla traduzione che Yuumeikai ha usato per Duck Tales 1.

Sarebbe stato meglio FACILE, ma c'è spazio solo per 4 caratteri. Invece ho potuto aggiungere la E a NORMAL in quanto erano presenti 4 spazi vuoti a disposizione.

E' possibile riciclare i rimanenti tre per scrivere FACILE nella riga sopra?
Vi mostro com'è il codice in questo punto: (evidenzio gli spazi con un underscore)


{09}{00}{21}{F4}_SPECIAL_{09}{00}{22}
{14}___ENERGY{09}{00}{22}{34}$_
_750000{00}{09}{00}{21}{F4}_TREA
SURE{09}{00}{22}{14}______M
AP{09}{00}{22}{34}$ 1000000{00}
{09}{00}{22}{34}_SOLD OUT{00}{0C}{00}
{20}1TREASURE_MAP{00}{0B}
{00}{22}{4A}NUOVO_GIOCO{0A}{00}
{22}{8A}{74}_CONTINUA{00}{04}{00}{22}
{0C}BASE{0B}{00}{22}{4A}{74}_NORMA
LE__{09}{00}{22}{8C}DIFFICIL
E{00}{13}
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: yuumeikai il Ottobre 02, 2006, 15:27:02
All'epoca della traduzione di Ducktales ero ancora un novellino, se ci penso mi fa davvero ribrezzo.

Hai provato a cercare i puntatori associati a quelle stringhe? Un modo per riciclare quei caratteri c'è di certo. Altrimenti se nelle tile hai spazi bianchi creati un font personalizzato, crea in 4 tile la parola FACILE e reinseriscila al suo posto cambiando gli hexcode con le nuove tile.

Buona fortuna per il progetto.
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Scrooge il Ottobre 02, 2006, 17:09:59
Ho provato a lavorarci un po' sopra, intanto ho guardato il codice, e ho visto che prime delle 3 modalità di difficoltà si ripete la struttura

{xx}{00}{22}{xx}

dove il primo xx indica la lunghezza del testo...04 nel caso di EASY, 09 per DIFFICULT.
il secondo invece riguarda la posizione iniziale del testo nello schermo, quindi non mi interessa

purtroppo però ho scoperto a cosa servivano tutte quelle spaziature in + per NORMAL, a cancellare la sottostante scritta PRESS START, che compariva prima.

quindi io modificando sono riuscito a trasformare in
FACILE
NORMALERT
DIFFICILE

e "RT" non essendo più cancellato dalle spaziature, rimane lì... :(

vedrò se riesco a pensare a qualcosa di facile per risolvere, altrimenti toccherà a usare delle tile vuote.

EDIT: ho ridotto PRESS START al solo START e ho eliminato il problema, è una soluzione orrenda?
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: mentz il Ottobre 03, 2006, 16:45:14
CitazioneHo provato a lavorarci un po' sopra, intanto ho guardato il codice, e ho visto che prime delle 3 modalità di difficoltà si ripete la struttura

{xx}{00}{22}{xx}

dove il primo xx indica la lunghezza del testo...04 nel caso di EASY, 09 per DIFFICULT.
il secondo invece riguarda la posizione iniziale del testo nello schermo, quindi non mi interessa

purtroppo però ho scoperto a cosa servivano tutte quelle spaziature in + per NORMAL, a cancellare la sottostante scritta PRESS START, che compariva prima.

quindi io modificando sono riuscito a trasformare in
FACILE
NORMALERT
DIFFICILE

e "RT" non essendo più cancellato dalle spaziature, rimane lì... :(

vedrò se riesco a pensare a qualcosa di facile per risolvere, altrimenti toccherà a usare delle tile vuote.

EDIT: ho ridotto PRESS START al solo START e ho eliminato il problema, è una soluzione orrenda?
Per il problema del "NORMALERT", se non hai degli spazi vuoti da aggiungere può sempre risolvere impostando la lunghezza del testo a 7... In teoria dovrebbe prenderti solo quello che ti serve...

Le cose devono vedersi ben fatte a video non nel codice dove i prorammatori lasciano uno sporco pauroso chissà per quale arcano motivo (forse diranno: "se così funziona, meglio non togliere niente, non si sa mai...")

Per la scritta "START", per me sta bene così, dipende dai gusti del traduttore...
(la traduzione è fatta da LUI e deve rendere conto solamente solo al suo estro...)

Io, potento, metterei "AVVIO" e come dicono in Finsiel: "FA SCOPA!"....

Per il resto se si deve espandere sarebbe meglio poter lavorare con i puntatori...

Comunque stai già facendo una bel lavoro...  :applauso:  
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Scrooge il Ottobre 03, 2006, 18:21:55
Grazie.
Devo dire che come rom è stata una buona scelta per iniziare, c'è un po' di tutto e ho modo di imparare parecchie cose.

Intanto posto alcuni altri screen frutto del lavoro su menu vari:
-inventario (http://img468.imageshack.us/my.php?image=dt2menuoggettidt5.jpg)
-negozio (http://img235.imageshack.us/my.php?image=dt2negoziofg9.jpg)

Se alla fine della traduzione avrò ancora abbastanza tile di rimasugli giapponesi, cambierò tutti gli oggetti del negozio con il nuovo font.


Adesso mi sono bloccato di fronte a questa schermata:
PROBLEMA (http://img501.imageshack.us/my.php?image=dt2problemawn8.jpg)


il testo è in sovraimpressione sul sottostante sfondo, difatti ho trovato nella rom quello sfondo e ho sostituito bytes a caso (inserendo una R) fino a che non ho visto che sotto la T di STAGE si vedeva la mia R

Quindi quel testo si trova altrove nella rom, ma non riesco a trovarlo con la table dei font. Avete qualche idea su come potrei trovarlo?

Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Gemini il Ottobre 03, 2006, 18:36:35
Potresti mica postare qualche screen dei tile in vram per quella schermata? VBA o no$gbc hanno il supporto per farlo. Al momento credo di avere un'idea di cosa potrebbe essere, ma preferisco avere una conferma prima di sparare la mia teoria. :P
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Scrooge il Ottobre 03, 2006, 19:01:37
Lo farei volentieri, ma non credo che che VBA riesca ad aprire una rom NES.
Conosci un emulatore NES con cui potrei fare la stessa cosa?
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Gemini il Ottobre 03, 2006, 19:24:27
E io che pensavo fosse un gioco per GBC. Ammazza se ho perso la testa in questi giorni. :D Virtual NES dovrebbe avere il supporto se non ricordo male, come anche il pessimo Uber NES. Consigliatissime questa (http://www.romhacking.net/utils/fceuxd.10a.zip) e quest'altra (http://www.romhacking.net/utils/fceuxdsp-1_06.rar) release di FCEUXD che a quanto pare è il miglior emu utilizzato da traduttori di giochi NES.
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Scrooge il Ottobre 03, 2006, 21:19:45
Ecco qua (http://img234.imageshack.us/my.php?image=dt2tileswo0.jpg), spero che sia questo lo screen che chiedevi.
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Sephiroth 1311 il Ottobre 03, 2006, 21:34:02
CitazioneHo provato a lavorarci un po' sopra, intanto ho guardato il codice, e ho visto che prime delle 3 modalità di difficoltà si ripete la struttura

{xx}{00}{22}{xx}

dove il primo xx indica la lunghezza del testo...04 nel caso di EASY, 09 per DIFFICULT.
il secondo invece riguarda la posizione iniziale del testo nello schermo, quindi non mi interessa

purtroppo però ho scoperto a cosa servivano tutte quelle spaziature in + per NORMAL, a cancellare la sottostante scritta PRESS START, che compariva prima.

quindi io modificando sono riuscito a trasformare in
FACILE
NORMALERT
DIFFICILE

e "RT" non essendo più cancellato dalle spaziature, rimane lì... :(

vedrò se riesco a pensare a qualcosa di facile per risolvere, altrimenti toccherà a usare delle tile vuote.

EDIT: ho ridotto PRESS START al solo START e ho eliminato il problema, è una soluzione orrenda?
Per quanto riguardo il ripuntamento/espansione, prova a dare un'occhiata alla guida di Woeser e D-Chan (http://www.sadnescity.it/traduzioni/tmnt/tmnt.php).
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Gemini il Ottobre 03, 2006, 21:59:34
CitazioneEcco qua (http://img234.imageshack.us/my.php?image=dt2tileswo0.jpg), spero che sia questo lo screen che chiedevi.
Come immaginavo quella schermata utilizza solo una parte del font per mappare le scritte (vedi: SGTHUI). Un consiglio: crea una mini table utilizzando i valori che ti passa l'emulatore per i tile e poi cambia la grafica a seconda delle tue esigenze.
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Scrooge il Ottobre 03, 2006, 22:18:27
Nel caso specifico cosa dovrei fare?
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Sephiroth 1311 il Ottobre 13, 2006, 22:49:48
CitazioneNel caso specifico cosa dovrei fare?
Quello che Gemini cerca di dirti è che il gioco usa un'altra table per quelle scritte; solo che questa table ha in sé solo i caratteri strettamente necessari.

Comunque, come procede la traduzione? ;)
Sono piuttosto interessato, visto che con questo gioco (in versione GB) ci giocai una vita, quand'ero un caruso...  
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Scrooge il Ottobre 15, 2006, 15:18:23
Sto traducendo il testo, cercando di far rientrare tutto nello spazio dato, senza però creare degli orrori linguistici.
Cercherò anche di sfruttare al massimo il dizionario MTE, e se proprio dovesse servire, ho trovato dei banchi di spazio inutilizzato (o almeno credo siano tali, sono dei pezzi di codice dove si susseguono tanti FF FF FF FF ... , e nel tile layer li vedo come tile neri) però dovrei anche lavorare con i puntatori, quindi dovrò prima documentarmi.

Purtroppo però sono anche iniziate le lezioni universitarie, e tra analisi 1 e geometria se ne va il 90% del mio tempo
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Clomax il Ottobre 15, 2006, 18:44:00
in bocca al lupo per analisi1
Titolo: DuckTales2: Ricerca dei caratteri
Inserito da: Sephiroth 1311 il Ottobre 16, 2006, 14:39:09
CitazioneSto traducendo il testo, cercando di far rientrare tutto nello spazio dato, senza però creare degli orrori linguistici.
Cercherò anche di sfruttare al massimo il dizionario MTE, e se proprio dovesse servire, ho trovato dei banchi di spazio inutilizzato (o almeno credo siano tali, sono dei pezzi di codice dove si sussegguono tanti FF FF FF FF ... , e nel tile layer li vedo come tile neri) però dovrei anche lavorare con i puntatori, quindi dovrò prima documentarmi.

Purtroppo però sono anche iniziate le lezioni universitarie, e tra analisi 1 e geometria se ne va il 90% del mio tempo
Ti assicuro che i puntatori sono più semplici di quanto si possa credere (a meno che di non beccare il gioco strano).
Da quanto ne so, quelli NES dovrebbero essere tutti regolari.