PCSX2 / pcsx2_patches

Patches for Widescreen, No Interlace etc go in here, syncs with the main repo
158 stars 75 forks source link

Ratchet UYA, Deadlocked: Add 60 FPS splitscreen patch #383

Open SuperSamus opened 3 months ago

SuperSamus commented 3 months ago

These patches allow "Ratchet & Clank: Up Your Arsenal" and "Ratchet: Deadlocked" to play at 60 FPS during splitscreen modes, instead of the regular 30 FPS. In reality, it was two physics steps per frame, so the physics aren't changed. What the patch does is simply removing a physics step and a Vsync in the splitscreen loop.

Usage notes

Testing done

For reviewers

(Original post on https://forums.pcsx2.net/Thread-60-fps-codes?pid=640315#pid640315, but I can't update it anymore)

Documentation #### Up Your Arsenal ``` + dynaPatches: + - pattern: + - { offset: 0x50, value: 0x24022D00 } + - { offset: 0x54, value: 0x0044180B } + - { offset: 0x58, value: 0x00A3182A } + - { offset: 0x68, value: 0x0000202D } + replacement: + - { offset: 0x08, value: 0x00000000 } # Remove the first physics step (not the second one: it does things like drawing the aiming reticle) + - { offset: 0x80, value: 0x00000000 } # Always take the "not 3/4 players" branch (I don't know what it's actually for, but without this, 3/4 players is broken) + - { offset: 0xF8, value: 0x00000000 } # Same, but for the frameskip branch (only useful if starting the match underclocked) + - { offset: 0x64, value: 0x00000000 } # Remove the first VSync (leaving the one that is never skipped) + # Feel free to tweak the last 4 digits of the value. + # If too low: the game will frameskip when it doesn't need to. + # If too high: the game may not realize that it needs to frameskip, and run at half speed. Avoid! + - { offset: 0xbc, value: 0x24032470 } # Reduce the time required to do another framestep (so that the game will frameskip if it can't keep up) ``` #### Deadlocked ``` + - pattern: + - { offset: 0x58, value: 0xA2B01680 } + - { offset: 0x6C, value: 0xA2A01680 } + - { offset: 0x70, value: 0x3C030022 } + - { offset: 0x74, value: 0x8C63DDA4 } + replacement: + - { offset: 0x04, value: 0x00000000 } # Remove the first physics step (not the second one: it does things like drawing the aiming reticle) + - { offset: 0x50, value: 0x00000000 } # Always take the "not 3/4 players" branch (I don't know what it's actually for, but without this, 3/4 players is broken) + - { offset: 0x34, value: 0x00000000 } # Remove the first VSync (leaving the one that is never skipped) + # Feel free to tweak the last 4 digits of the value. + # If too low: the game will frameskip when it doesn't need to. + # If too high: the game may not realize that it needs to frameskip, and run at half speed. Avoid! + - { offset: 0x94, value: 0x24032470 } # Reduce the time required to do another framestep (so that the game will frameskip if it can't keep up) ```
F0bes commented 5 days ago

I've merged the dynamic patches pr https://github.com/PCSX2/pcsx2/pull/11801

Know that I've added a version field since you've last commented on the pr. The pr explains it.

SuperSamus commented 5 days ago

The patches are now in the new format!

I'm still a little hesitant to undraft until the 3/4 player modes are more tested... (Only a little.) Unfortunately, the PC required to play 3/4 players at full speed is... not something I own.

dreamsyntax commented 2 days ago

Tested the new format patch on 2.1.174 for Ratchet Deadlocked co-op (2 hour test) Finished up to and including Dark Cathedral (approx 28% game completion)

Overall experience was stable other than some expected performance dips. It would potentially be worth enabling fine-tuning the EE Overclock to allow 190%/200% etc... but that's outside the scope of this PR.