Skip to content
Quake-BackupPublic
forked from j0zzz/JoeQuake

About

Quake engine mod targeted for speedrunning

Resources

Stars

0 stars

Watchers

0 watching

Forks

 
 

Latest commit

 

History

969 Commits

Folders and files

Repository files navigation

Description

JoeQuake is a custom Quake engine designed exclusively for speedrunning.
It was originated from the official id software GLQuake source code.

JoeQuake features several improvements over the vanilla GLQuake client, just to name a few:

  • Independent server-client physics
  • Ghost mode recording
  • Browsable Demos/Maps/Mods menus
  • Restructured, more detailed Options menu
  • Mouse cursor in menu
  • Supporting FitzQuake and RMQ protocols
  • Supporting a wide range of custom mods (including Quake remastered)
  • Colored static and dynamic lighting
  • External texture formats (TGA/PNG/JPG)
  • Capturing demos to AVI file
  • SDA demo database, for directly downloading/watching speedrun records from speeddemosarchive.com/quake/

Binaries

Windows

You can download JoeQuake Windows (x86) releases here

You can also download the latest development binaries here

To build manually, use Visual Studio 2022 or 2026 with the v143 build tools.

Linux

Now including the files to build a Linux binary in the main repository.

# For Ubuntu users
sudo apt-get update
sudo apt-get install cmake build-essential libz-dev libsdl2-dev libjpeg-dev libgl1-mesa-dev libpng-dev libcurl4-openssl-dev
# For Arch users
sudo pacman -Syu base-devel cmake zlib sdl2 libjpeg-turbo mesa libpng curl

...and then run the following from the repository root:

mkdir build
cd build
cmake ..
make
# binary is written to `<repo root>/build/trunk/joequake-gl`

Further documentation:

This branch is heavily based on Sphere's Linux fork of JoeQuake.

macOS

Builds natively with Homebrew (tested on Apple Silicon):

brew install cmake pkgconf sdl2 libpng jpeg-turbo libvorbis mad

...then build as for Linux; the binary is written to <repo root>/build/trunk/joequake-gl. Run it from your Quake directory (the one holding id1 and joequake) or pass -basedir <dir>. If a map stops loading with "Not enough RAM allocated", add -mem 512.

macOS gives this renderer OpenGL 2.1, so the GLSL alias and world shaders are switched off and the classic renderer draws instead; GLSL gamma still works. To play .dz demos, put a macOS build of dzip in your Quake directory named dzip-linux (the name the SDL build runs).

License and Warranty

JoeQuake is released under the GNU GPL license. You may freely redistribute or modify JoeQuake as you wish.

Credits

Contributors

  • Jozsef Szalontai - lead programmer
  • Karol Urbański - lead Linux maintainer; cross platform bgm & ffmpeg capture, research tools, SDA demo browser
  • Sphere - server/client bugfixes, several QoL improvements, initial Linux port
  • Matthew Earl - entire ghost recording feature, SDL & Linux port
  • Philipp Kölmel - complete path tracer feature
  • Cymx - allow unfinished autodemos to be saved
  • Jntr - print entity information in freefly mode, fixes to video capture bugs, Windows ffmpeg capturing
  • Emil Gestsson - player velocity calculation improvement during demo playback

Authors whose code was re-used in JoeQuake

  • A. "Fuh" Nourai (FuhQuake additions)
  • Anton "Tonik" Gavrilov (ZQuake additions)
  • QuakeSpasm developers for every QS addition and their useful hints, tips
    • John Fitzgibbons
    • Ozkan Sezer
    • Eric Wasylishen
    • Axel Gneiting
    • Andrei Drexler
    • Spike
  • Creators of the Minizip library: http://www.winimage.com/zLibDll/minizip.html
  • Creators of the cJSON library: https://github.com/DaveGamble/cJSON
  • Creators of the set library: https://github.com/barrust/set
  • fenix@io.com, for alias model interpolation
  • LordHavoc, for lerping alias model textures
  • Alexander Kovalchuk, for plenty of [sons]Quake additions
  • Anthony Bailey, for the avi capturing code
  • Slawomir Mazurek, for his help on linux
  • CrashFort, for NeaQuake additions
  • R00k, for Tremor/QRack additions

Inspirational persons

  • Attila Csernyik
  • Thomas Stubgaard
  • Denis Nazarov
  • Martin Selinus
  • Nolan Pflug
  • people @ RuneCentral forum, especially Baker and Sputnikutah
  • people @ QuakeSpeedrunning discord channel

External resources

The JoeQuake package contains hi-resolution images made by the following artists:

  • menu graphics, HUD icons, character sets by Moon[Drunk]
  • HUD player faces by PrimeviL
  • console background by Joseph "BootGuyJoe" Hanley
  • mouse cursor (unknown artist, found on gfx.quakeworld.nu)
Jozsef Szalontai
joequake@gmail.com

About

Quake engine mod targeted for speedrunning

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages