Skip to content

Instantly share code, notes, and snippets.

@novocaine
Last active May 29, 2020 14:50
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 novocaine/a4d42b032314cc50e228f47181009c84 to your computer and use it in GitHub Desktop.
Save novocaine/a4d42b032314cc50e228f47181009c84 to your computer and use it in GitHub Desktop.
Shell script to build and install Quake 3 Arena Demo using ioquake on OS X x86_64
#!/bin/bash
set -ex
mkdir q3a
cd q3a
# checkout and build for x86_64
git clone https://github.com/ioquake/ioq3
cd ioq3
./make-macosx.sh x86_64
cd ..
# get (legally free) q3a demo levels from the original linux release.
# if this mirror breaks there will surely be others, just google the filename
curl https://ftp.gwdg.de/pub/misc/ftp.idsoftware.com/idstuff/quake3/linux/linuxq3ademo-1.11-6.x86.gz.sh -o linuxq3ademo-1.11-6.x86.gz.sh
mkdir linuxq3ademo && tail +165 ./linuxq3ademo-1.11-6.x86.gz.sh | gzip -cd | tar xvof - -C linuxq3ademo
cp linuxq3ademo/demoq3/pak0.pk3 ioq3/build/release-darwin-x86_64/ioquake3.app/Contents/MacOS/baseq3
# get patched pk3s from ioquake and copy them in
curl https://www.ioquake3.org/data/quake3-latest-pk3s.zip --referer https://ioquake3.org/extras/patch-data -o quake3-latest-pk3s.zip
unzip quake3-latest-pk3s.zip
cp quake3-latest-pk3s/missionpack/* ioq3/build/release-darwin-x86_64/ioquake3.app/Contents/MacOS/missionpack
cp quake3-latest-pk3s/baseq3/* ioq3/build/release-darwin-x86_64/ioquake3.app/Contents/MacOS/baseq3
echo All done, run q3a/ioq3/build/release-darwin-x86_64/ioquake3.app/Contents/MacOS/ioquake3
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment