[PSX] Parasite Eve 2 CDF

Lugar donde se intentarán resolver problemas específicos
Z3R0X
Mensajes: 13
Registrado: 26 Dic 2015, 12:23

[PSX] Parasite Eve 2 CDF

Mensaje por Z3R0X » 24 Mar 2018, 16:52

Hola amigos del foro, estoy intentando identificar que tipo de compresión usa PE2, hice algunas pruebas con QuickBMS y logre conseguir solo pequeña parte con los siguientes scripts:
Scripts:
COMP_LUNAR_LZ10, // scan 260
COMP_HEATSHRINK, // scan 497
COMP_LHA_lzs, // scan 526

Archivos DMP de QuickBMS, dump de archivo ya descomprimido de la RAM y bloque de información comprimida aqui:
http://www.mediafire.com/?s1r6wsld85yyqp7

En el archivo descomprimido se pueden ver los textos del menú, nombre de items, etc.

Muchas gracias de antemano.

Avatar de Usuario
CUE
Administrador
Administrador
Mensajes: 5597
Registrado: 24 Ene 2011, 16:52

Re: [PSX] Parasite Eve 2 CDF

Mensaje por CUE » 24 Mar 2018, 18:15

En ese juego era un caos. Cada bloque de diálogo se codifica dependiendo de la fuente que se use en ese momento, que varía. Se hace así porque en japonés era más sencillo poner solo los símbolos utilizados, sin tener que tener una fuente enorme cargada en memoria, y por eso el mismo carácter se codifica de forma diferente.

Z3R0X
Mensajes: 13
Registrado: 26 Dic 2015, 12:23

Re: [PSX] Parasite Eve 2 CDF

Mensaje por Z3R0X » 24 Mar 2018, 18:41

Aquí tengo una herramienta que extrae los archivos de los ficheros CDF, genera un texto con los offset y el tamaño de cada fichero e incluso le paso solo un bloque y lo extrae sin problema, pero no comprime.
No es mi herramienta, la encontré hace mucho en un foro, no se quien es el autor y no tengo el código fuente.
http://www.mediafire.com/?tmaw3jinmhduyn3

Espero les sea útil, es necesario un compresor.

Avatar de Usuario
CUE
Administrador
Administrador
Mensajes: 5597
Registrado: 24 Ene 2011, 16:52

Re: [PSX] Parasite Eve 2 CDF

Mensaje por CUE » 24 Mar 2018, 19:32

Pero es que comprimir y descomprimir son dos cosas totalmente distintas. Descomprimir es muy sencillo, y encontrarás cientos de descompresores por la red para todo. A la hora de comprimir la cosa cambia, y muy pocos pierden tiempo con ello, pues requiere muchísimo más esfuerzo.

Pasa lo mismo con empaquetar y desempaquetar.

Z3R0X
Mensajes: 13
Registrado: 26 Dic 2015, 12:23

Re: [PSX] Parasite Eve 2 CDF

Mensaje por Z3R0X » 24 Mar 2018, 19:48

Claro que son cosas completamente diferentes pero descomprimir estos archivos LZSS es el primer paso para hacer el compresor. ¿Tu siempre has hecho el compresor de un archivo comprimido primero?

Avatar de Usuario
CUE
Administrador
Administrador
Mensajes: 5597
Registrado: 24 Ene 2011, 16:52

Re: [PSX] Parasite Eve 2 CDF

Mensaje por CUE » 24 Mar 2018, 20:48

No, yo siempre parto de conocer la compresión. Saber el supuesto tipo de compresión no ayuda en nada, hay que saber cómo se descomprime, sin eso es imposible saber cómo comprimir la información. En este caso no sirve de nada tener un programa de terceros que hace algo que no se comprende. Haría falta más información, pero si no sabes quién es el autor poco más se puede hacer. Más no puedo decirte porque no tengo el juego para poder mirar las cosas :(

Z3R0X
Mensajes: 13
Registrado: 26 Dic 2015, 12:23

Re: [PSX] Parasite Eve 2 CDF

Mensaje por Z3R0X » 24 Mar 2018, 22:16

Vale, ya me comunique con el autor de la herramienta, si libera el código fuente lo posteo aquí.
No tengo mucho conocimiento de algoritmos de compresión/descompresión por eso pido ayuda.
Tengo la función que descomprime los archivos binarios en el juego y claro esta en MIPS y entiendo poco :(

Avatar de Usuario
CUE
Administrador
Administrador
Mensajes: 5597
Registrado: 24 Ene 2011, 16:52

Re: [PSX] Parasite Eve 2 CDF

Mensaje por CUE » 25 Mar 2018, 15:40

Yo recuerdo que antaño miré este juego, y no sé si me equivoco o no, pero primero había que desempaquetar unos archivos, de los que salían más que había que desempaquetar también. Entonces no saqué la forma de hacerlo bien, y eso hay que hacerlo antes de meterse con la compresión, que de nada sirve comprimir ficheros si luego no se pueden meter en el archivo inicial.

No hace falta que te dé el código fuente. Mira a ver si te cuenta un poco la estructura de los ficheros para poder hacer el empaquetamiento y que cuente cómo va la compresión. Comprendido eso es más sencillo que alguien haga una tool.

Z3R0X
Mensajes: 13
Registrado: 26 Dic 2015, 12:23

Re: [PSX] Parasite Eve 2 CDF

Mensaje por Z3R0X » 26 Mar 2018, 05:14

Claro, espero y responda :roll:
No queda mas que esperar, saludos CUE.

Z3R0X
Mensajes: 13
Registrado: 26 Dic 2015, 12:23

Re: [PSX] Parasite Eve 2 CDF

Mensaje por Z3R0X » 26 Mar 2018, 15:50

Hola, el autor del tool dijo que va a buscar su código fuente pero que esta basado en el siguiente código:
https://oku.edu.mie-u.ac.jp/~okumura/compression/lzss.c
Dijo que aun no descifra la estructura de los CDF, pero que tiene los siguientes identificadores algunos achivos:
- CLUT (Color palette) data block: 0x0102, 0xff02
- Compressed binary data (models, enemy programs, e.t.c): 0x0100, 0xff00 <- estos me interesan para hacer el juego mas difícil, es el archivo que subí en el primer post.
- Desconocido: 0x0103, 0xff03
- Character dialogue blocks, may rarely contain compressed data: 0xff04, 0x0104
- MDEC images (backgrounds, loading screens): 0x0105, 0xff05
- Sound programs (music): 0x0106, 0xff06
- Text data (items descriptions): 0x0107, 0xff07
Aquí dejo la rutina en MIPS haber si ayuda en algo :roll:
http://www.mediafire.com/?zkkfptm656mplrw

Avatar de Usuario
CUE
Administrador
Administrador
Mensajes: 5597
Registrado: 24 Ene 2011, 16:52

Re: [PSX] Parasite Eve 2 CDF

Mensaje por CUE » 26 Mar 2018, 17:09

La compresión me suena, tengo una que si no es hermana es prima hermana de esa, usada en uno de los KIngdom Heart, y sería cuestión de buscar los parámetros que se usan. Además recuerdo que es una de las primeras compresiones que hice :)

Pero si no tiene la estructura de los CDF no te va a servir de nada. En el momento que quieras reemplazar un fichero comprimido habrá que indicar su información, y es seguro que el tamaño no coincidirá con el que tenía inicialmente, por lo que habrá que relocalizar todos los ficheros que hay después en el CDF.

Z3R0X
Mensajes: 13
Registrado: 26 Dic 2015, 12:23

Re: [PSX] Parasite Eve 2 CDF

Mensaje por Z3R0X » 26 Mar 2018, 19:14

Hola CUE, esta es la respuesta que me dio el autor del tool:
if I recall it correctly. Just a variation of LZSS. A dictionary is 256 bytes long, a reference is 12 bits long (8 for offset, 4 for length). Both literals and references are tightly laid, separated by control bits, meaning that their actual sizes are 9 bits and 13 bits. Reference to a zero element of a dictionary means to interrupt the decompression.

Images are compressed in multiple consecutive runs, each giving ~4kb of image data, and that is where I had to use a way around since I do not quite understand how to find exactly the beginning bytes of a next compressed portion.

Also, this algorithm can imitate RLE encoding by placing current read position near write position in the dictionary. So all read/write operations with a dictionary should proceed byte by byte, not by copying an entire string.
Source:
http://www.mediafire.com/?ieoifbh5uc5oksk/

Avatar de Usuario
gledson999
Mensajes: 40
Registrado: 17 Ene 2013, 03:23
Contactar:

Re: [PSX] Parasite Eve 2 CDF

Mensaje por gledson999 » 01 Abr 2018, 15:48

Este juego es un sueño traducirlo, deseo buena suerte!

Avatar de Usuario
CUE
Administrador
Administrador
Mensajes: 5597
Registrado: 24 Ene 2011, 16:52

Re: [PSX] Parasite Eve 2 CDF

Mensaje por CUE » 02 Abr 2018, 12:12

Pues lo he mirado un poco por encima. Sin saber cómo van los CDR es imposible hacer algo. Lo de la compresión es un problemón, parece que va por bloques y no se sabe cómo tratarlos. Lo que ha hecho el ruso es buscar las secuencias de inicio de cada parte del CDR, pero eso solo es válido para extraer.

Avatar de Usuario
gledson999
Mensajes: 40
Registrado: 17 Ene 2013, 03:23
Contactar:

Re: [PSX] Parasite Eve 2 CDF

Mensaje por gledson999 » 02 Abr 2018, 13:45

He encontrado un ruso que está traduciendo, tal vez podamos hablar con él, sólo no sé cómo ponerse en contacto con él
http://zerolabs.somee.com/pe2_translation.html

Responder