alfax escribió:sandungas, el tema del psarc yo lo tengo pendiente. Quiero aligerar algunos juegos y dejarles, como hago con casi todo, el inglés y el castellano. Un día intenté hacer algo, pero había algunos archivos dentro que no estaban comprimidos y otros sí. Me pregunto si realmente es posible rehacer algo así,
Tu eres el que más entiende del psarc, y tal vez puedas decirnos y compartir, todas las versiones que hay del famoso ejecutable. Yo sé que al menos hay 4...
Yo suelo dejar solo el castellano, soy un ripeador compulsivo supongo, si veo cualquier cosa que se puede eliminar me la cargo sin piedad
Siempre y cuando el juego no quede "mutilado" claro... esta es una regla de oro que soy muy estricto con ella, consiste en que no se deben eliminar ni reemplazar, ni rebajar la calidad de ninguno de los archivos que se usan durante el "gameplay"... es decir, si el juego tiene "extras" como videos de el "como se hizo" esos me los cargo sin pensar, pero si hay videos que aparecen dentro del juego (por muy estupidos que sean por ejemplmo de tutoriales) esos no los toco
Un caso especial es el "video de standby" como yo lo llamo, que suele estar en todos los juegos, y solo aparece si dejas el mando inactivo por mas de 1 o 2 minutos en la pantalla de presentacion del juego (la tipica antes de que empiece el juego que suele poner "press start button"... si no haces nada ahi sale un video (que en realidad nadie ve porque nadie se queda en esa pantalla esperando)... cuando pasa esto el video lo reemplazo por otro de duracion 1 segundo completamente negro
Aunque algunos juegos ese video se reproduce automaticamente al arrancar el juego... si pasa esto no lo toco porque se notaria que falta algo
De esa forma la experiencia de juego es exactamente la misma que en el original... no se pueden notar las diferencias
----------------
Si creas un .psarc y le aplicas una compresion global... a cada uno de los archivos se le aplica una compresion individual, que es variable, se calcula automaticamente y depende del tamaño del archivo y de los datos que contenga el archivo
vamos a suponer que somos unos desarroladores de juegos... y estamos haciendo pruebas de como empaquetar los archivos...
Hay archivos que al comprimirlos dentro de un .psarc consigues una reduccion de tamaño que es ridicula, no merece la pena comprimirlos porque no ganas nada de espacio y estas haciendo que el acceso al archivo sea menos eficiente (la consola tiene que hacer una descompresion extra para acceder a el)
Y al mismo tiempo puede pasar que dentro de ese mismo .psarc haya otros archivos que al comprimirlos se reduce muchisimo su tamaño
En este caso, donde tenemos archivos que queremos comprimir y otros que no... es el escenario mas complicado... para hacer esto tienes que preparar una lista de los archivos que van a ser incluidos dentro del .psarc y especificar la compresion que se le va a aplicar a cada uno de ellos
Esta lista esta en formato .xml y normalmente tienes que hacerla usando algun metodo que automatice la creacion del archivo .xml, porque normalmente dentro de un .psarc puede haber miles de archivos (suele ser algo normal que un .psarc contengo 50.000 archivos o mas)
Es el caso mas complicado, y espero no tener que explicar esto en el foro porque no se si sere capaz, en realidad esta explicado en la wiki pero la forma que usaba yo para automatizar todo este proceso es tan complicada que no se entiende muy bien
Sea como sea... te puedo decir que cualquier archivo .psarc que encuentres permite que lo reconstruyas... de todos los juegos que he ripeado que contenian .psarc no hay ninguno que se me haya resistido
Bueno... en realidad hay uno que es especialmente complicado, el killzone 2... pero incluso ese se puede hacer, el unico problema es que la lista de archivos es enorme (este quizas pase de 100.000 archivos) y hace una cosa rara con las rutas que no voy a explicar por no enrollarme demasiado... el caso es que no encontre ninguna forma buena para automatizarlo pero se puede hacer, el unico problema es que te vas a estar 3 o 4 horas (o mas porque la lista de archivos es enorme) para crear de forma manual el archivo .xml necesario para la reconstruccion
Hay unas 4 versiones del psarc.exe publicas... pero tiene que haber muchas mas
La version no importa, si te fijas en el header de los archivos .psarc aparece la version de la herramienta con la que fue creado, pero todas ellas hacen lo mismo, el .psarc que crean es igual, lo unico que cambia es que en el header dejan el numerito de la version (y por mi experiencia creo que la PS3 no lee ese numerito)
Ademas si quieres puedes parchear el numerito a mano para cambiarlo por el numerito que tenia el .psarc original. Aunque esto nunca lo he probado porque nunca me ha dado ningun problema ese numerito de la version
Sony sigue usando .psarc en los juegos de la PS4 y la PSVita... y por los archivos que me han pasado para que les eche un vistazo siguen usando la version 1.4 (creo recordar que esta es la actual)
Aunque es muy posible que proximamente pasen a la 1.5... o a la 1.6... etc...
Pero eso no importa, todas ellas incluso las nuevas que puedan salir en el futuro tienen que ser "retrocompatibles", es decir que tienen que permitir alguna forma de crear un .psarc exactamente igual que el que se creaba en las versiones anteriores
munkii escribió:Ayer por el insomnio pude revisar todo lo que me comentas, y estaba averiguando la ultima parte de los archivos .ps3.bin ya que realice la sustitucion de los archivos y el reempaquetado pero el juego funciona como si no le hubiera movido nada, incluso cambie unos archivos .phyre de la carpeta ui donde imagine estaban los archivos para letras latinas "uitex.GCM.phyre" pero al final no pasa nada, los textos siguen apareciendo en japones. Esperaba por lo menos provocar un crash para comprobar que la sustitucion afectaba algo pero ni eso sucedio.
Me parecio muy curioso que los ".ps3.bi" tienen exactamente el mismo tamaño que los ".bin" en todos los casos pero si los compruebas hexadecimalmente son diferente.
Seguire buscando a ver que puedo sacar, pero de ya muchas gracias
@sandunga por el apoyo y por todo lo que aprendi.
Pues es raro que tengan el mismo tamaño, no creo que sea un duplicado (con algo añadido como una encriptacion o algo asi que haga que se modifique un poco)... si fuera algo como esto que estoy diciendo estarian perdiendo un monton de espacio
Lo del "phyre" es un detalle curioso, ya sabemos que motor del juego estan usando en los dragon quests, es el PhyreEngine
https://en.wikipedia.org/wiki/PhyreEngineCualquier juego creado con ese motor del juego deberia seguir algunas reglas comunes en la forma en que se ha creado (extensiones de archivos, empaquetados, etc)
Saber esto no ayuda mucho, solo es un dato curioso, pero si encuentras algun otro juego que lo use quizas se podria deducir algo
Y por cierto... si vas a mirar otros juegos mira los otros dragon quest de PS3... van a estar construidos exactamente igual. Aunque tampoco creo que te vaya a ayudar mucho
Yo de momento no intentaria modificar los archivo con nombre "phyre" o que esten dentro de una carpeta con ese nombre... porque en principio deberian ser archivos relaccionados con el motor del juego (por ejemplo, archivos de 3d de informacion de vertices y poligonos, o filtros de video, informacion de iluminacion, etc... cosas asi complicadas que no se pueden modificar)
--------------------------------------
Yo lo que haria en el punto donde estas ahora es hacer todas las pruebas de reemplazar archivos pasando el juego al hdd interno de la PS3, y con todo el contenido de los .psarc en archivos sueltos (no has dicho si funciona con archivos sueltos, estoy suponiendo que si)
Con archivos sueltos es mucho mas facil hacer pruebas para identificar archivos (y si tienes la PS3 conectada al PC por FTP seria perfecto, mucho mas rapido)
---------------------------------------
Lo que comentas... de que cuando reemplazas un archivo que era japones por uno en español... pero al arrancar el juego sigue usando el archivo en japones... parece magia, pero tiene una explicacion
Yo diria que todos los ripeadores de PS3 nos hemos topado con este problema alguna vez, puede pasar por diferentes razones, lo que voy a decir es otra regla de oro que nunca debes olvidar
Lo comente antes sin entrar en detalle... pero algunos juegos copian archivos del juego (en este caso del backup de un bluray) a la carpeta de instalacion del juego
Los archivos de la carpeta de instalacion tienen preferencia a los del juego, si un archivo existe en la carpeta de instalacion entonces el mism archivo en el bluray se ignora
Tu estas reemplazando los archivos del bluray, pero si resulta que hay una copia antigua (en japones) de ese mismo archivo en la carpeta de instalacion, entonces el archivo en español que acabas de reemplazar en el bluray lo ignora
Por esta razon siempre hay que mirar en la carpeta de instalacion para saber que archivos hay en ella (son todos duplicados copiados del bluray... o en algunos casos extraidos de otro archivo que hay en el bluray)
Pero eso no es todo... la PS3 puede guardar otra copia mas del archivo, en una particion oculta de tamaño 2GB en el hadd interno de la PS3 que se utiliza como "cache" temporal (aunque no es tan temporal, en realidad los datos se mantienen aunque reinicies la consola)
Es decir... en el peor de los casos puedes tener dentro del hdd archivos que son exactamente iguales por triplicado en diferentes rutas (la del backup de bluray, la de instalacion, y la de cache)
La copia de cache tiene preferencia sobre la de instalacion
La PS3 busca el archivo en el orden inverso al que se ha creado, es decir... primero busca el archivo en cache... si no existe busca en la de instalacion... si no existe busca en bluray... y si no existe en bluray el juego crashea
La forma que se usa la cache en cada juego puede ser diferente, pero un ejemplo muy tipico son los juegos donde se van cargando "niveles" o "capitulos" del juego
Por ejmplo... cuendo empiezas una partida nueva... se cargan en cache todos los archivos necesarios que se van a usar en el capitulo 1... tu juegas el capitulo 1 y al pasar al capitulo 2 se vacia la cache y se copian los archivos del capitulo 2
Como he dicho antes si apagas la consola el contenido de la cache se mantiene, incluso si ejecutas el juego varias veces con diferentes savegames en diferentes puntos del juego, es posible que alguno de los archivos mas antiguos siga almacenado en cache
La unica forma de "limpiar" la cache completamente es cuando algun juego o aplicacion solicita guardar datos nuevos en cache... es decir que nunca se vacia... lo unico que puedes hacer es sobreescribir su contenido
La mejor forma es ejecutar un juego diferente (o una aplicacion que use cache)
De esa forma es imposible que los archivos antiguos de cache "sobrevivan" porque el juego nuevo elimina todos los archivos del juego antiguo
---------
Creo que es esto lo que te ha pasado, tenias algunos de los archivos japo en cache
Comprueba si tambien estan en la ruta de instalacion... si no estan te puedes olvidar de ella, no es un problema para tus pruebas
Esto hace que tus tests sean un poco mas lentos... cuando cambies un archivo tienes que ejecutar otro juego (para limpiar cache) y luego ejecutas el juego que estas ripeando con archivos modificados (que se van a copiar a cache, eso tenlo en cuenta para la siguiente prueba)
Esto pasa en el the last of us
Uno de los archivos que estaba modificando (cambiando texturas de las camisetas de joel) estaba corrupto (lo hice mal al crearlo en PC) y al copiarse en cache hacia que el juego crashease al iniciar, siempre crasheaba, daba igual lo que yo hicese, probe de todo y era imposible hacer funcionar al juego... tarde un par de dias en entender que narices estaba pasando... al final era que tenia el archivo dañado de la camiseta de joel que se habia copiado a la cache
*Vaya tochos de texto que escribo, me voy a tener que atar los dedos