.archive and index loading

Issue #5 open
Jason Couture created an issue

I've been able to extract every file by following these rules:

  1. Open Patch\patch.index first
  2. Follow rules outlined below to find other index files and open them
  3. Merge all directories in all index files

When attempting to locate a file:

  1. for {indexname}.index, first attempt to locate a file {indexname}\path\to\file. If the file exists, compute the SHA2 hash of the file, if it matches, use this file.
  2. check if Patch{indexname}.archive exists, if it does, attempt to locate the file in the .archive. If found, use this file.
  3. locate file in Patch\CoreData.archive

When following these rules in C#, I can open 100% of all files listed in any .index. The .index files in Patch.index are located in, well, patch\, and ClientData/ClientData64.index are also located the same. Not sure if the game will load unpacked files like this, but it seems logical since that's how Patch, Bootstrap, and ClientData(64) work.

Comments (8)

  1. Log in to comment