mirror of
https://github.com/zeldaret/oot.git
synced 2024-11-11 03:39:59 +00:00
b95643b397
* Auto stash before rebase of "upstream/master" * A large number of scenes have been decompiled. * Fixed makefile * Decompiled around 40 scenes. * Removed old file * Finished matching remaining scenes. * Removed old commented out spec lines * Decompiled a few object files. * Reorganized xmls a bit. Updated pu_box overlay to use proper symbol. * Updated texture and object file decomp * Fixed newline issue with ZAPD * Moved scenes/ into the assets/ folder * Fixed a few compile errors * Auto stash before rebase of "upstream/master" * A large number of scenes have been decompiled. * Fixed makefile * Decompiled around 40 scenes. * Removed old file * Finished matching remaining scenes. * Removed old commented out spec lines * Decompiled a few object files. * Reorganized xmls a bit. Updated pu_box overlay to use proper symbol. * Updated texture and object file decomp * Moved scenes/ into the assets/ folder * Fixed a few compile errors * Fixed merge issues. * Fixed makefile merge error * Fixed additional merge error * Fixed several more merge issues * Commented out gameplay_keep and sk2 extraction, since currently unused. * Reenabled gameplay_keep extraction since it's used in the spec * Fixed build error * Removed test struct * Fixed makefile error that would happen on fresh builds * Fixed merge issue * Removed relative paths * Multithreading on extraction, spec uses numbers, few changes to XMLs * Removed redundant code from the extract_assets script * object_sk2 and object_spot09_obj OK * object_spot11_obj OK * object_spot17_obj OK * Test: One of the gameplay_keep dlists given a proper symbol * Updated asset symbol names based on new naming scheme * XMLs use "Offset" instead of "Address" now * Fixed merge issues, updated ovl_Magic_Dark xml and gfx file * Updated to use latest build of ZAPD * Updated ZAPD again * Updated ZAP to remove assimp dependency * Jenkins Test: Added .gitkeep file * Updated ZAP once more * Updated png file name to comply with new naming scheme. * Fixed bad include Co-authored-by: Jack Walker <7463599+Jack-Walker@users.noreply.github.com>
42 lines
No EOL
1.2 KiB
Python
Executable file
42 lines
No EOL
1.2 KiB
Python
Executable file
#!/usr/bin/python3
|
|
import os
|
|
from shutil import copyfile
|
|
from multiprocessing import Pool
|
|
from multiprocessing import cpu_count
|
|
|
|
def Extract(xmlPath, outputPath):
|
|
ExtractFile(xmlPath, outputPath, 1, 0)
|
|
|
|
def ExtractScene(xmlPath, outputPath):
|
|
ExtractFile(xmlPath, outputPath, 1, 1)
|
|
|
|
def ExtractFile(xmlPath, outputPath, genSrcFile, incFilePrefix):
|
|
execStr = "tools/ZAP2/ZAP2.out e -eh -i %s -b baserom/ -o %s -gsf %i -ifp %i -sm tools/ZAP2/SymbolMap_OoTMqDbg.txt" % (xmlPath, outputPath, genSrcFile, incFilePrefix)
|
|
|
|
print(execStr)
|
|
os.system(execStr)
|
|
|
|
def ExtractFunc(fullPath):
|
|
outPath = ("assets/" + fullPath.split("assets/xml/")[1]).split(".xml")[0]
|
|
|
|
if (fullPath.startswith("assets/xml/scenes/")):
|
|
ExtractScene(fullPath, outPath)
|
|
else:
|
|
Extract(fullPath, outPath)
|
|
|
|
xmlFiles = []
|
|
|
|
for currentPath, folders, files in os.walk("assets"):
|
|
for file in files:
|
|
fullPath = os.path.join(currentPath, file)
|
|
if file.endswith(".xml") and currentPath.startswith("assets/xml"):
|
|
outPath = ("assets/" + fullPath.split("assets/xml/")[1]).split(".xml")[0]
|
|
xmlFiles.append(fullPath)
|
|
|
|
numCores = cpu_count()
|
|
print("Extracting assets with " + str(numCores) + " CPU cores.")
|
|
p = Pool(numCores)
|
|
p.map(ExtractFunc, xmlFiles)
|
|
|
|
|
|
#os.system("make resources") |