La solución es muy simple, pero a la vez terriblemente complicada:
Por ejemplo en los puntos de hun... well; voy a hablar de memoria, y quizás me equivoque en los números, esos valores en hex son FF91d6, el FF es el valor que se repite generalmente cada 8 bits, que no lo podemos mover ni que queramos, y el 91d6 (al menos del 1 estoy seguro:D) es el "puntero" por no sacarle la n....
Ese puntero lo podemos dividir en 2 partes, "d69" y "1". El 1º indicaría la posición a la que dirige los textos (trabajamos en hex, acordaos de invertir valores), y no he encontrado ninguna forma directa de "convertir" el valor al del fichero (creo que es un 79e, o algo así), así que supondremos que está ligeramente modificado para dificultar aún más las cosas, la diferencia entre punteros y posición del texto a coger, se puede decir que los valores coinciden. Y el "1" indica la cantidad de letras a coger de ese puntero, siendo 0=3 letras, 1=4 letras ...y de ahí para arriba.
Sabiendo esto, habría que adaptar los textos para que modificando ligeramente el puntero (o sin tocarlo, si se es EXTREMADAMENTE bueno) se podría hacer la traducción.
El gran problema es que el inglés es un idioma bastante más pobre que el español, añadiendo de que poco a poco van usando más y más punteros llegando al extremo de con un puntero aprovechar el contenido de otro (compresión progresiva, término que me he inventado para explicar esto:p) y además, tedríamos que usar el puntero cuando el juego nos obliga; que alguien pruebe a desplazar el puntero a la derecha o izquierda, siempre dentro del bloque (entre ff y ff para entendernos) que le corresponde, esto podría ayudar, y creo que sí podría ser posible.
Posibles métodos de cargarse esto:
1ª teoría no comprobada: sustituir cada uno de los valores fijos (los ff y demás que vienen cada 8 bites) por valores FF en todos los casos, no llegaría con cambiar el 1º FE y probar, eso rompería la estructura del archivo, hay que cambiarlos todos de un golpe y de paso cargarse todas las llamadas (aka: punteros) sustitullendolo por texto normal y corriente (aunque no tenga sentido, sólo para la prueba). YA AVISO DE QUE ESTE MÉTODO ES MÁS QUE SEGURO QUE SEA UNA PERDIDA DE TIEMPO, (pero por probar que no quede)
2ª teoría no comprobada, pero muchísimo más factible: tenemos punteros, eso quiere decir que podemos poner texto donde nos de la gana, el problema, sólo tiene 3 valores, lo que nos dá un máximo de 4095 bytes, de los 170M del big. Destrozamos el big en cerca de los 1000 ficheros que contiene (y casi todos con texto:O), y ya tenemos ficheritos de entre 80K y 400K, nos vamos acercando al tamaño, pero aún demasiado grandes. Bien, cada 1 de esos ficheros está compuesto por 6 ficheros, el que nos interesa es el 6º, que es el que contiene el texto. El único que he mirado, es el del inicio (long time no see... etc), y el texto está casi al inicio de esa parte, por lo que con el puntero (y el valor tan alto que nos pone de inicio) no conseguimos llegar ni a tiros al final del fichero (8k, creo recordar), con lo cual la alternativa es añadir los datos antes del inicio, digamos que en un bloque de xxx tamaño que tendremos que crear al final del fichero nº5, para que desde el siguiente si lo alcance a leer con el puntero. Y ahora, habría que rehacer la tabla de estos 6 ficheros (con modificar el nuevo tamaño del 5º fichero ya llega), y después rehacer el bigfile.
Bien, como podeis leer, el gran problema de este juego es encontrar un traductor con el conocimiento necesario para hacer esto, y sobretodo, las ganas:)
Good luck pa quien lo haga
@ enchu21: quien tiene el programa para codificar el texto es namco, el creador del juego (ya que mandas un mail, envíalo a quien se debe hacer), tu manda mails comprometedores a sony que ya van a tener una dirección para atrapar a 1 pirata
.