Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #
- # Tool to extract atp files from the asset server cache.
- # Usage: python2 atp-extract.py -[lxa] [filename]
- #
- # cd into the c:\Users\BettySpaghetti\AppData\Roaming\High Fidelity\assignment-client\assets dir
- # run 'python2 atp-extract.py -l' to list all files
- # run 'python2 atp-extract.py -x file' to extract that particular file to the current directory.
- # run 'python2 atp-extract.py -a' to extract all files.
- #
- import os, json, sys, shutil
- def loadMapFile(filename):
- with open(filename, 'r') as f:
- return json.load(f)
- def extractFile(assetMap, filename):
- if filename != None:
- assetFilename = assetMap.get("/" + filename)
- if assetFilename != None:
- dir = os.path.dirname(filename)
- if dir != "" and not os.path.exists(dir):
- os.makedirs(dir)
- shutil.copy("files/" + assetFilename, filename)
- return True
- return False
- option = sys.argv[1]
- if option == '-l':
- assetMap = loadMapFile("map.json")
- for key, value in assetMap.iteritems():
- print key[1:]
- elif option == '-x':
- assetMap = loadMapFile("map.json")
- outputFilename = sys.argv[2]
- if not extractFile(assetMap, outputFilename):
- print("Error could not extract file: \"" + outputFilename + "\"")
- elif option == '-a':
- assetMap = loadMapFile("map.json")
- for key, value in assetMap.iteritems():
- print("Extracting " + key[1:])
- extractFile(assetMap, key[1:])
- else:
- print("unsuported option \"" + option + "\"")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement