Skip to content

Instantly share code, notes, and snippets.

@UniTrader
Last active December 3, 2018 17:59
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save UniTrader/ac299e3c0365ddaaa1ee4a897552f8b5 to your computer and use it in GitHub Desktop.
Save UniTrader/ac299e3c0365ddaaa1ee4a897552f8b5 to your computer and use it in GitHub Desktop.
#!/bin/bash
toolpath="$PWD"
echo $toolpath
cd ../X\ Rebirth
date +"%T"
echo "================================================================"
# Delete previously extracted Files - we want a fresh extraction
if [ -d XR_extracted ]; then
echo "============= removing previously extracted Files.. ============"
rm -rf XR_extracted
echo "============= done.™ ==========================================="
fi
date +"%T"
# Create Folder for Extracting all Cats/Dats and extract them there
mkdir XR_extracted
echo "============= extracting current Game files... ================="
wine "$toolpath/XRCatTool.exe" -in *.cat -out XR_extracted
echo "============= done.™ ==========================================="
date +"%T"
echo "============= converting mesh files... ========================"
# Convert all mesh files
for f in $(find XR_extracted/assets -name '*.xml'); do
echo -ne "================================================================"\\r
echo "= converting $f"
wine "$toolpath/XRConvertersMain.exe" importxmf ./XR_extracted $f
done
echo "============= done.™ ==========================================="
date +"%T"
#
# Do the same for all Extensions present - seperate cases for subst(itute) and ext(ension) cats/dats
for f in extensions/*; do
echo "================================================================"
date +"%T"
echo -ne "================================================================"\\r
echo "=========== extracting $f "
if [ -f "$f/ext_01.cat" ]; then
echo "= ext part ====================================================="
if [ -d "$f/ext" ]; then
rm -rf $f/ext
fi
mkdir "$f/ext"
wine "$toolpath/XRCatTool.exe" -in $f/ext_*.cat -out "$f/ext"
fi
if [ -f "$f/subst_01.cat" ]; then
echo "= subst part ===================================================="
if [ -d "$f/subst" ]; then
rm -rf $f/subst
fi
mkdir "$f/subst"
wine "$toolpath/XRCatTool.exe" -in $f/subst_*.cat -out "$f/subst"
fi
echo "= done.™ ======================================================="
done
echo "= Extraction of Game and Mod Files complete - have fun ;) ======"
echo "================================================================"
date +"%T"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment