The goal of the project is to allow users to build their own packs, based on suggested files and folder layouts compiled by SmokeMonster or other creators.
What is an SMDB? The SMDBs generated by the parse_pack
script
describe an exact file and its location withing a folder
hierarchy. Each SMDB entry includes a single SHA256
hash and a
folder location/file-name.
The build_pack
script takes the SMDB information and organizes a set
of unorganized files to match an exact layout.
parse_pack.py For making SMDBs (example command):
"C:\XXX\parse_pack.py" -f "C:\XXX\Folder to be parsed" -o "C:\XXX\SMDB.txt"
-f
(or --folder
) indicates the target ROM pack
-o
(or --output
) is the text file that will contain the hash
values, filenames, and folder structure
build_pack.py For building a pack based on a pre-made SMDB (example command):
"C:\XXX\build_pack.py" -i "C:\XXX\Folder with unorganized ROMs" -d "C:\XXX\SMDB.txt" -o "C:\XXX\Output folder for rebuilt pack" -m "C:\XXX\Missing.txt"
-i
(or --input_folder
) is the folder containing the unorganized
ROMs
-d
(or --database
) is the SMDB file describing the way your ROMs
are organized
-o
(or --output_folder
) is the folder in which to build the ROM
pack
-m
(or --missing
) is the text file that will list the ROMs missing
in order to reach the 100% mark
Depending on your python installation, you may need to begin your
command with the location of python.exe
(for example,
C:\Users\XXX\AppData\Local\Programs\Python\Python36-32\python.exe
). More
information for pack builders in the
wiki.
python 3.5 or newer
Linux, MacOS, or Windows
(Linux and MacOS users might need to convert the script and SMDB files
first with the command dos2unix
)
Scripts and code by @frederic-mahe
https://github.com/frederic-mahe
EverDrive Pack SMDBs by @SmokeMonsterPacks