Traducciones Emulatronia borde-der2.gif (1255 bytes)
 

   

·················

 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Aprende a traducir

PROGRAMAS NECESARIOS <<

.


Traducir ROMs
paso a paso

·················································
Tutorial por JONAS_ y MUSI

Bueno, una vez con todos los programas bajados, y de haberos aprendido la teoría, ahora es el momento de la práctica. Antes de empezar, hemos de deciros que casi todas las roms usan el código HEX, sobre todo los RPG, y muy pocas roms usan el ASCII.

Y tenemos que deciros también que traducir una rom no es como traducir un libro, sino que, aunque no es muy difícil, traducir una rom es un proceso largo, y requiere tiempo, paciencia, y bastante habilidad.

Bueno, para que lo vayáis entendiendo, utilizaremos de ejemplo una ROM, para pillarle el tranquillo rápidamente. Cogeremos el RPG de SNES Chrono Trigger, que tiene texto en HEX, y empezaremos. Lo haremos paso a paso, y pondremos imágenes y snapshots para que lo veáis.

Lo primero que haremos es ejecutar el emulador de SNES, y cargar la ROM. Dejaremos ir la rom un ratito, hasta que veamos el primer texto que queramos traducir, por ejemplo, la pantalla de elegir entre "ACTIVE" o "WAIT" del Chrono Trigger. Cogemos papel y lápiz y apuntamos excactamente el texto en inglés.


Apunta el texto de abajo en un papel

Ahora salimos del emulaador, y ejecutamos el Searchr 1.0 (o el 2.0), buscando una palabra, por ejemplo "ready". Le ponemos el comando:

searchr ready chrono.smc

y lo empieza a buscar. La ventana MS-DOS quedaría así:

Ya tenemos la palabra "ready" localizada, en "003fd19a". Ejecutamos el UltraEdit 32 y buscamos la columna esta que nos ha dicho el Searchr. Ahora os encontraréis con un pequeño inconveniente.

Cada columna acaba en "0h", y esto acaba en "a". Bien, tenéis que ir hasta la columna 003fd190h, y contad hasta que lleguéis a la "a". os lo explicaré. Cada columna tiene 16 signos, formados por 2 caracteres. Cada uno forma un código HEX, y equivale a una letra. Los códigos HEX van del 0 al 9, y de la A a la F. En total, 16 parejas de números en cada columna.

O sea, que tenéis que ir a la columna 003fd190h, y ahí, contad hasta que lleguéis a la "A": 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A. En total, hasta la 11 pareja de caracteres.

Aquí os he puesto un trozo de la pantalla del UltraEdit, concretamente la de la columna de la palabra "ready". Os he marcado en amarillo la fila, y en azul el código HEX correspondiente a la "r" de "ready", y al caracter en código ASCII, una Ë, así, con diéresis.

Ahora os debéis preguntar si "eso" es una "r". Pues sí, es una "r". Veréis, el código HEX puede ser el genérico, y se verían las letras reales en la zona de ASCII. Eso significaría que la rom estaría en ASCII, y no en HEX, por lo que sería infinitamente más fácil traducir esa rom.

En estos momentos, y aunque os parezca raro, ya sabéis las letras minúsculas, TODAS. Y es porque todas los códigos HEX son ordenados, es decir, que irá del 00 al FF, haciendo 00, 01, 02, 03... 09, 0A, 0B... 0F, 10, 11, 12... hasta el FF. En total, 255 códigos HEX.

Bien, pues sabiendo que la "r" de Chrono Trigger cada juego usaría el suyo casi siempre), que es CB, sabemos, pues, que la "q", la letra anterior, estaría en CA, y la "s", la letra posterior, estaría en CC, y así hasta tener todas las minúsculas.

Nos faltan las mayúsculas, y eso se puede descubrir con un sistema un poco pillín, ya que el SearchrR no hace distinciones entre mayúsculas y minúsculas. Lo que tenéis que hacer es encontrar una palabra de principio de frase, y buscarla con el SearchR de diferente manera.

Por ejemplo, si buscáis la palabra "Enemies", que es la palabra de principio de frase del Chrono con la que estamos haciendo la prueba, tendremos que hacer "

searchr nemies chrono.smc

Ahora nos buscará todas las "nemies" que encuentre, y cuando nos encuentre la que buscamos, que es la que lleve la "E" delante, pues muy fácil: localizamos la "n" de "nemies", y miramos el código anterior a la "n". ¡Ya tenemos la "E"!

Y ahora, con el mismo método de descubrir las minúsculas, apuntamos en un folio todos los códigos de las mayúsculas. Y luego, id probando códigos posteriores a la "z" (minúscula), para encontrar los signos de puntuación, los números, y de paso, los HEX que vosotros habéis cambiado por las vocales acentuadas, la "ñ", y demás.

Perfecto. Ahora ya sabéis las minúsculas. Ahora, para comprobar si ese es el código del Chrono Trigger realmente, deberíais hacer una prueba, consistente en poner una chorrada, por ejemplo, en vez de poner "ready", que ponga "rrrrr". Es decir, toda la palabra "ready" la cambiáis por 5 códigos CB.

Ahora grabais eso en un archivo SMC que lo crearéis ahora, por ejemplo, "pruebachrono.smc", y ejecutáis el emulador, y esa nueva ROM. Si salen las 5 r, habéis descubierto el código del Chrono Trigger.

¡¡¡¡¡Perfecto, hemos descubierto el còdigo del Chrono Trigger!!!!!!! Ahora "sólo" falta traducir toda esa frase, y si queréis, con el NAGA, o con el X-Late, o con el Sprite Editor, editar el código fuente del Chrono, y crear la "ñ", las vocales acentuadas, y los signos de interrogación y admiración principales "¿" y "¡".

Para que os hagáis una idea, os pongo el snapshot de mi traducción del chrono, para que os hagáis una idea de cómo podría quedar.

 

Ahora ya tenéis una frase hecha. Ahora os falta todo el juego de rol que es el Chrono Trigger, aunque yo os recomendaría empezar por juegos cortitos. Si empezáis por los largos y complicados, como los RPG, podéis llegar a aburrir la traducción de roms.

Hay unos códigos HEX que son especiales, pues no son ningún signo, ni ninguna letra. Son códigos que sirven para indicar a la rom que se ha acabado la línea, o que se ha acabado el texto, y que el siguiente debe empezar por el principio, sobreponiéndose del texto.

Por ejemplo, en el Chrono, el código para decirle que pase línea, es el C7, mientras que el que sirve para decirle que se ha acabado el párrafo es el 00.

Una última cosa antes de acabar este apartado. Teneis que limitaros al espacio que os dan en el archivo SMC cuando entréis en él por el UltraEdit. Me explico. Si en la rom sale NEW GAME, son 8 letras, mientras que NUEVO JUEGO son 11. No podéis pasar del límite inpuesto por la rom, porque si lo hacéis, os comeréis códigos HEX que significan instrucciones de la rom. Y eso implicaría un mal funcionamiento de la rom, o la inutilización de la misma.

Eso sí, lo que podéis intentar (no sé si funciona en todas las roms) es apuntaros los códigos que no sean letras (eso hacerlo en juegos con ASCII, mejor, eh?), y acabar la frase. Entonces, a continuación, apuntar los códigos no-texto a continuación. Aunque eso sí, eso implica que una de las siguientes frases deberás hacerla en muy pocos códigos, para hacer caber todo correctamente.

PROGRAMAS NECESARIOS <<

.