Traducciones Crackowia™

Traducción ROMhacker. Un arte.

La traducción de videojuegos discontinuados es una labor a menudo compleja, que se verá incrementada en la medida en que lo haga la extensión total de sus textos. Al no disponerse del código fuente, como suele suceder en un desarrollo original, a menudo el traductor debe buscar los textos en el interior del juego. Si se trata de un juego de ordenador, esto será buscando en los archivos que componen el juego, ya sean archivos de dato en formatio binario, o el propio archivo ejecutable (en PC un .EXE o .COM). Si se trata de un videojuego de consola esto será buscando en el interior de la imagen ROM del juego, si se trata de consola basada en cartuchos, o de la imagen ISO del CD, si se trata de una consola basada en discos compactos.

Problemas derivados de la traducción en ROM o archivo binario

Para tal fin, el traductor ha de valerse de herramientas informáticas tales como editores hexadecimales, editores de teselas, o gráficos en mosaico, y otro tipo de herramientas de tipos semejantes.

Esto podría no ser fácil: a menudo los textos de no pocos juegos utilizan tablas de caracteres no estándares, es decir, no ASCII, que no siguen la codificación alfabética internacional definida por el estándar ASCII. Esto es frecuente en consolas ─siéndolo en ordenadores en muy menor grado─, en cuyo caso el traductor deberá localizar algunos textos sin conocer la tabla de caracteres de antemano, y descifrar a partir de ello los fragmentos o caracteres restantes. Añadidamente, la tabla de caracteres de un juego podría no ser una sola, sino varias, empleadas para distintas funciones, tipos de texto o partes.

Éste es el caso, por ejemplo, del Final Fantasy III norteamericano de Super Nintendo, cuyos caracteres alfabéticos para los textos de ciudad y campo comienzan en 20 hexadecimal, 32 decimal para "A" mayúscula, y en 3A hex., 58 dec. para "a" minúscula, en lugar de hacerlo en 41h (65) y 61h (97) respectivamente, como sería en ASCII. Además de ello, FF3EEUU utiliza una tabla de códigos diferente para los textos de combates y menúes, y para los textos de ciudad o campo.

En otros casos el juego se limitará a emplear la tabla de códigos estándar ASCII, como puede ser el caso de The Immortal, de NES, la totalidad de cuya página de códigos se encuentra enteramente codificada siguiendo el estándar ASCII, incluso aunque los gráficos de cada caracter no aparezcan ordenados en la ROM siguiendo tal orden. Otros juegos codifican sus caracteres principales alfanuméricos siguiendo la codificación ASCII, pero no así sus caracteres especiales.

Puede ocurrir, además de eso, que un determinado juego con gran cantidad de texto utilice algún sistema o algoritmo de compresión para almacenar buena parte del mismo, como por ejemplo el sistema DTE. Éste es un sistema de compresión de aquellas parejas de caracteres más frecuentes en el texto de un juego, codificadas como un solo carácter: buenos ejemplos de ello son Final Fantasy II y III estadounidenses, de SNES, o mismamente Final Fantasy I de Nintendo norteamericano.

En caso de que el traductor se tope con este problema su dificultad para encontrar cadenas de texto representativas o palabras clave aumentará de forma mayúscula, debiendo realizar búsquedas al azar de fragmentos de palabras raros y poco usuales en el idioma, así como trozos de texto en letra mayúscula, mucho menos usual. Otra alternativa será tratar de localizar manualmente la tabla DTE, si se conoce su posición en ROM o archivo binario.

Un problema de no menor importancia será añadir a la ROM o ejecutable las tipografías o fragmentos gráficos para los caracteres especiales que requiere, para su correcta ortografía, el idioma castellano, o cualesquiera sean los idiomas de destino a que la obra vaya a ser trasladada. Esto se hará editando los gráficos dentro del juego, con un editor de teselas o fragmentos gráficos en mosaico, y localizando los gráficos de la tipografía utilizada por el texto en el juego dentro de la ROM o archivo, para modificar aquellos caracteres que sean poco usuales o nunca sean utilizados y sustituirlos por la letra o signo especial dado. A partir de ese momento, se utilizará el código de dicho signo no utilizado para escribir en el juego el caracter especial añadido.

Por si fuera poco, puede ocurrir que una parte de los propios gráficos del juego, incluidas las tipografías de letra, estén comprimidos dentro de la ROM, con lo que será necesario identificar el algoritmo de compresión y hallar una aplicación descompresora o, si no existiera, crearla.

Además de esto, si durante la traducción de una cadena de texto, el equivalente traducido no cupiera en el espacio original, probablemente haya que modificar la tabla de punteros que especifican al programa la dirección de cada cadena de texto en ROM o en el ejecutable, modificándolas manualmente a nuevos valores.

Elementos todos estos de complejidad que pueden ir acumulándose, hasta hacer de dicha traducción y proyecto que requiera adquisición de conocimientos previos que no se poseen y que tienda a prolongarse en el tiempo hasta ser completado.

Es la razón por la que decidí empezar en mis labores de traducción ROMhack por juegos que contenían poco texto, para luego ir dando paso a títulos cuya cantidad de texto total tendía a ir incrementándose con cada nuevo proyecto, hasta llegar a un proyecto tan ambicioso y extenso como Final Fantasy VI en español.

A continuación citamos y ponemos a disposición del público nuestros principales trabajos realizados y publicados hasta la fecha, por cortesía de Traducciones Crackowia.™

Listado sintético de traducciones

Expandir listado...

Aladdin (MD)

Alex Kidd in Miracle World (SMS)

Blackthorne (SNES)

Battletoads in Battlemaniacs (SNES)

Bahamut Lagoon (SNES) (NUEVO) (enlace alternativo)

Chrono Trigger (SNES) (enlace alternativo)

Donkey Kong (ZX Spectrum)

Dragon Quest I + II (SNES)

Dragon Quest III (SNES) (NUEVO).

Dragon Warrior (NES / US).

Faxanadu (NES) (NUEVO) (enlace alternativo)

Final Fantasy I (NES) (NUEVO) (enlace alternativo)

Final Fantasy II US / IV (SNES) (NUEVO) (enlace alternativo)

Final Fantasy VI / III US (SNES) (enlace alternativo: FF6 / FF3 US)

Final Fight 1 (SNES)

Final Fight 2 (SNES)

Flashback (MD / Gen)

Flashback (SNES)

King of Dragons (SNES)

The Immortal (NES)

Jurassic Park (MD)

Mega Man IV (conversión de NES a SNES) (NUEVO)

Metroid (NES)

Mickey Mania (MD)

Shadow of the Beast (SMS)

Las Tortugas Ninja IV - Turtles in Time (SNES)

Space Gun (SMS)

Super Mario Bros. (NES)

Worms (SNES)

Instrucciones de aplicación de parches

Las traducciones listadas se distribuyen no en formato de ROM ya traducida, sino de parche, a fin de evitar trabas legales, ya que sólo es de nuestra autoría y propiedad intelectual la obra derivada de la ROM original, que se reduce a las diferencias entre ésta y la versión traducida.

Para aplicar el parche necesitaréis descargar una de las siguientes utilidades aplicadoras de parches: SNESTOOL, para MS-DOS ─ejecutable desde DosBox en sistemas operativos modernos─, o LunarIPS para Windows. Una vez vuestra utilidad se halle abierta, no tendréis más que

1. seleccionar la opción "Use IPS" (SNESTOOL) o "Apply Patch" (LunarIPS), y elegir vuestro parche.

2. Tras ello se os pedirá que seleccionéis la ROM no traducida a la que deseáis aplicar el parche. Escoged la ROM original no traducida del juego.

3. El programa os generará un equvialente de dicha ROM traducida.

NOTA: siempre traducimos desde ROM's con cabecera (si existen en dicho formato). Necesitaréis aplicar nuestro parche a una ROM con cabecera, si las hubiere en dicha plataforma, y no sin ella.

Herramientas de aplicación de parches

SNESTOOL para MS-DOS

LunarIPS para Windows

Tush para Windows. Permite añadir o eliminar la cabecera .SMC en ROMs de Super Nintendo. Necesario.

Herramientas emuladoras

Los emuladores son un tipo de programas que permiten emular, o simular, el funcionamiento de otra máquina en tu ordenador o dispositivo. Son necesarios para poder ejecutar juegos de sistemas antiguos en una máquina moderna, ya sea en un PC, móvil táctil o videoconsola de última generación. Es el mismo sistema que utilizan las SNES Mini y Mega Drive Mini, basadas en Android, para ejecutar cartuchos y ROM's de las consolas clásicas originales.

A continuación ponemos a vuestra disposición algunos de los emuladores que recomendamos para las principales plataformas (iremos añadiendo más paulatinamente).

Super Nintendo

ZSNES para Windows

Snes9x para Android

Snes9x para Mac OS