shawngmc / game-extraction-toolbox

Python tools for extracting ROMs from games and investigating files
MIT License
66 stars 7 forks source link

Future: Final Fight Double Impact for PS3/Xbox 360 #46

Open tydog98 opened 1 year ago

tydog98 commented 1 year ago

I cannot verify if this information is true for the Xbox 360 version of this game but I'm assuming it is. This game contains both arcade versions of Final Fight and Magic Sword.

In the USRDIR directory of the Final Fight Double Impact folder for PS3 there is a gamedata.fpk file. Using this FPK extractor script for quickbms I was able to extract all the files. These files contain all the files required to make ffight.zip and msword.zip.

msword.zip passes CRC checks but ffight.zip doesn't as the s224b.1a file has a different sum for some reason. Both these files work on the "Current" MAME core via Retroarch.

tydog98 commented 1 year ago

Actually the difference in sums may have to do with Final Fight being the censored version of the game.

RealRelativeEase commented 1 year ago

I've been trying to extract Magic Sword using quickbms and the FPK extractor script, copying the content of the script into a text file and opening it with quickbms. But I keep getting the following error message:

offset filesize filename

  • signature of 3 bytes at offset 0x00000000 doesn't match the one expected by the script:

this one: "" 0f f5 12 ...

expected: "FKP" 46 4b 50 FKP

  • 0 files found in 1 seconds coverage file 0 0% 3 93810120 . offset 00000003

Do I need to modify the script in order to extract the files?

tydog98 commented 1 year ago

I did not edit anything in the script. Are you sure you're extracting the right file? It doesn't look like the first 3 bytes are an FPK file.

RealRelativeEase commented 1 year ago

The file is named "GameData.fpk", it has a file size of 89.4 MB (CRC32: 2FD48253). I've bought the game on the European store, I'm not sure if that might cause any issues with the script.

Also, I'm using the Xbox version instead of PS3.

tydog98 commented 1 year ago

Honestly I'm not really sure then. Maybe try to hex edit the first 3 bytes to be correct but other than that I have no idea.

RealRelativeEase commented 1 year ago

I've edited the first three bytes in accordance with the error message, but it still won't work:

offset filesize filename

28040200 1913651712 00000000.dat

Error: incomplete input file 0: C:\Users[user]\Downloads\quickbms\FF\GameData.fpk Can't read 64 bytes from offset 28040200. Anyway don't worry, it's possible that the BMS script has been written to exit in this way if it's reached the end of the archive so check it or contact its author or verify that all the files have been extracted. Please check the following coverage information to know if it's ok.

coverage file 0 0% 84 93810120 . offset 28040200

Last script line before the error or that produced the error: 15 log NAME OFFSET SIZE

  • OFFSET 0x28040200
  • SIZE 0x72100200 coverage file 0 0% 84 93810120 . offset 28040200

Just to rule out that I've made a mistake when trying to apply the script, I've copied and pasted the code from the post into a new .txt file, containing just that string of code, unaltered.