Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GameDB: Patch to fix Valkyrie Profile 2 PAL FMV timing #10201

Merged
merged 1 commit into from
Oct 29, 2023

Conversation

refractionpcsx2
Copy link
Member

@refractionpcsx2 refractionpcsx2 commented Oct 29, 2023

Description of Changes

Patch to sync audio and video in Valkyrie Profile 2 FMV's

Rationale behind Changes

I'm not sure on the source of this but, I suspect the game thinks somewhere that it's in NTSC mode instead of PAL (I think a few games do this), but I'm unsure where this would be. This patch will suffice for the moment, until somebody completely dissects this game.

Suggested Testing Steps

Test Valkyrie Profile 2 PAL FMV's

@refractionpcsx2 refractionpcsx2 merged commit e016e32 into master Oct 29, 2023
24 checks passed
@refractionpcsx2 refractionpcsx2 deleted the gamedb_vp2 branch October 29, 2023 22:20
@Goatman13
Copy link
Contributor

I think this patch can trigger anti-cheat mechanic (Gameguard) and break people game saves. This is irreversible, broken saves cannot be recovered. Protection is really nasty and trigger after few chapters, there is no way to tell if it's already broken or not.

@refractionpcsx2
Copy link
Member Author

Ugh really?? Wow what a dumb thing to put in a single player game....

I guess I'll remove it again then...

@Goatman13
Copy link
Contributor

Yeah, a lot of hassle to prevent cheats in single player game. As far as i know game scan code, and do some arithmetic operations on it to detect changes. Pnach file here have more info: https://forums.pcsx2.net/Thread-Post-your-PCSX2-cheats-patches-here?pid=595942#pid595942

@refractionpcsx2
Copy link
Member Author

Good lord, that's a chonky patch... Sounds like they do a bunch of scary checks, but mostly to avoid ridiculous values? I'm not sure they'd go through the effort to check the fmv code all, but much cheating you can do the, but better to be safe than sorry I guess. Maybe somebody should play the game with the fix first, who is willing to be a sacrificial lamb, so to speak

@Goatman13
Copy link
Contributor

"Sounds like they do a bunch of scary checks, but mostly to avoid ridiculous values?"
I think TriAce overdid it to whole code segment. I know codes like remove post processing triggered that protection.

@refractionpcsx2
Copy link
Member Author

bonkers lol.

Well Technostrophe on the discord is going to check the patch with a sacrificial run, see if it's viable.

@refractionpcsx2
Copy link
Member Author

refractionpcsx2 commented Oct 30, 2023

looks like the intro (ingame cutscene) crashes half way through if you're in 16:9 with the patch.

I guess that's that then.

Edit: Looks like a forced lockup, if I remove this beq, it continues to work

image

found another one

image

@Goatman13
Copy link
Contributor

Yup that's what game protection do apparently.

@refractionpcsx2
Copy link
Member Author

refractionpcsx2 commented Oct 30, 2023

yeah, I mean in theory we could go through all the code and kill all these loops.

is it possible this is how it kills peoples saves, by hanging in the middle?

in theory we could use our dynamic patching to catch these patterns and nop them out on the fly

@Goatman13
Copy link
Contributor

There is "save corruptor" function that rigger at some condition. To be honest if you really need it fixed just do it outside of EE memory. Like i don't know, in recompiler or something.

@refractionpcsx2
Copy link
Member Author

Well we don't have any code in there to do it for that and I'm loathed to hack it in to the JIT just for one game. even the Dynapatch stuff will edit the memory as well, this will only be saved if the game then overwrites this again when the next scene is loaded.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants