fgptool
fgptool is a command-line utility that can crack the filepath hashes in The Orange Box PS3 file groups (.GRP), read their metadata, and dump all contained files. It will also add the cracked filepath data to processed file groups, so programs using
SourcePP such as
VPKEdit can open the contents of the file group using the cracked filepaths.
Background
File groups in the Orange Box PS3 port store a copy of every asset the engine needs to run while a given map is open. There are a couple other ancillary file groups that are used for streaming sounds, particularly large files, and to initialize the selected game.
Each file group stores a collection of files, as well as an optional loading screen. Every map file group as well as INIT.GRP should have a valid loading screen. Files stored in the groups are stored with hashed 32-bit paths, and none of the original file paths are kept. Because of the computational complexity involved with cracking a hash through brute force, it is necessary to test the hash against a rainbow table based on file paths taken from other releases of Orange Box games.
Basic usage
- Download the appropriate executable for your platform from the latest GitHub release.
- Download the rainbow tables for the game folders you want to crack the contents of. They are named
GAME.kv. - Place the executable and the rainbow tables inside the FILEGROUPS folder.
- Ensure the file groups are marked editable, since RPCS3 likes to make them read-only.
- Drag the game folder(s) to crack the contents of on top of the executable.
- This will be enough to edit the file groups and make custom mods or explore 99.5% of their contents.
Extended usage
There are several modes that can be specified, with CRACK being the default.
EXTRACT- Extracts filepaths from a given search path. Multiple search paths may be entered to create a larger table, but take care to use only most relevant search path(s) for each table since the hashing algorithm is very poor and conflicts are likely if multiple are specified. This will generate a file calledmappings.kvnext to the executable.CRACK- Cracks filepaths in specific file group(s), or all file groups in the given directory or directories, usingGAME.kvormappings.kv.DUMP- Dumps files in specific file group(s), or all file groups in the given directory or directories, to disk using known filepaths.TEST- Tests filepaths against hashes in a specific file group, and saves any successful matches.META- Print information about how many filepaths are still not cracked, as well as the filepath of the loading screen.
See also
VPKEdit (edits .GRPfile groups)
External links
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||