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

Extracción e Inserción en textos y gráficos Devil Suvivor 2
Ir a página 1, 2, 3  Siguiente
 
Publicar Nuevo Tema   Responder al Tema    Romxhacking -> Dudas y Preguntas
Ver tema anterior :: Ver siguiente tema  
Autor Mensaje
Efniak



Sexo: Sexo:Hombre
Registrado: 27 Jun 2012
Edad: 28
Mensajes: 1
Estado: Offline
MensajePublicado: Wed Jun 27, 2012 2:43 pm    Título del mensaje: Extracción e Inserción en textos y gráficos Devil Suvivor 2 Responder citando

Bueno , para empezar es un juego de DS tengo que comentar que este juego es de la misma compañía que el "Radiant Historia" del que ya se ha hablado en este foro y según he mirado en los archivos del juego es bastante similar al "Radiant Historia".

He estado mirando el post de este en el que Skye deja una herramienta para desempaquetar y volver a empaquetar el Data.bin.
He probado pero no funciona bien , o al menos eso me pasa a mi quería preguntar si soy yo que lo uso mal el programa echo por Skye o realmente no sirve?

Por último tengo pensado traducirlo todo aunque primero me gustaría poder insertar textos en el juego antes de buscar colaboradores.

Un saludo y gracias por adelantado.
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 Jun 27, 2012 3:19 pm    Título del mensaje: Responder citando

Con lo que usé en el RH puedo sacar la esctructura de carpetas del NDX, así que parece que los ficheros tienen idéntica estructura.

El programa de Skye puede que use valores absolutos que sólo valgan para RH, y nadie mejor que ella para decírtelo.
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
Skye



Sexo: Sexo:Mujer
Registrado: 03 Aug 2011
Mensajes: 95
Estado: Offline
MensajePublicado: Wed Jun 27, 2012 3:33 pm    Título del mensaje: Responder citando

Ahora mismo no puedo probar nada, pero me parece recordar que el juego tenía el mismo tipo de archivos pero con nombre distinto: Target.bin, Target.idx, y Target.ndx si mal no recuerdo.

En efecto mi programa usa un archivo específico para el Radiant: el ndx.txt. Este archivito contiene la ruta de todos los archivos del juego, sacados del Data.ndx, usando el programa de CUE que crea la estructura de carpetas. Sólo habría que crear el mismo archivo pero para el juego este, ya que con algo de suerte el modo de encontrar los offsets a través del idx será igual. Bueno, y también habría que renombrar los "Target" a "Data".
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 Jun 27, 2012 4:00 pm    Título del mensaje: Responder citando

Además hay que ver si los textos están ahí o no. A simple vista, a no ser que estén comprimidos/codificados, no se ven, y hay muchos gráficos sin comprimir, por lo que dudo que los textos lo estén, aunque sólo es una suposición mía. En los overlays, una vez descomprimidos, hay montones de textos, en SJIS. Lo que no sé es si son únicamente los típicos de objetos/descripciones o si están todos.

Un ejemplo de lo que hay:


Sí hay textos en el BIN, también en SJIS.
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
pleonex



Sexo: Sexo:Hombre
Registrado: 21 Aug 2011
Mensajes: 68
Ubicación: Espania
Estado: Offline
MensajePublicado: Wed Jun 27, 2012 5:46 pm    Título del mensaje: Responder citando

En el BIN sí hay textos, y sí, están en SJIS.

Hace poco hice "una herramienta" para facilitar el extraer e insertar archivos de los overlays (cualquier archivo en general). Es una tontería, le pones el offset y el tamaño de la frase y te la extrae a un XML que luego se puede insertar. Lo bueno, es que por lo menos en el Ninokuni los textos de los overlays tienen como una especie de patrón y aparecen en bloques, todos juntos y ordenados por longitud por lo que con esta herramienta te saca todas las frases de un bloque (pero le tienes que poner donde comienza el bloque). En resumen, que si quieres mientras se soluciona como descomprimir el Target puedes empezar por los overlays.
Volver arriba
Ver perfil del usuario Enviar mensaje privado   Visitar sitio web del autor
CUE
Administrador
Administrador


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

La cosa de bajar: http://www.mediafire.com/?s0ndsdkzcuo5awp

Eso extrae la lista de ficheros tal y como la usa Skye (y si no es así, la culpa es de ella, eso está claro). Se junta ndx.exe con Target.ndx y se ejecuta ndx > ndx.txt. Pero como no tenía nada mejor que hacer, he hecho un bat, runme.bat (queda más bonito así que ejecutame.bat, que parece que estamos pidiendo a alguien que nos suicide), que lo hace solito. Y como me aburría he puesto el ndx.txt también. Y como no tenía ganas de nada, he metido el Target.ndx. Como aún seguía sin ganas, he puesto el código fuente. Vamos, que si pongo el ndx.txt todo lo demás hubiese sobrado, pero eso sería hacer las cosas por el método fácil, que no tiene gracia.
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
Skye



Sexo: Sexo:Mujer
Registrado: 03 Aug 2011
Mensajes: 95
Estado: Offline
MensajePublicado: Thu Jun 28, 2012 12:48 pm    Título del mensaje: Responder citando

Pues no, no va a funcionar xD

Con esto ya sí: http://www.mediafire.com/?r4pwbbh85l1artj

Ahora también pide el nombre del bin y del idx, con lo que no hay que renombrar nada.
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
pleonex



Sexo: Sexo:Hombre
Registrado: 21 Aug 2011
Mensajes: 68
Ubicación: Espania
Estado: Offline
MensajePublicado: Thu Jun 28, 2012 2:06 pm    Título del mensaje: Responder citando

En efecto, puedo confirmar que las nuevas herramientas de Skye funcionan ^^ (es gracioso porque se crea también una carpeta llamada Radiant que está vacía, pero así nadie olvida para que juego se hicieron)

Sugieron utilizar tinke ejecutándolo desde la consola de la siguiente forma: "tinke -fld" para poder abrir la carpeta "data" extraída y por ir viendo todos los archivos de forma más cómoda (sobre todo para las imágenes)

El texto se encuentra en data/tbl/ y son archivos sencillos, donde al principio hay una serie de punteros que indican el inicio del texto. El final del texto no está indicada por punteros si no cuando hay un byte 0x00. El texto está en SJIS y los <br> indican un salto de línea (como en HTML).

También veo diferencias en los archivos de texto:
* bible.bin -> Los punteros son de 4 bytes
* fusion.bin -> Los punteros son de 2 bytes

Los archivos .cmp significa que están comprimidos con compresiones de la BIOS estándard. A veces son imágenes en raw y otras son archivos FBIN que son contenedores de archivos 3D

También hay texto en la carpeta event aunque ese no tiene una estructura tan sencilla como los anteriores...
Volver arriba
Ver perfil del usuario Enviar mensaje privado   Visitar sitio web del autor
CUE
Administrador
Administrador


Sexo: Sexo:Hombre
Registrado: 24 Jan 2011
Mensajes: 5435
Estado: Offline
MensajePublicado: Thu Jun 28, 2012 2:48 pm    Título del mensaje: Responder citando

Y digo yo, ¿por qué no está incorporado en los programas esos de la culebrilla la extracción de los nombres de los ficheros? Es una cosa muy simplona, y así no tiene por qué existir esa tabla con todos los nombres.
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
Skye



Sexo: Sexo:Mujer
Registrado: 03 Aug 2011
Mensajes: 95
Estado: Offline
MensajePublicado: Thu Jun 28, 2012 3:59 pm    Título del mensaje: Responder citando

Pues eso es pura vagancia por mi parte: ya estaba el txt hecho, y no esperaba que se usara para otro juego tan pronto.

Cuánto aprecio a "la culebrilla" hay por aquí eh... ^^
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 Jun 28, 2012 5:54 pm    Título del mensaje: Responder citando

Y luego me llaman vago a mí...

Pásame los dos csv, uno por cada juego, con los punteros. Así hago pruebecillas y lo meto todo junto

Yo no es que odie a la culebrilla, es que me REVIENTA, con mayúsculas y en itálica para que destaque, tener que poner las cosas identadas al espacio justo para que no se líe el intérprete. La programación nunca ha dependido de la estética, siempre ha sido así. Se nota que quien hizo el Python no estaba acostumbrado a programar, que muchas veces hay que cortar trozos de un programa para ponérselos a otros, y tener que estar mirando si cada línea comienza por un determinado número de espacios es una enorme pérdida de tiempo.
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
Skye



Sexo: Sexo:Mujer
Registrado: 03 Aug 2011
Mensajes: 95
Estado: Offline
MensajePublicado: Thu Jun 28, 2012 6:11 pm    Título del mensaje: Responder citando

Qué va, nada supera a cuando decides poner un if o lo que sea al principio de un bloque largo de código y hay que ir indentando cada línea a mano... y si encima hay más bloques indentados de por medio y te lías con la indentación... xD

Aquí tengo el csv del radiant, que del Devil Survivor no tengo ni la ROM, y no la tendré hasta el sábado, porque estoy de viaje con un límite de descarga de 100 megas y la rom pesa unos 104.

http://www.mediafire.com/?6h9xsh2ual2c3f9

El formato es: ruta del archivo,offset en el bin,longitud (si lo dice el idx), offset del puntero en el idx,largo/corto (1 si el puntero es corto, 0 si no)
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 Jun 28, 2012 6:19 pm    Título del mensaje: Responder citando

No, si no necesito los dos, con uno me vale, pero pedir es barato. Es que he intentado poner la culebrilla, y mi ordenata es como yo, que pasa mucho del tema (lo que demuestra lo listo y guapo que es):
Código:
E:\testingculos>rhpointers.py
Radiant Historia Pointer Table Generator - Copyright (C) 2012 Skye
Enter output .csv filename: ooo
Traceback (most recent call last):
  File "E:\testingculos\rhpointers.py", line 115, in <module>
    csvname = str(input('Enter output .csv filename: '))+'.csv'
  File "<string>", line 1, in <module>
NameError: name 'ooo' is not defined


Obviamente, y como es de esperar, he ejecutado una cosa que trae el Phyton y que me ha encantado: EL DESINSTALADOR.
Volver arriba
Ver perfil del usuario Enviar mensaje privado  
pleonex



Sexo: Sexo:Hombre
Registrado: 21 Aug 2011
Mensajes: 68
Ubicación: Espania
Estado: Offline
MensajePublicado: Thu Jun 28, 2012 6:23 pm    Título del mensaje: Responder citando

Te paso yo el del Devil Survivor 2: http://www.mediafire.com/?50896ynm5q4yl93

** Añado **
CUE: A mi me pasaba eso antes hasta que me di cuenta que lo tenía que ejecutar con Python 3 y no la v2.

** Sigo añadiendo **

He probado con el Devil Survivor 1 que tiene lo mismo (además también se llaman Target) y falla al sacar los punteros. Nadie está trabajando en ese juego pero yo lo dejo caer, aquí tenéis los archivos de ese juego:
ndx.txt
Target.idx

Error:
Código:

C:\Users\pleonex\Downloads\p>C:\python32\python.exe rhpointers.py
Radiant Historia Pointer Table Generator - Copyright (C) 2012 Skye
Enter output .csv filename: ptr
Enter .idx filename (example: Data.idx) : Target.idx
Traceback (most recent call last):
  File "rhpointers.py", line 128, in <module>
    bin_pointer = main(line)
  File "rhpointers.py", line 107, in main
    pointer_offset = get_pointer_offset(idx_offset)
  File "rhpointers.py", line 52, in get_pointer_offset
    pointer = int(pointer[-8:].lstrip('0x'), 16)
ValueError: invalid literal for int() with base 16: ''
Volver arriba
Ver perfil del usuario Enviar mensaje privado   Visitar sitio web del autor
Skye



Sexo: Sexo:Mujer
Registrado: 03 Aug 2011
Mensajes: 95
Estado: Offline
MensajePublicado: Thu Jun 28, 2012 7:41 pm    Título del mensaje: Responder citando

Pues debe haber algo mal en el cálculo de offsets, porque los valores que sí saca están claramente mal. Igual en vez de hacer un AND con 0x7FF lo hace con otro valor, o han cambiado alguna otra cosa. Cuando vuelva a casa me pondré a trazar el assembly a ver qué pasa.
He visto que el DS1 salió en 2009, y tanto el Radiant como el DS2 salieron en 2011. Entonces tendría sentido que el Radiant y el DS2 tengan el mismo sistema.

Claro que igual sólo soy yo que lo he hecho todo mal.
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 1, 2, 3  Siguiente
Página 1 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 Me ha llegado Santa antes de tiempo (eso espero) 25 CUE 2965 Fri Dec 23, 2016 11:40 am
CUE Ver último mensaje
No hay mensajes nuevos goodsets y todo eso ¿qué traducciones listan? 14 gadesx 5224 Thu Aug 21, 2014 3:58 pm
CUE Ver último mensaje
No hay mensajes nuevos El foro vuelve a ser para registrados 2 CUE 3040 Tue Nov 29, 2011 8:38 am
CUE Ver último mensaje
No hay mensajes nuevos Foro creado, sobre romhacking 13 gadesx 7807 Wed Feb 16, 2011 8:53 pm
zackner Ver último mensaje
No hay mensajes nuevos NORMAS DEL FORO (lectura obligatoria) 0 gadesx 2467 Thu Jan 27, 2011 3:43 pm
gadesx Ver último mensaje
 


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