#!/bin/sh xonotic=$1; shift demo=$1; shift # rest: command line options to use demobase=${demo##*/} cp "$demo" data/"$demobase" USE_RLWRAP=no strace -qo strace.txt -f -e trace=open ./all run -nohome -readonly -forceqmenu -window "$@" -demo "$demobase" allfiles() { "output/$1" } rm -rf output while [ -n "$allfiles" ]; do l=$allfiles allfiles= for f in $l; do [ -f "$f" ] || continue fn=${f#*/*/} case "$f" in */csprogs.dat) # spam, skip it ;; */unifont-*.ttf) # spam, skip it ;; *.mapinfo) <"$f" include_as "$fn" # also include the map pk3 content n=${f##*/} n=${n%.*} rm -rf data/temp-$n mkdir data/temp-$n ( cd data/temp-$n unzip ../../data/"$n"-*.pk3 ) allfiles=$allfiles" `find data/temp-$n -type f`" ;; *) <"$f" include_as "$fn" ;; esac done done export do_jpeg=true export do_jpeg_if_not_dds=false export jpeg_qual_rgb=70 export jpeg_qual_a=90 export do_dds=false export do_ogg=true export ogg_ogg=true export ogg_qual=1 export del_src=true export git_src_repo= cd output find . -type f -print0 | xargs -0 ../misc/tools/cached-converter.sh cd .. mv data/"$demobase" output/ echo "-xonotic -nohome -readonly -forceqmenu +bind ESCAPE quit $* -demo $demobase" > output/darkplaces.opt rm output.pk3 ( cd output && 7za a -tzip -mx=9 ../output.pk3 . ) cp "$xonotic" output.exe cat output.pk3 >> output.exe