Menu principale

hex editing

Aperto da kabo, Giugno 12, 2010, 02:09:26

Discussione precedente - Discussione successiva

kabo

Qualche giorno fa ho iniziato a tradurre per la prima volta un gioco ho scelto una cosa facile per iniziare... infatti ha pochissime cose scritte <.< però mi sono imbattuto lo stesso in un problema... il limite delle lettere e quindi non posso tradurre decentemente :S
Qualcuno sa come poter superare quest'ostacolo?

Phoenix

Impara ad usare i puntatori.

-EDIT- Così rendiamo chiare le cose un po' a tutti, visto che in molti hanno lo stesso problema.

"Principio e necessità dei puntatori"

in linea generale, i giochi hanno due modi per accedere al testo per visualizzarlo:

1. (RPG e affini) vista la grande mole di testo, utilizzano una tabella di indirizzi associata a un blocco di testo. Ogni indirizzo punta ad una frase. Il gioco ne legge uno dopo l altro, carica le frasi e le visualizza.

2. (giochi con poco testo o pezzi di testo minimo (vedi Menu)) Il gioco non ha una lista di indirizzi, visto che il testo è poco, ma gli indirizzi per ogni frase/parola sono immersi direttamente nel codice di gioco -> devi leggere il codice e modificarlo tramite assembly per spostare il testo.
Phoenix
****************
membro di SadNES cITy
I gruppo italiano di traduzione ROM
http://www.sadnescity.it
*****************************

Vash

Citazione2. (giochi con poco testo o pezzi di testo minimo (vedi Menu)) Il gioco non ha una lista di indirizzi, visto che il testo è poco, ma gli indirizzi per ogni frase/parola sono immersi direttamente nel codice di gioco -> devi leggere il codice e modificarlo tramite assembly per spostare il testo.
Sono sempre puntatori, ma non diretti. Di solito sono un qualche "Push" il quale indirizzamento varia a seconda della macchina su cui si lavora....
Vash the stampede
il tifone umanoide
la calamità naturale
l'uomo da 60 miliardi di $$


TRIGUN ONE WORD ONE WORLD

Gemini

Solo le macchine molto vecchie usano Push/Pop per indirizzare i dati, e questi vengono usati quasi esclusivamente per i cambi di banco. Di norma non vengono utilizzati affatto per via dell'organizzazione a banchi che ingloba tutti i dati nello stesso raggio d'azione. Su macchine 32 bit e successive, con mappaggio diretto di tutta la memoria, non esiste nulla del genere, per fortuna.

Ma comunque sia, dubito kabo avrà la minima idea di cosa stiamo parlando. Per il momento sarebbe meglio fargli fare i suoi esperimenti con qualcosa di più semplice.

kabo

[rieccomi scusate ma ho avuto un problema e non volevo disturbare perchè era un problema banale quindi ho risolto da solo e ci ho messo 1 po' di tempo <.<]

infatti... non ho capito niente xD
comunque quoto sugli esperimenti la pratica è meglio della teoria (e sopratutto più divertente :D )
che cosa potrei fare per imparare? :blink:  

Gemini

Potresti provare a cambiare qualcosa dialogo di Final Fantasy 6 per SNES. È un gioco incredibilmente facile da modificare e, nonostante questo, contiene alcune piccole sfide che potrebbero servirti in futuro, come la creazione di table con DTE, stringhe a lunghezza fissa, ecc...

kabo

perdona la mia nabbità ma il gioco che traducevo prima era per psp quindi era 1 po' diversa la cosa...
com'è che dovrei estrarre l'smc? o_O (è una domanda stupida vero? >.<)


edit: forse ho imparato a usare i puntatori <.< (ho studiato il gioco fino alle 4 del mattino :\) spero che siano in tutti i giochi così sennò mi sparo xD

Gemini

Le rom della maggior parte delle vecchie console non hanno un file system, per cui sono semplicemente dei grossi blocchi di dati infilati uno dietro l'altro e tenuti inseme dal codice. Non esiste un metodo per scomporle in file individuali come si fa per esempio su DS.

kabo

ah ok... e io che cercavo qualche programma per scompattare la rom xD
quindi... non è da scompattare... poi da quello che ho visto con un hex editor nn trova neanke "you" quindi nn è da aprire con quello.... come si fa? <.<

Gemini

Leggi attentamente la parte su DTE/MTE di questo link.