Skip to content

Instantly share code, notes, and snippets.

@desbo
Last active August 22, 2022 23:14
Show Gist options
  • Save desbo/461d91e2dea2b4ee31956f01eb9f1148 to your computer and use it in GitHub Desktop.
Save desbo/461d91e2dea2b4ee31956f01eb9f1148 to your computer and use it in GitHub Desktop.
Quake 3 Arena macOS quick start guide
  1. Install Q3 fork ioquake3 along with original game patch files (baseq3/pak{1-8}.pk3, missionpack/pak{1-3}.pk3)

    brew cask reinstall ioquake3
    
  2. Build ioquake3 master branch

    git clone https://github.com/ioquake/ioq3
    cd ioq3
    ./make-macosx.sh x86_64
    rm -rf /Applications/ioquake3/ioquake3-1.36.app /Applications/ioquake3/ioquake3fe-1.36.app 
    cp -R build/release-darwin-x86_64/{renderer_opengl1_x86_64.dylib,renderer_opengl2_x86_64.dylib,libSDL2-2.0.0.dylib,ioquake3.app} /Applications/ioquake3/
    
  3. Install pak0.pk3 main resource file

    wget -O /Applications/ioquake3/baseq3/pak0.pk3 https://raw.githubusercontent.com/nrempel/q3-server/master/baseq3/pak0.pk3
    shasum -c- <<< "7ce8b3910620cd50a09e4f1100f426e8c6180f68895d589f80e6bd95af54bcae  /Applications/ioquake3/baseq3/pak0.pk3"
    
  4. Download "High-Resolution Creative Commons Texture Replacement Pack" by Paul Marshall (aka Kpax)

    wget -O xcsv_hires.zip https://ioquake3.org/files/xcsv_hires.zip && \
    unzip xcsv_hires.zip xcsv_bq3hi-res.pk3 -d /Applications/ioquake3/baseq3 && \
    rm xcsv_hires.zip
    
  5. Download "High Quality Quake" pack from moddb: https://www.moddb.com/mods/high-quality-quake

    wget -O q3a-hqq-v36.zip 'https://www.moddb.com/downloads/mirror/121410/122/09848af35b052e17d8f40680c9a98cfb/?referer=https%3A%2F%2Fwww.moddb.com%2Fmods%2Fhigh-quality-quake%2Fdownloads' && \
    mkdir -p /Applications/ioquake3/hqq
    unzip q3a-hqq-v36.zip pak9hqq36.pk3 -d /Applications/ioquake3/hqq && \
    rm q3a-hqq-v36.zip
    
  6. Take opinionated config compiled by Oliver: https://swissmacuser.ch/how-you-want-to-run-quake-iii-arena-in-2018-with-high-definition-graphics-120-fps-on-5k-resolution/

    test -f /Applications/ioquake3/baseq3/autoexec.cfg || \
    wget -O /Applications/ioquake3/baseq3/autoexec.cfg 'https://gist.githubusercontent.com/oliveratgithub/b2df8ff2a76d1ff406f033701de66628/raw/2a6a856e3da322dca0e7090bb911244e11087c52/autoexec.cfg'
    
  7. Install CPM-A mod

    wget https://cdn.playmorepromode.com/files/cpma-mappack-full.zip && \
    unzip cpma-mappack-full.zip -d /Applications/ioquake3/baseq3 && \
    rm cpma-mappack-full.zip
    wget https://cdn.playmorepromode.com/files/cpma/cpma-1.52-nomaps.zip && \
    unzip cpma-1.52-nomaps.zip -d /Applications/ioquake3/baseq3 && \
    rm cpma-1.52-nomaps.zip
    
  8. Strip group & world-writable permissions

    chmod -R go-w /Applications/ioquake3
    
  9. VERY IMPORTANT! DO NOT SKIP! edit autoexec.cfg file to set your actual screen resolution (edit r_customwidth and r_customheight)

    open -t /Applications/ioquake3/baseq3/autoexec.cfg
    
  10. Consider downgrading from opengl2 renderer back to opengl1

    It seems that on some maps opengl2 (https://github.com/ioquake/ioq3/blob/master/opengl2-readme.md) renderer have some lightning glitches.

    sed -i '' -e 's/^seta cl_renderer.*/seta cl_renderer "opengl2"/g' /Applications/ioquake3/baseq3/autoexec.cfg
    
  11. Start the game

    /Applications/ioquake3/ioquake3-1.36.app/Contents/MacOS/ioquake3.ub
    
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment