Parches 60FPS

Imagen

Imagen

Hacía bastante que no posteaba por aquí pero he visto que en los foros de PCSX2 y PPSSPP se han puesto de moda los parches 60FPS y como he sacado un par fácilmente he decidido trasladar el tutorial aquí y explicarlo de forma sencilla.

Básicamente consiste en subir el límite de juegos bloqueados a 30FPS (la inmensa mayoría) a 60FPS. Hay que tener en cuenta que no todos los juegos funcionan igual. La mayoría de juegos solo tienen este bloqueo de FPS en un registro y al cambiarlo no presentan problemas, pero hay muchos juegos que lo tienen en múltiples registros (caso de los Monster Hunter) y otros que presentan problemas de velocidad (van demasiado rápido) con lo que este tutorial, en ciertos juegos, se queda bastante cojo.

Requisitos

  • PPSSPP X86 (se recomienda la versión de 32Bit porque tiene menos rangos de registro).
  • Cheat Engine
  • Calculadora de Windows
Configuración

  • PPSSPP. Cambiad el modelo de PSP a 1000 en Ajustes, Sistema, Modelo de PSP, 1000. Esto facilita la búsqueda porque hay que buscar registros en la mitad de memoria. Activad los trucos en Y mostrad la consola en Depuración y Consola de Registros.
  • Cheat Engine. Tickad MEM_MAPPED en Edit, Settings y Scan Settings.
  • Calculadora de Windows. Cambiar a programador en Ver y Programdor. Y tickad modo Hexadecimal (izquierda).
Método

  • Ejecutamos el juego en PPSSPP y lo seleccionamos en el Cheat Engine (con el icono del ordenador y la lupa).
  • En CE, en el cuadro Value ponemos un 2 (que serían 30FPS).
  • En PPSSPP ejecutamos el juego, pulsamos F8 para pausarlo y que la consola no haga scroll automático.
  • En la consola, arriba del todo, buscamos la linea que ponga Ram at 0XXX0000. Copiamos ese registro.
  • En la calculadora restamos el registro de 8000000 (ochocientos mil) y el resultado lo ponemos en el cuadro Start de CE.
  • En la calculadora restamos el registro de 1800000 (un millón ochocientos mil) y el resultado lo ponemos en el cuadro Stop de CE.
  • En PPSSPP pulsamos F8 para resumir el juego y en CE pulsamos First Start. Nos saldrá una lista de registros que puede variar según el juego (cientos o miles). A lo largo de los menús vamos dándome a Next Scan. Comenzamos a jugar (más allá de los menús) y seguimos pulsando Next Scan. Pulsad estos Scan siempre y cuando el emulador muestre 30FPS. Hay juegos que tienen los menús a 60FPS y el juego a 30FPS o los vídeos a 25FPS, no pulséis los Scan durante esas secuencias de frames diferentes a 30FPS.
  • Cuando veamos que los registros no se reducen (o sean menos de 1000, eso ya nos permite buscar rápido) pasamos la lista de registros a la parte inferior seleccionándolos todos (CTRL+A), botón derecho y Add selected addresses to the adresslist.
Parte aburrida

Y una vez abajo nos tocará la parte aburrida del asunto, consiste en seleccionar grupos de registros, pulsar intro y cambiar el valor 2 (que serían 30FPS) a 1 (que serían 60FPS) o 3 (que serían 20FPS). Yo suelo usar 3 (únicamente para localizar el registro) porque suele petar menos que ir directamente a 60FPS. Porque cabe mencionar que estamos cambiando registros de los que podrían depender cualquier cosa (desde el límite de FPS al frameskip o la forma en que se construyen los personajes del juego, cualquier cosa) por lo que cambiando registros al tuntun es fácil que el juego se bloquee, ya digo que menos en el caso de usar el valor de 20FPS.

En fin, yo suelo dividir la lista en cuatro o cinco grupos y cambio esos grupos del tirón, si veo que no cambia el framerate límite vuelvo a poner los valores en 2 (para evitar que el juego se vuelva aún más inestable) y pruebo con el resto de grupos, borrando ese grupo una vez cambiado el valor (para ir quitando registros del medio).

Llegará un momento en el que el framerate límite cambie a 20FPS, entonces volvemos a cambiar ese grupo a 2, borramos el resto de valores y vamos probando con grupos más pequeños dentro de ese grupo. En fin, llegará un momento que solo tendremos que ir cambiando valor por valor hasta dar con el correcto.

Para pasar el registro al formato CWCheat sencillamente tendríamos que copiar la dirección (Address) y restar ese valor de 800000 (ochocientos mil) dando como resultado el valor final. Ese valor lo cambiamos por las X de esta linea.

_L 0x20XXXXXX 0x00000001

Y la estructura final del archivo de trucos sería algo tal que.

_S ULES-XXXXX
_G Nombre del juego [Región]
_C1 Qué hace el truco
_L 0x20XXXXXX 0x00000001

Cambiando el último digito de esta parte (0x00000001) cambiaríamos el valor del framerate, siendo 1 (60FPS), 2 (30FPS) y 3 (20FPS). Por ejemplo este sería el archivo del Pro Street (Eur).

_S ULES-01019
_G Need for Speed: Pro Street
_C1 Force 60 FPS
_L 0x207BB79C 0x00000001
_C0 Force 30 FPS
_L 0x207BB79C 0x00000002
_C0 Force 20 FPS
_L 0x207BB79C 0x00000003

En realidad ni la ID (_S) ni el nombre (_G) son necesarios, sin embargo, si no ponemos una linea antes del primer truco (_C1) este no se mostrará, entiendo que es algún tipo de bug del emulador. Es más, una vez que guardemos el archivo y probemos los trucos desaparecerán todas las lineas anteriores a los trucos.

La forma de asignar estos valores a cada juego y activar los trucos sería tan fácil como (con los trucos activados, como comenté al principio) entrar en el juego, salir al menú, ir al menú de trucos, ir a Editar archivo de trucos, pegar el código, guardar, salir del emulador y volver a entrar en el menú de trucos, apareciendo finalmente los trucos y la casilla para activarlos.

En la consola real creo que aquí todos más o menos conocen el funcionamiento del CWCheat por lo que no tiene mucha más explicación.

Todos los créditos van para los usuarios Kabuto_Kun y LunaMoo de los foros de PPSSPP. Personalmente me he creado tres o cuatro funcionales y un par que no tiene mucha utilidad porque el juego se dispara a 60FPS (caso del MotorStorm, una pena). Pero en el hilo oficial tenéis ya unos cuantos.

Hilo oficial de parches
¿Pero esos parches funcionan en una psp?
Si no funcionan creo que a la gente de este subforo no le va a interesar mucho, mejor que lo pongas en algún subforo de emuladores o en el de pc o algo...
weirdzod escribió:¿Pero esos parches funcionan en una psp?
Si no funcionan creo que a la gente de este subforo no le va a interesar mucho, mejor que lo pongas en algún subforo de emuladores o en el de pc o algo...

https://www.youtube.com/watch?v=bN2CMmWGQXY

Sí funcionan, pero no con el mismo rendimiento que en el emulador de Playstation Portable usando la misma frecuencia. Hay pocos juegos que puedan mantener 60FPS estables en la consola real y cualquier mínimo bajón se nota bastante en la imagen (por ejemplo Sonic Rivals que baja a 55-58FPS y parece que ha bajado a 20FPS). Pero sí hay juegos que mantienen 60FPS estables, caso de Patapon. Aunque en este, concretamente, hay que cambiar a 30FPS cuando se aprenden los ritmos ya que, estando en 60FPS, se desincroniza el juego y no avanza.

Es cuestión de ir probando los que están disponibles.
2 respuestas