Quake/en

From Valve Developer Community
< Quake(Redirected from Quake (1996)/en)
Jump to: navigation, search
Info icon
This page documents information about a third-party game running on a non-Valve engine. This information is documented here because it has technical and/or historical relevance to Valve's engines.

Quake Quake is a 3D first-person shooter released in 1996 by id Software. Its engine was licensed out to many companies, including Valve. GoldSrc is based off of Quake engine code (with some Quake II code), with it's successors Source and Source 2 both still retaining some residual Quake code.

The Quake Engine Quake Engine introduced many of the concepts still used in Source today, such as the modern variant of the BSP, the use of a PVS and PAS, precomputated lightmaps, visleafs and brush entities. Early GoldSrc multiplayer was based off the QuakeWorld multiplayer code (until 2001, when some Quake III[citation needed] code was added).

The Quake Engine and its successor, the Quake II Engine, are now both retroactively referred to as id Tech 2. Both engines have been released as free and open source under the GPLv2 license, allowing for many source ports to be created, which add quality-of-life improvements and are now the preferred way of playing the game, including an official source port released in 2021.

Expansions/DLC

  • Mission Pack No. 1: Scourge of Armagon is a three-episode expansion pack by Hipnotic Interactive (now Ritual).
  • Mission Pack No. 2: Dissolution of Eternity is a two-episode expansion pack by Rogue Entertainment.
  • Dimension of the Past is an extra episode created by MachineGames and released for free as a gift for the game's 20th anniversary. This was also included in the Quake Remaster (2021).

New gameplay elements

  • Rocket Jump
  • Grenade Jump
  • Power ups
    • Pentagram of Protection
    • Ring of Shadows
    • Quad Damage
  • Unrestricted movement compared to Doom (1993) where at least two players and enemies[Clarify] can be in the same vertical space.

Gameplay elements

  • Telefrag

Compilers

Quake also uses three compiler tools in compiling a map: QBSP, VIS, and LIGHT. The code for these was used as the basis of the compiling tools used by the compilers used by the Valve engine map compilers, as seen below:

Original Quake Quake compilers Original GoldSrc GoldSrc compilers GoldSrc ZHLT, VHLT, and derivatives Source Source compilers Source 2 Source 2 compilers
CSG part of QBSP QCSG HLCSG part of VBSP resourcecompiler
BSP QBSP (Source code) QBSP2 HLBSP VBSP
VIS VIS (Source code) VIS HLVIS VVIS
RAD LIGHT, no radiosity lighting (Source code) QRAD HLRAD VRAD VRAD2 (Half-Life: Alyx and earlier)
VRAD3 (in all games since Counter-Strike 2)

ericw-tools uses the same nomenclature as the original Quake compilers.

2021 Remaster

In 2021, Nightdive Studios released an official source port with new remastered lighting and models, using the Kex Engine framework to connect the underlying Quake engine code to modern APIs. The remaster, officially titled "Quake Enhanced", but also colloquially known as "Quake EX" or simply "QEX", runs under Vulkan on Windows 10 and later, and can also run on Linux and the Steam Deck using Proton. It can also unofficially run on Windows 7-8.1, without multiplayer support, and can be forced to run under DirectX 11 by using the +r_rhirenderfamily d3d11 command-line argument.

Although the engine code for the 2021 remaster is closed-source, the updated QuakeC game code has been released under the GPLv2 on id Software's GitHub. This is the first time the game code for the mission packs has been released under this license, as they were previously only available under a less permissive license.[Clarify]

Source ports

Since the release of the Quake source code, there are various source ports available:

  • Quakespasm - Limit-breaking source port focused on vanilla accuracy. Fork of the long-deprecated FitzQuake. Actively maintained.
    • Quakespasm-Spiked (QSS) - Fork of Quakespasm that can run at higher frame rates than 72FPS without breaking physics.
      • vkQuake - Fork of QSS running on Vulkan, with additional features. No longer maintained as of 9 May 2023.
  • TASQuake - a port which allows to record inputs for tool assisted speedrunning (TAS) as .qtas files.
  • FTE FTEQW - Source port focused on standalone game development. Notably includes clean-room implementations of GoldSrc file formats (BSP, MDL, WAD3, HLSPR), being used for clean-room reverse-engineered ports of Counter-Strike Counter-Strike 1.5 (as FreeCS FreeCS) and Half-Life Half-Life Deathmatch (as FreeHL). Actively maintained.

Bugs/Limitations

Icon-broom.png
This article or section needs to be cleaned up to conform to a higher standard of quality because:
Clean up some of the grammar and the overuse of ellipses (...).
For help, see the VDC Editing Help and Wikipedia cleanup process. Also, remember to check for any notes left by the tagger at this article's talk page.
Icon-Bug.pngBug:Overbright lighting (as found in the original software renderer) was broken on GLQuake with no options to re-enabling it via any command, which makes the color less saturated and lighting much darker.
GoldSrc GoldSrc originally fixed this in its OpenGL renderer (disableable with gl_overbright 0, but it was broken again in an update that added multitexturing support. Details for this bug on GoldSrc can be found on it's page about the engine itself.
Modern source ports fix this, via a gl_overbright command, like GoldSrc.
Confirm.pngConfirm: Does this discrepancy exist in Quake 2? It's probably fixed in IdTech 3, as that has r_overbrightbits (which works a bit differently than Quake and GoldSrc).
Icon-Bug.pngBug:Fullbright texels are broken in GLQuake[Elaborate?].
Icon-Bug.pngBug:Zigzagging... See Matt's Ramblings, The code behind Quake's movement tricks explained (bunny-hopping, wall-running, and zig-zagging
Icon-Bug.pngBug:Wall running... See Matt's Ramblings, The code behind Quake's movement tricks explained (bunny-hopping, wall-running, and zig-zagging
Icon-Bug.pngBug:Bunny Hopping where forward isn't held in the air... See Matt's Ramblings, The code behind Quake's movement tricks explained (bunny-hopping, wall-running, and zig-zagging
Icon-Bug.pngBug:Strafe Jumping where forward held in the air... See Matt's Ramblings, Strafe-jumping physics explained

See also

External links