Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - ANZ

Páginas: [1] 2 3 ... 9 Siguiente
1
Yo cuando me puse a mirarme esta traducción estuve a punto de darme por vencido.
Había descomprimido un montón de archivos y los textos no aparecían por ningún lado.
Descarté que la compresión no fuera Lzss porque en bastantes de los archivos el primer byte era FF, algo común en ficheros comprimidos con Lzss.
Entonces, pensé que quizás también estaban encriptados. Así que, usando un DOSBox con debugger, hice un volcado de la memoria con el juego ejecutado, y en él no apareció ni una simple coma de los textos. Esto me hizo saber que los textos no estaban encriptados, pero también que el juego no utilizaba archivos con textos, sino otro sistema para mostrarlos en pantalla.
Se me ocurrió que fueran imágenes, lo probé y por fin aparecieron.

Espero como comenté, de aquí unos meses continuar con esta traducción dedicándole el tiempo que deseo darle.

2
He destripado la aventura gráfica "Heaven's Dawn" (AbandonWiki), una del listado de traducciones imposibles.
Lo curioso del juego es que no tiene archivos de texto, sino que todos los textos del juego son pequeños bitmaps, ya sean de una sola palabra o de una frase.

Aquí está la estructura del juego:
·FUENTE: FONT.M8 (Contiene los 256 caracteres Ascii). Aunque el juego la carga no parece que se utilice en ningún lugar.
La he convertido en un archivo BMP para que se puedan usar sus caracteres al modificar los pequeños bitmaps al realizar la traducción.
Algo así como hacer una carta con recortes de letras o de palabras en caso de tenerla ya de una imagen anterior.

·FICHERO LF: Contiene el listado de los ficheros que hay empaquetados dentro del fichero .ljs.
2 Bytes -> Número de ficheros que hay.
Después cada bloque tiene:
13 Bytes -> Nombre del fichero (Nombre.extensión (8.3) + terminación nula).
2 Bytes -> Tamaño del archivo.
4 bytes -> Offset del archivo en .ljs.

·FICHERO LJS: Contenedor de los archivos del juego.

·TIPOS DE FICHEROS DENTRO DE LOS LJS:
SCC -> Imagen (matriz de píxeles sólo) comprimida con Lzss.
LZS -> Imagen (matriz de píxeles sólo) comprimida con Lzss.
TAB -> Paleta RGB de 256 colores reducida sus valores a un 25% o paleta de 6 bits (para valor correcto multiplicar por 4). Sin comprimir.
LCC -> ?. Comprimido con Lzss.
LZL -> ? o igual LCC ?. Comprimido con Lzss.
ACT -> Acciones. Sin comprimir.
SPE -> ?. Sin comprimir.
AD -> ?. Sin comprimir. (Sólo hay uno en "HDSPE.LF" llamado "MYSELF.AD").
XMI -> Música midi.
SND -> Sonido.
VOC -> Voces.

PARA FICHEROS SCC/LZS (en algunos de ellos es donde están los textos):
2 Bytes -> Ancho imagen.
2 Bytes -> Alto imagen.
2 Bytes -> Tamaño de la imagen comprimida.
Bloque del tamaño del valor anterior -> Imagen.

·ARCHIVOS .LF y .LJS DONDE ESTÁN LOS TEXTOS:
BEFNTE (41 imágenes) (Son las 2 introducciones), INFNTE (8 imágenes) (Menú inicio), HDFONTE (1502 imágenes) (Textos del juego), ENDFNTE (35 imágenes) (Epílogo), ENDE (13 imágenes) (Créditos).

He hecho 2 herramientas para extraer las imágenes a PNG y para reinsertarlas una vez modificadas.
Dejo enlace para su descarga: Herramientas Heaven Dawn
He incluido el código fuente en C comentado. A mí en los lejanos finales de los 90, principios del 2000, una de las cosas que me ayudo a aprender a programar cosas no muy complicadas fue ver código comentado. Los archivos míos son: Extractor.c, Png.c, Png.h, Rehacer.c, y Png2.c.
Los demás son de la librería zlib excepto Lzss.c que he sacado de la herramienta Lzstool que adworgen me hizo para la traducción de Secret Mission en 2025. Así que, de nuevo le doy las gracias a adworgen por ese código, que además reavivó mi interés por la programación después 20 años olvidada.
También he añadido en esta descarga el archivo de la fuente que como he dicho antes he convertido en un archivo BMP.

De momento no activéis este post en el apartado de traducciones finalizadas o en proceso, pues como indico en el encabezado es  solamente informativo.
Quizás a finales de este año o principios del próximo pueda ponerme plenamente con la traducción. Si no fuera así, creo que con la información y las descargas que dejo alguien que esté interesado en traducir este juego podría llevarla a cabo.

Pongo un enlace para un portable del juego donde podéis ver traducidos como botón de muestra la primera introducción, el menú de inicio y la introducción tras empezar un nuevo juego: Portable DOSBox Heaven Dawn


3

para la barra invertida he utilizado el código 7F modificando font03.bin y añadiendo "/" en el png. En principio todo funciona correctamente.

Para ANZ ¿sabes porque el programa para desensamblar no me reconoce el string si lleva ese código?


Editaste font03.bin para que el juego cuando leyera el código 7F mostrará la "/" que dibujaste en font03.png.
Sin embargo. el desensamblador usa la tabla de caracteres Ansi y en ésta el código 7F está vacío y por eso no te aparece la cadena en el desensamblador. Deberías editar font03.bin para usar por ejemplo, el código 24. Entonces, ya verías en el dsensamblador la cadena que te aparecería como "Guardar$Cargar Juego".

No obstante, para no marear más a pakolmo y que tenga que subir una nueva versión de la traducción lo dejaría como está, pues en el juego ya está bien y es únicamente cosa del desensamblador.

4
Lo de "Autoguardado" como comenté en un mensaje anterior cuando probé de poner "Auto guardado" no es que no salga la "o", es que ésta monta encima de la imagen de la derecha (la captura que muestra el momento guardado).

Ahora bien, por curiosidad he mirado el código un poco más y hay una instrucción (push 52) unas pocas líneas más arriba de la instrucción de longitud de la cadena. Así para que salga bien al poner "Auto Guardado" o "Auto guardado", hay que hacer lo siguiente:
1. Poner una de esas dos cadenas en sustitución del "AutoSalvar" que hay ahora, empezando desde la misma posición y así no hace falta modificar el puntero. Veréis que la nueva cadena queda pegadita a "Ok" pero no pasa nada.
2. En el offset 3EBA5 cambiar el valor 0A por 0D, que es el tamaño de la nueva cadena.
3. En el offset 3EB9A cambiar el valor 52 por 48, que hará que la cadena se muestre más desplazada a la izquierda en pantalla.

Si os gusta más "Autoguardado", entonces, en vez de 0D hay que poner 0C, y en vez de 48 hay que poner 4D.

En cuanto a que no te reconozca en el desensamblador la cadena con el código 7F,  todavía no lo he mirado. Ya te diré algo muermo.

Adjunto una imagen para mostrar como queda "Auto Guardado".

5
No encuentro dónde hay que cambiar esto en el EXE. Hazme los honores, ANZ. Sobre el EXE ampliado.

Debes abrir el Bingwood.exe ampliado con un editor hexadecimal e ir al offset o dirección 67EF8 y sustituir el valor que haya en ese byte por el nuevo que indicó muermo (7E).

¿Como has llegado hasta el offset 67EF8?

Había que buscar en el ejecutable un "<" suelto, pero si lo buscabas en todo el archivo te aparecían un montón. Entonces, como los archivos ejecutables se dividen en secciones de código, datos y otras cosas menores, acoté la búsqueda sólo en el de datos. Esto redujo bastante los posibles candidatos a ser el "<" a cambiar. Luego tuve suerte y el primero posible resultó ser el correcto.

P.D. Si quieres saber dónde empiezan las diferentes secciones de un archivo ejecutable de Windows (archivo PE) puedes usar un informador de archivos PE o un PE Editor. También puedes saberlo con el desensamblador que incluí en el tutorial.

6
Dejo el tutorial para modificar punteros asociados a cadenas de texto. Incluye el Bingwood.exe original en inglés puesto que se utiliza en las explicaciones y un desensamblador pequeño pero resultón para esta tarea.

Tutorial Punteros a Cadenas de Texto

7
Citar

¿Vas a querer que subamos las instrucciones junto a la traducción?

No creo que sea necesario. Dejaré activo el enlace de descarga al tutorial y así quien quiera bajarse sólo el tutorial no tendrá que descargarse la traducción entera.

8
Al final ha ido mucho más rápido de lo que me esperaba.

Dejo el enlace para los 2 ejecutables definitivos, tanto el que mantiene el tamaño original, como el que he ampliado al poner al final las frases "Texto Automático" que sustituye a "Auto-Texto" y "Escribe un nombre: que sustituye a "Tu nombre:".

Os dejo a vuestro criterio usar el que más os guste. De todos modos antes de usar el ampliado sería prudente hacer primero un testeo de principio a fin, por si las moscas.

También he dejado en la pantalla para poner el nombre que aparezca ">" que es parecido al "<" original. Si queréis poner otro o poner un espacio en blanco para que no salga nada, debéis modificar el byte que hay en el offset 67EF8.

De aquí a unos días espero subir el mini tutorial.

Enlace: https://www.mediafire.com/file/v9640g4z755idq1/BingwoodEXE.zip/file

9
Todos los cambios realizados. También los de los créditos. Aunque solamente eran los créditos del final, los de inicio ya los había hecho todos muermo.

Ahora probaré lo de poner al final del EXE las 2 frases que no cabían. Tanto si funciona como si no, creo que no me ocupará mucho tiempo. Así posiblemente subiré el EXE definitivo mañana o pasado mañana.

10
Ok pakolmo. Y cierto ese tu va sin acentuar, error mío.

Ya he puesto "Hadas" en la lista de ingredientes en vez de "Hada". Aquí también he cambiado "cup" por "taza".
Faltaría "pinch" por "pellizco" o "pizca". Yo creo que usamos más esta última.

11
Cambios aplicados excepto las siguientes dudas:
1. "Escribir nombre:" no puede ser porque sólo permite como máximo 12 caracteres. Yo había pensado poner "Tu nombre:".
2. "Auto guardado" cabe pero el "do" final queda dentro de la imagen. Tendría que ser "Autosalvado" aunque no es muy ortodoxo; o dejarlo sin traducir, o otra palabreja que sirva pero de no más de 11 caracteres.
3. "Texto automático" no cabe. Debe ser un máximo de 14 caracteres. Yo había pensado "No pausa texto" o lo que dijo pakolmo "Auto-Texto".

Cuando ya tengamos el ejecutable final, probaría de meter esas cadenas que no caben al final del ejecutable para ver si las acepta. Pero primero tengamos un ejecutable que ya nos parezca bien.

Vale muermo, miro lo del Hongo también.

12
Vale, miraré los que son posibles de hacer.

Lo de la "á" que sale al escribir el perfil ya lo tengo arreglado. He puesto ">." Al principio había puesto "-", pero personalmente me gustó más ">" que además se parece al "<" que salía en el original en inglés.  Aunque si se puede cambiar lo de "Héroe" por  "Escribir nombre" como menciona muermo, también se podría poner un espacio en blanco para que no salga nada.

También ya puse lo de "Nuevo", pues era la única traducción posible.

La verdad es que ya partía con ventaja, ya que es algo que probé en la traducción de Willy Beamish para poder traducir "MUSIC" por  "MUSICA". Aunque  en ese juego la cosa era algo más fácil pues sólo hacía falta modificar el puntero y para nada la longitud de la cadena.
No obstante al final, como únicamente era esa palabra use otro método. Metí la I y la C juntas (IC) en un carácter de la fuente no usado por el juego, y usé ese carácter para la C de la palabra inglesa. Así toqueteaba lo menos posible el ejecutable.

13
¿Has comprobado si el ejecutable está comprimido?

Por aquella época era lo normal debido a las limitaciones de espacio.

Puedes usar unp.exe para saberlo. Y si lo está, también te lo descomprimirá casi seguro.

14
Parece que la cosa será posible.

Dejo un ejecutable de muestra en el que he modificado Rename por Renombrar.
https://www.mediafire.com/file/kkf7olcqv0okovs/BingEXE.zip/file

Veréis que he cambiado el offset 3F14B de 06 a 09. Este es el valor para la longitud de la cadena de texto.
Y también el offset 3F157 de 48 9B 46 a 46 9B 46. Este es el puntero a la cadena desplazado 2 bytes a la izquierda, que son los bytes que me he desplazado para colocar Renombrar.

Antes de continuar con los otros textos, quisiera preguntar cómo queréis que los traduzca. Yo he visto los siguientes:
Back -> Volver o Atrás.
New -> Nuevo.
Fullscreen -> ? o no traducirlo.
Auto-Text -> ? o no traducirlo.
Auto-Save -> ? o no traducirlo.

No sé si hay alguno más que no he visto.
Hay que tener en cuenta que mantengo el tamaño del ejecutable (aumentar un EXE por en medio es una tarea muy difícil, casi imposible), así que quizás alguna traducción de esos 3 dudosos no sea posible, a menos que se pudieran colocar al final del ejecutable, tomando esto con muchas reservas.

Al acabar subiría junto al nuevo EXE un pequeño tutorial explicando los pasos que he seguido. El proceso no es complicado, lo difícil será que lo explique bien ya que es algo liado de explicar o quizás es que yo soy torpe a la hora de explicar cosas.

15
Ningún problema, lo miraré. Aunque en los ejecutables es complicado, por mirarlo que no quede.

Páginas: [1] 2 3 ... 9 Siguiente