-
Notifications
You must be signed in to change notification settings - Fork 13
Open
Description
I tried to do an extraction of the VPK file and repackaged it.
def extract():
pak1 = vpk.open("E:/Program Files (x86)/Steam/steamapps/workshop/content/570/2967026351/2967026351.vpk")
for filepath in pak1:
print(filepath)
file = pak1.get_file(filepath)
path = os.path.join("./Lost_Temple", filepath)
directory = os.path.dirname(path)
if not os.path.exists(directory):
os.makedirs(directory, exist_ok=True)
file.save(path)
def pack_vpk():
pak = vpk.new("./Lost_Temple")
pak.save("E:/Program Files (x86)/Steam/steamapps/workshop/content/570/2967026351/2967026352.vpk")
But when I open 2967026352.vpk
using GCFSpace, I get an error: Could not open 2967026352.vpk. Invalid file: The file map is not within mapping bounds.
Then I realized that the repackaged VPK tree_length didn't match the source file.
def print_vpk():
pak1 = vpk.open("E:/Program Files (x86)/Steam/steamapps/workshop/content/570/2967026351/2967026351.vpk")
# 242158
print(pak1.tree_length)
pak2 = vpk.open("E:/Program Files (x86)/Steam/steamapps/workshop/content/570/2967026351/2967026352.vpk")
# 242114
print(pak2.tree_length)
Did I do something wrong?
Metadata
Metadata
Assignees
Labels
No labels