Sappharad / MultiPatch

Multi-Format File Patching App for macOS
http://projects.sappharad.com/multipatch/
GNU General Public License v2.0
191 stars 16 forks source link

patching ppf to playstation bin file doesn't work. #6

Closed pleasejust closed 5 years ago

pleasejust commented 6 years ago

Patching for the most part works fine, except for ppf to a playstation bin. I've tried to get LandonRay's Symphony of the Night hack to work. I have the correct bin with the correct crc32. When I use multipatch, the bin goes from 538MB or whatever to 75MB and won't load in any emulator even though it said the patch was applied properly! Something is seriously wrong there.

Sappharad commented 6 years ago

Based on the forum for libPPF, which is what MultiPatch uses for PPF patches, it looks like someone reported several bugs 10 years ago and they never got fixed because it's never been updated since then: https://sourceforge.net/p/lppf/discussion/692276/

I don't know if this is the cause of your problem or not, I have not tested this particular patch.

I can either try to fix libPPF, or just switch to a different PPF patcher. Unfortunately there doesn't appear to be another open source PPF patcher written in C or C++ that I can use. I'll decide once I get a chance to learn more about this particular patch.

Sappharad commented 6 years ago

I've applied the fix recommended in one of the LibPPF forum posts. I have no idea how this thing ever worked correctly for anyone before. In testing the 'bad' code it somehow managed to make APFS go crazy and kernel_task started writing data until it completely filled up my drive and the system locked up.

This new build appears to apply your patch successfully, but I'm not familiar with the game so please test and let me know how it goes.

MultiPatch163beta.zip

Thanks!

634297662b112401740df367eab8312f078c4cb1

pleasejust commented 6 years ago

Thanks! FYI I'm still on 10.12.6, hence HFS+. I'll try, report back.

pleasejust commented 6 years ago

Just tested it out. It didn't work. The cue/bin won't load into the OpenEmu library at all. Using PPFApplier didn't work either. The only way I have been able to successfully apply ppf patches is with ppf-o-matic for windows. Luckily I've got a win10 bootcamp setup. Thanks anyways.

Sappharad commented 6 years ago

I tested it and it worked for me. I was able to load the .cue sheet into BizHawk and the game runs. I don't know what to expect because I've never played it before, but comparing it to the unpatched version you start with 15 health instead of 30 so it seems like something happened.

You know that a .cue file I just a text file right? MultiPatch asks you to create a new file for the patched version, so you need to open the .cue in a text editor and change the name of Track1.bin in the cue sheet to whatever you called the patched version.

What is OpenEmu complaining about?

pleasejust commented 6 years ago

Yes, I know the cue sheet is just text. I guess I must've had a spelling mistake or something. I just tested it again, it loaded but it didn't actually apply the changes. To know if the changes were applied, when you get passed the prologue and start playing as Alucard (long hair, black cape), it will take 2 hits with your sword to kill the giant wolf at the beginning instead of the usual 1. F*cken annoying that the author didn't add something to the title screen. I don't know how you started the prologue with 15 hearts. You're always supposed to start with 30.

Oh, and Openemu doesn't show the user error messages. It'll show stuff in the console but you can't see the console msgs unless you're admin. Apple genius.

Anyways, I'm positive I did it 100% correct and it didn't work. Weird.

pleasejust commented 6 years ago

Hi, just wanted to mention that multipatch does in fact apply ppf files correctly. It turns out that romhacks not working properly with accuracy-focused emulators is a thing. Many rom hacks, especially playstation, don't work properly or at all with mednafen, hence Openemu. But they do work in epsxe. I don't understand how that works because isn't the point of emulators to emulate the hardware? So what are other emulators NOT doing properly that makes some rom hacks work? Why wouldn't authors make sure the hacks work in accurate emulators?

Anyways, thanks 👍

Sappharad commented 6 years ago

Well, if that's the case you mean specifically the beta build in this thread, because the current release clearly applied it wrong.

Thanks for confirming though!

I will close this issue once I've released the next version. I'm going to go ahead and add some other things that have been requested over the years before the next release is ready.