manifest.proto 886 B

123456789101112131415161718192021222324252627
  1. /*
  2. Information kindly provided by EternalStudentDesuKa
  3. */
  4. syntax = "proto3";
  5. message Manifest {
  6. repeated FileInfo files = 1;
  7. }
  8. message FileInfo {
  9. string filename = 1; // Path to the file relative to the game directory
  10. repeated ChunkInfo chunks = 2;
  11. int32 flags = 3; // 0 for files, 64 for directories. No other values were ever observed
  12. int32 size = 4; // Size of the entire file
  13. string md5 = 5; // MD5 checksum of the entire file
  14. }
  15. message ChunkInfo {
  16. string chunk_id = 1;
  17. string md5 = 2; // MD5 checksum of the uncompressed chunk data
  18. uint64 offset = 3; // Offset at which this chunk should be put into the resulting file
  19. uint32 compressed_size = 4; // Size of the compressed chunk
  20. uint32 uncompressed_size = 5; // Size of the uncompressed chunk
  21. uint64 xxhash = 6; // Xxhash checksum of the compressed chunk data
  22. }