Romxhacking Romxhacking
- Nasío pa'jakear -
 
 F.A.Q.F.A.Q.   BuscarBuscar   Lista de MiembrosLista de Miembros   Grupos de UsuariosGrupos de Usuarios   RegístreseRegístrese 
 PerfilPerfil   Identifíquese para revisar sus mensajesIdentifíquese para revisar sus mensajes   ConectarseConectarse 


Menú principal
Portal
Foros
F.A.Q.
Buscar
Lista de miembros
Grupos de usuarios
Perfil

Usuario
Nombre de Usuario:

Contraseña:

 Recordarme



He olvidado mi contraseña

¿Aún no tiene su cuenta?
Puede registrarse Aquí, es GRATIS.


Anuncio del administrador
No pretendemos solucionar todos los problemas ni ser referencia de nada, simplemente nos reunimos aquí para charlar de nuestras cosas.
NO SE RESPONDERÁ A NADA POR PRIVADO, QUE EL FORO ESTÁ PARA ALGO

Summon Night - Swordcraft Story
Ir a página Anterior  1, 2, 3  Siguiente
 
Publicar Nuevo Tema   Responder al Tema    Romxhacking -> Dudas y Preguntas
Ver tema anterior :: Ver siguiente tema  
Autor Mensaje
Wastor



Sexo: Sexo:Hombre
Registrado: 16 Jul 2011
Edad: 105
Mensajes: 95
Estado: Offline
MensajePublicado: Sun Oct 07, 2012 6:53 pm    Título del mensaje: Responder citando

carloscass1994:

No quería desanimarte, sólo que si empiezas a descartar por las dificultades, en casi cualquier juego hay cosas que te impedirán poner un gráfico como te gusta, una tabla de punteros que no es la que viene en el tutorial de Menganito... Te animo a que lo pelees tú, seguramente uno no tan puñetero, pero de verdad que sí te gusta anímate a aprender algo de programación básica para extraer...

gadesx:

Sí, y no siguen un patrón del tipo estar a una distancia fija detrás del texto... Aunque comparando con el japonés si se ve cuales son los que cambian pero pretendo hacerlo masivamente... En fin, estas pequeñas victorias son las que motivan. Si hay que dejarlo un año más en el cogelador a ver si mi mente lo digiere se deja.
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
CUE
Administrador
Administrador


Sexo: Sexo:Hombre
Registrado: 24 Jan 2011
Mensajes: 5435
Estado: Offline
MensajePublicado: Sun Oct 07, 2012 7:38 pm    Título del mensaje: Responder citando

Pon un ejemplo para ver cómo son esos códigos, o un fichero con la tabla de conversión para ver si otros pueden sacarlo.
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
Wastor



Sexo: Sexo:Hombre
Registrado: 16 Jul 2011
Edad: 105
Mensajes: 95
Estado: Offline
MensajePublicado: Mon Oct 08, 2012 1:10 pm    Título del mensaje: Responder citando

Me encomiendo a la divina providencia:

Aquí

Estos son los archivos principio de juego, no me ha dado tiempo de mirar gran cosa, pero como no entiendo los códigos salvo quienes son he decidido primero sacar los personajes, lo agrego a la tabla y andando. Casi seguro que hay cadena de cada personaje y su expresión (es decir, una imagen) y el letrero en el cuadro de diálogo (su nombre). En lo subido pues he puesto versión japo e inglesa para comparar que siempre lo he encontrado útil en estos líos.

Lo que sé de estos archivos es que en la cabecera, los hexadecimales x04 y x05 nos dan la longitud del fichero. Por ejemplo, 1600.bin.decompressed es x0910.

Los textos van precedidos de x1802. Y acabados en x00001902

Comparando con la versión inglesa y japonesa del 1600, pues lo que va cambiando es (visto en la inglesa):

Dirección en la inglesa:--------En jap pone:---------En inglés pone:
x92 ------------------------------ xB6 ----------------- xB0
xC4 ------------------------------ xD6 ---------------- xDC
xEA ------------------------------ xD6 ---------------- xDC
x318 ----------------------------- xF802 -------------- x5603
...

Si sirve de algo para que no haya que bajarse el juego, pongo las imágenes secuencia del principio del juego:

http://www.mediafire.com/?57jm7e7wb17qs95

Yo tabla no uso porque pongo codificación japonesa en el CrystalTile2.
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
CUE
Administrador
Administrador


Sexo: Sexo:Hombre
Registrado: 24 Jan 2011
Mensajes: 5435
Estado: Offline
MensajePublicado: Mon Oct 08, 2012 1:53 pm    Título del mensaje: Responder citando

Manda huevos, si son los archivos PSI3. Esos mismos los sacaba del "Summon Night: Twin Age" de DS, aunque no me metí mucho con ellos, y algo hay en http://romxhack.esforos.com/post2844 donde se menciona incluso tu nombre (esto de la publicidad hay que empezar a cobrarlo, o en cervezas o en carne, tú eliges).

A simple vista parecen eventos, y hay que interpretar todos los códigos para saber dónde hay punteros o dónde empiezan los textos. Lo que para ti son 0x0218 y 0x0219 (los pongo al revés, date cuenta), en la DS son 0x0427 y 0x0428, que puede que indiquen "abrir ventana de diálogo" y "cerrar ventana de diálogo", o algo similar. El 0x0000 es el que indica el final de la frase y que se pulse un botón para continuar. Eso, la cabecera, y que los textos van en SJIS, es todo lo que sé.

La cabecera son los 16 primeros bytes:
- 4 bytes con "PSI3"
- 4 bytes con la longitud (no dos, como dices)
- 8 bytes a cero, seguramente para ajustar a un múltiplo de 16

Luego va el mogollón, que parecen ser valores de 16 bits, y hay que interpretarlos.

Si te fijas al comparar las versiones JAP y USA, en el primer texto del primer fichero, la USA tiene 6 bytes más que la JAP, que son esos 6 bytes de diferencia que encuentras.

No sé si será casualidad o no, pero esos valores están precedidos por 0x02 y 0x03, que puede que sean opcodes, y el valor que cambia algún offset.

Puede que también sea casualidad, pero mirando siempre valores de 16 bits y no de 8:
- 0x00B6 --> miramos en 0x10 de la cabecera + 0x00B6, donde aparece 0x0130
- 0x00DC --> miramos en 0x10 de la cabecera + 0x00DC, donde aparece 0x0230
Ya es casualidad que salgan números "similares". Habría que mirar en más ficheros para ver si es alguna pauta.
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
Wastor



Sexo: Sexo:Hombre
Registrado: 16 Jul 2011
Edad: 105
Mensajes: 95
Estado: Offline
MensajePublicado: Mon Oct 08, 2012 2:38 pm    Título del mensaje: Responder citando

Efectivamente, esa diferencia de hexadecimales en 6 y que coincide lo noté, por eso sé que la clave es interpretar correctamente los códigos que hacen que salgan elementos en pantalla para saber sobre todo el lugar, porque lo que me mosquea es no poder predecir en qué lugares estarán los "punteros" (todavía).

Gracias por hacerme notar lo de los múltiplos, iré diciendo si tengo avances.
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
carloscass1994



Sexo: Sexo:Hombre
Registrado: 06 Dec 2011
Edad: 24
Mensajes: 185
Estado: Offline
MensajePublicado: Wed Oct 10, 2012 1:27 am    Título del mensaje: Responder citando

Si que me gustaria aprender a programar, extraer, insertar, pero medio flojo para aprender Sad
al parecer que mejor dejo el summon night en tus manos wastor, pues por lo visto ya tenes bastantes avanses en el.

¿que? ¿cue ese programa que dejaste en el otro topic del summon night de DS sirve para todos los demas, para este tambien (como dices que son los mismos psi3) , o solo para el de DS?

Hey wastor, muy bueno esos archivos, solo entendi lo de "principio del juego" al ver las imagenes Laughing

bueno, perdon por el mensaje tan simplon.
_________________
Traducciones que espero algun dia terminar

Megaman X4 PC - lento pero algun dia la termino
Final Fantasy 2 PS1 - ni yo se que sera de este
Volver arriba
Ver perfil del usuario Enviar mensaje privado   Visitar sitio web del autor MSN Messenger
Wastor



Sexo: Sexo:Hombre
Registrado: 16 Jul 2011
Edad: 105
Mensajes: 95
Estado: Offline
MensajePublicado: Wed Oct 10, 2012 12:19 pm    Título del mensaje: Responder citando

Justo por lo que ha dicho que cambian algunas cosas, no sirve tal cual. Compara los PSI3 del de NDS y los que he subido yo, ya verás como no son tan amables en este caso.

Sigo dándole vueltas pues creía que los textos (los que no son del protagonista porque es bipolar al tener dos personajes posibles) seguían esta estructura:

<<Amariss>>
<RELLENO1><LINEA>
That looked like it hurt!/00/00<FIN>
/18/02Are you alright?/00/00<FIN>
<<Amariss>>

Esto ha sido simplemente dumpeo puro y duro para ir aislando cosas con una tabla... Cuando hay alternativas de respuesta no es tan amable la estructura, aunque es parecido a un sandwich con rebanadas diferentes, intentas cerrarlas en orden inverso, como los códigos [ b ]texto en negrita[ /b ]... Por eso te digo que sin ponerte por tu cuenta e intentarlo, jamás sacarás esto, pues aquí has de equivocarte muchas veces para ir descubriendo el patrón. Y cojo y sustituyo los hexadecimales que me indican Amariss (la madre) y los cambio por los del protagonista y el juego que es muy majete me muestra el cuadro de diálogo sin nombre alguno (lo cual es correcto, al principio del juego no tienes nombre) pero me muestra en la esquina superior izquierda un bonito martillo que no debería estar ahí... No me molesta demasiado pero es algo imprevisto.



Así que lo siguiente que haré en avanzar en el juego un rato y sacar los nombres de algunos más y a ver si saco más cositas como los bocadillos que salen de puntos suspensivos e interrogación, que quizás estén en el código deambulando y lo que vaya descubriendo me encaminará a lo que se modifica y porqué (espero).
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
CUE
Administrador
Administrador


Sexo: Sexo:Hombre
Registrado: 24 Jan 2011
Mensajes: 5435
Estado: Offline
MensajePublicado: Wed Oct 10, 2012 12:25 pm    Título del mensaje: Responder citando

Ya te he dicho que parece que son eventos, y habrá que saber los opcodes de todos y su longitud. Algo parecido hice con los Phantasy Star Generations para sacar los textos, tuve que ir analizando todo lo que había y probando longitudes hasta que lo saqué todo.
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
carloscass1994



Sexo: Sexo:Hombre
Registrado: 06 Dec 2011
Edad: 24
Mensajes: 185
Estado: Offline
MensajePublicado: Wed Oct 10, 2012 11:50 pm    Título del mensaje: Responder citando

Cita:
pero me muestra en la esquina superior izquierda un bonito martillo que no debería estar ahí... No me molesta demasiado pero es algo imprevisto.

a cosas raras que pasan durante la traduccion (o profundo estudio) de un juego Laughing

Cita:
Ya te he dicho que parece que son eventos, y habrá que saber los opcodes de todos y su longitud. Algo parecido hice con los Phantasy Star Generations para sacar los textos, tuve que ir analizando todo lo que había y probando longitudes hasta que lo saqué todo.

Aver si entendi bien, ¿eventos junto a cuadros de dialogo? Confused
_________________
Traducciones que espero algun dia terminar

Megaman X4 PC - lento pero algun dia la termino
Final Fantasy 2 PS1 - ni yo se que sera de este
Volver arriba
Ver perfil del usuario Enviar mensaje privado   Visitar sitio web del autor MSN Messenger
CUE
Administrador
Administrador


Sexo: Sexo:Hombre
Registrado: 24 Jan 2011
Mensajes: 5435
Estado: Offline
MensajePublicado: Thu Oct 11, 2012 8:06 am    Título del mensaje: Responder citando

Eventos es todo lo que pasa en el juego. Ahí se dice que se mueva el personaje a la derecha, que mueva la cabeza, que hable, ...
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
Wastor



Sexo: Sexo:Hombre
Registrado: 16 Jul 2011
Edad: 105
Mensajes: 95
Estado: Offline
MensajePublicado: Thu Oct 11, 2012 10:11 am    Título del mensaje: Responder citando

Sí, tiene toda la pinta de eso. Sí, carloscass1994... es que has ido a dar con el juego más sencillo que había. A mí ya me está doliendo la cabeza... Bueno, básicamente lo que estoy haciendo es observar el juego e ir acotando chorizos (varios) de hexadecimales y buscando similitudes en distintas franjas del juego.

Me explico (por si alguna vez te ves con uno de estos, que haberlos haylos, en Nintendo Ds está el Touch Detective por decirte alguno que sea más reciente):

1.- Todos los trozos de texto vimos que empiezan con 0x1802 y acaban con 0x1902. Uno podría pensar que más bien acaba en 0x001902 pero al coger varios archivos ves que no es tan así, así que lo dejamos tal como está.

2.- Bueno, ahora que sabemos que lo que hay ahí son textos, en lo que queda debe haber ciertos hexadecimales que digan: se muestra el cartel con el nombre, qué nombre mostrar, se mueve el monigote... ¿cómo hacerlo? Comparando y para eso mientras se juega pues se puede ver quien dice cada cosa. Y así sacas los hecadecimales del/de la protagonista y otro que es "segundo interlocutor"... y avanzando en el juego ves que hay más variantes inesperadas, por eso has de mirar varios.

3.- Hecho eso, y agrupando algunos chorizos homogéneos sin saber qué son por comodidad, se ve al convertir cierta homogeneidad (que es lo que te mostré en la anterior respuesta).

4.- Pues a partir de ahí buscas otros patrones fáciles, sobre todo cadenas cortas entre diálogos de distintos personales y con el juego delante pues ves qué cambios hubo de uno a otro. Yo por ejemplo cogí uno que cambia la expresión del protagonista, así que evidentemente en ese trozo debe estar las instrucciones que cambian de una imagen a otra. Para confirmarlo busco en el juego otros momentos que sean exactamente iguales y lo añado.

Y en fin, espero que en el camino descubrir cómo van los hexadecimales que cambian de una versión a otra, porque no pretendo hacer una reversión del muñeco meneándose por la pantalla.
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
CUE
Administrador
Administrador


Sexo: Sexo:Hombre
Registrado: 24 Jan 2011
Mensajes: 5435
Estado: Offline
MensajePublicado: Thu Oct 11, 2012 10:17 am    Título del mensaje: Responder citando

También hay que contar los saltos de alegría que se dan cuando por fin se resuelve el misterio de los opcodes mientras los nietos te miran asombrados pensando que ya chocheas, pero eso dura poco y enseguida vuelven la cabeza para seguir jugando con su Play Station Virtual XIII, que la XBOX-3D 19200 les aburre un poco.
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
carloscass1994



Sexo: Sexo:Hombre
Registrado: 06 Dec 2011
Edad: 24
Mensajes: 185
Estado: Offline
MensajePublicado: Thu Oct 11, 2012 5:09 pm    Título del mensaje: Responder citando

Pues si, di con el mas facilon, pero este almenos tiene esperanza, porque al ver como conseguiste con todo, me dan ganas de entrarle al Castlevania 64, pero hasta donde recuerdo cue me hablo de texto comprimido en diablito rebuelto en eso juego.

Cita:
Y en fin, espero que en el camino descubrir cómo van los hexadecimales que cambian de una versión a otra, porque no pretendo hacer una reversión del muñeco meneándose por la pantalla.


menos mal que aclaras esto, pues ya desia yo que cambiarias la sonrisita de un personake por la de otro Laughing

una curiosidad que tengo, para que carajos son esas herramientas que traen muchos emuladores, en este caso tomo de ejemplo el vba, que trae un visor de memoria, oam, paleta, recuadros, etc
hasta ahora veo que solo ayudan a extraer graficos pa cosas como un maker de juego, pero no mas utilidad.

es decir, no se puede utilizar algo como el visor de recuadros pa conseguir los textos y su valor de manera mas comoda y segura?

probe y se muestran en el visor ¿pero nose si existe algun modo de tomar los resultados y traducirlos a la tabla?
bueno las capturas hablan mejor






por ejemplo el codigo ese que da el visor en que se relaciona al de la tabla?

por sierto, la segunda imagen muestra los textos de personajes (despues de elije information, esta desordenado pero es eso) solo por si ayuda en algo Razz
_________________
Traducciones que espero algun dia terminar

Megaman X4 PC - lento pero algun dia la termino
Final Fantasy 2 PS1 - ni yo se que sera de este
Volver arriba
Ver perfil del usuario Enviar mensaje privado   Visitar sitio web del autor MSN Messenger
CUE
Administrador
Administrador


Sexo: Sexo:Hombre
Registrado: 24 Jan 2011
Mensajes: 5435
Estado: Offline
MensajePublicado: Thu Oct 11, 2012 5:38 pm    Título del mensaje: Responder citando

Eso es tal y como lo tiene la consola en memoria, en cada una de sus partes. Los numeritos son precisamente las direcciones de memoria, que en el caso de los grafiquitos corresponden a distintas zonas de la memoria de vídeo. Si usas la pésima traducción del emulador no te enteras de nada. Eso de "recuadro" es el número de tile del gráfico, que no está desordenado. Se graba así porque ocupa menos, dividiendo varias imágenes originales en trocitos (tiles) para aprovechar al máximo posible la memoria de vídeo ya que es limitada y no se puede cargar todas las cosas que se quieran en ella.

En otras consolas, como GB y NES (seguro que ahí lo aprovechas) puedes sacar esas pantallas con la fuente y suele ocurrir que el número de tile es el código de carácter, lo que simplifica las cosas a la hora de hacer la tabla, sin tener que estar haciendo búsquedas ni tonterías. A veces hay que sumar una constante al valor del tile, pero al menos ya sabes que la tabla tiene que tener los caracteres en el mismo orden que los ves en la ventana. Es otra de las numerosas cosas que no te enseñarán los manuales.
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
Wastor



Sexo: Sexo:Hombre
Registrado: 16 Jul 2011
Edad: 105
Mensajes: 95
Estado: Offline
MensajePublicado: Wed Oct 24, 2012 10:03 am    Título del mensaje: Responder citando

Ya he descifrado el tema de los eventos, lo he probado en al menos cinco y la cosa marcha. Como indicaba sólo había unos cuanto hexadecimales que cambiaban y el juego los utiliza para alternativas de diálogo y poder saltarse trozos.

¿Le interesa a alguien que comente cómo funcionan?

(Gracias CUE por hacerme notar lo de la cabecera).

En fin, lo explico por encima vaya que dependa de ello la vida de alguien y yo deje de participar en el foro porque me hice rico y pase del tema.

Primero lo que hay es un "indicador" de estas alternativas en los diálogos que es: 0xSSTT0200400001000008B000000, donde 0xTTSS + 0xF (el tamaño de la cabecera) te lleva a un puntero de la forma 0x0300XXYY, donde 0xTTSS + 0xF señala de hecho a YY. Pues bien, si ahora haces 0xYYSS + 0xF te lleva exactamente a uno que pone justo el de antes, 0x0300XXYY. Y mirando con diálogos te das cuenta de lo que dije, que al haber dos personajes, están ahí los diálogos y alguna cosa más. Y así sucesivamente se buscan más "indicadores" que van acompañados por dos punteros.

No sé si esto será verdad universal para este juego, pero lo cierto es que al programar una rutinilla de actualización de estos valores pues el juego rula:




En fin, ahora a seguir programando un extractor de todo el texto del juego, qué pereza... Veremos si no acaba en la nevera un par de semanas.
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
Mostrar mensajes anteriores:   
Publicar Nuevo Tema   Responder al Tema    Romxhacking -> Dudas y Preguntas Todas las horas están en GMT + 1 Hora
Ir a página Anterior  1, 2, 3  Siguiente
Página 2 de 3

 
Saltar a:  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas

Temas Relacionados
 Temas   Respuestas   Autor   Lecturas   Último Mensaje 
No hay mensajes nuevos Se puede editar algo del Legend of heroes trails in the sky? 1 gadesx 1628 Thu Apr 16, 2015 8:08 pm
CUE Ver último mensaje
No hay mensajes nuevos ¿Este programa puede servir para algo? 2 gadesx 2075 Sat Sep 21, 2013 8:22 am
CUE Ver último mensaje
No hay mensajes nuevos Algo para este "formato"? 3 cralso 2353 Tue Aug 20, 2013 7:53 am
CUE Ver último mensaje
No hay mensajes nuevos Light Crusader o algo 10 gadesx 4171 Sun Aug 04, 2013 1:07 pm
Auron Ver último mensaje
No hay mensajes nuevos Intentando aprender algo de romhack 13 tchusami 5543 Sat Nov 24, 2012 11:05 am
CUE Ver último mensaje
 


Crear foro gratis - Powered by phpBB © 2001, 2005 phpBB Group
subRebel style by ktauber