Menu

Tree [0df9a1] master /
 History

HTTPS access


File Date Author Commit
 RPM 2020-06-21 Bill Currie Bill Currie [6d5ffa] [build] Move to non-recursive make
 config.d 2025-01-12 Bill Currie Bill Currie [ccd42c] [x11] Support the XScreenSaver extension
 debian 2023-11-23 Bill Currie Bill Currie [97a962] Do the distcheck dance
 desktop 2020-06-21 Bill Currie Bill Currie [6d5ffa] [build] Move to non-recursive make
 doc 2024-11-03 Bill Currie Bill Currie [88c67b] [doc] Update doxygen config via doxygen
 hw 2024-01-04 Bill Currie Bill Currie [0ed4df] [quakeio] Rework Qgetline to use dstring
 include 2025-01-20 Bill Currie Bill Currie [21cf63] [qtypes] Remove field_offset macro
 libs 2025-02-18 Bill Currie Bill Currie [0df9a1] [ruamoko] Update function names for IMP button/...
 m4 2024-09-17 Bill Currie Bill Currie [9b49ed] [build] Update pkg.m4
 nq 2025-01-12 Bill Currie Bill Currie [ccd42c] [x11] Support the XScreenSaver extension
 pkg-config 2020-06-21 Bill Currie Bill Currie [6d5ffa] [build] Move to non-recursive make
 qtv 2024-01-01 Bill Currie Bill Currie [35eec0] [ecs] Implement hierarchies as components
 qw 2025-01-20 Bill Currie Bill Currie [21cf63] [qtypes] Remove field_offset macro
 ruamoko 2025-02-17 Bill Currie Bill Currie [5856ad] [ruamoko] Add no_va_list to obj_msgSend's defin...
 tools 2025-02-18 Bill Currie Bill Currie [02bf7d] [qfcc] Correct an error message
 .gitignore 2024-06-23 Bill Currie Bill Currie [c681d3] [qfcc] Tidy up the doc structure a little
 COPYING 2001-02-19 Bill Currie Bill Currie [87854e] initial checkin of most recent newtree and nuq(...
 INSTALL 2024-11-26 Bill Currie Bill Currie [23ec8d] [build] Document --disable-Werror for git builds
 Makefile.am 2025-02-16 Bill Currie Bill Currie [67003c] [vulkan] Use qfcc for compute shaders
 NEWS 2013-01-23 Bill Currie Bill Currie [03246e] Update for 0.7.2.
 README.md 2023-01-11 Snakespeed Snakespeed [a30fdc] small typo fix
 TODO 2011-09-07 Bill Currie Bill Currie [9ffa1f] Detect the silent death of the jack client thread.
 bootstrap 2023-11-18 Bill Currie Bill Currie [154548] [debian] Clear out a large pile of bitrot
 configure.ac 2023-12-04 Bill Currie Bill Currie [e30f2c] [util] Add a wrapper for libgcc's backtrace fun...
 packages 2023-11-17 Bill Currie Bill Currie [053e9f] Add more library packages for building

Read Me

QuakeForge

QuakeForge is descended from the original Quake engine as released by Id
Software in December 1999, and can be used to play original Quake and
QuakeWorld games and mods (including many modern mods). While this will
always be the case, development continues.

However, QuakeForge is not just a Quake engine, but includes a
collection of tools for creating Quake mods, and is progressing towards
being a more general game engine.

Quake and QuakeWorld

Support for Quake and QuakeWorld is split into two program sets: nq for
Quake and qw-client for QuakeWorld, with the target system as an
additional suffix: -x11 For the X Window system (Linux, BSD, etc), -win
for MS Windows (plus others that are not currently maintained).

Both nq and qw-client support multiple renderers: 8-bit software, 32-bit
software, OpenGL 2, EGL (mostly, one non-EGL function is used), and
Vulkan (very WIP), all within the one executable.

Dedicated servers for both Quake (nq-server) and QuakeWorld (qw-server)
are included, as well as a master server for QuakeWorld (qw-master).

Tools

QuakeForge includes several tools for working with Quake data:
- bsp2image produces wireframe images from Quake maps (bsp files)
- io_mesh_qfmdl for importing and exporting Quake mdl files to/from
Blender
- io_qfmap for Quake map source files (WIP Blender addon)
- pak create, list and extract Quake pak files. There's also zpak which
can be used to compress the contents of pak files using gzip
(QuakeForge has transparent support for gzip compressed files)
- qfbsp for compiling map files to bsp files, includes support for
vis clusters, and can be used to extract data and information from bsp
files.
- qfcc is QuakeForge's version of qcc, but is significantly more
advanced, with support for standard C syntax, including most C types,
as well as Objective-C object oriented programming (Ruamoko). Most of
the advanced features require the QuakeForge engine, but qfcc can
produce progs files compatible with the original Quake engine with
limited support for some of the advanced featuers (C syntax, reduced
global usage, some additional operators (eg, better bit operators,
remainder (%)). Includes qfprogs for inspecting progs files.
- qflight creates lightmaps for Quake maps
- qfvis for compiling PVS data for Quake maps. One of the faster
implementations available.
- Plus a few others in various stages of usefulness: qflmp, qfmodelgen,
qfspritegen, wad, qfwavinfo

Building

For now, please refer to INSTALL for information on building on Linux.
Building for windows is done by cross-compiling using MXE. There are
scripts in tools/mingw and tools/mingw64 that automate the process of
configuring and building both the tools run on the build-host and the
windows targets.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.