Quake Wiki
Quake Wiki

This article appeared in Quake   This article appeared in real life  

WinQuake is the "official" Source port of Quake to Windows. While GLQuake was designed specifically for OpenGL systems and was therefore hardware accelerated, this source port allowed for the software mode to be played in Windows. It lacks support for large resolutions, has no "modern" graphics (such as dynamic shadows) and lacks colored lighting, but is good for lower-end PCs that have Windows installed, or for oldschool players who prefer the game's original look.

The game's version number under WinQuake is shown as 1.09, while the source port's internal version number is 0.994 (latest release from 21 March 1997).

Changes to Vanilla Quake

  • Support for windowed video modes.
  • Many resolutions of the vanilla game are unsupported in modern versions of Windows including 320x200, 320x400, 320x480, 360x200, 360x240, 360x480, 1152x864, 320x350, 640x400, 848x480, and 360x350. This means the only resolutions supported by WinQuake are 320x240, 640x480, 800x600, 1024x768, and 1280x1024. You can restore these legacy resolutions by installing a wrapper such as dgVoodo2.

Compatibility with Modern Systems

The last operating system, on which Winquake could run without any issues, was Windows XP (DirectX version 9.0c).

On newer systems (Windows Vista, 7, 8, 8.1, 10 and 11), it needs a suitable DirectDraw wrapper, otherwise it will very likely exhibit graphical glitches of varying severity, or fail to run altogether. A compatibility mode would not be required, if a wrapper is provided, but it is highly recommended to run the program in Administrator mode.

Version History

Version 0.991

  • Fixed problem with pre-1.07 (DOS) clients connecting to WinQuake.
  • Got rid of "Starting Quake..." dialog when running -dedicated.
  • Added -novbeaf switch to turn off VBE/AF support in case of problems, and updated documentation.
  • Corrected SciTech's U.S. Mail address in documentation.
  • Added joystick bug decriptions and workarounds.

Version 0.992

  • Implemented force_centerview.
  • Fixed backspace bug in dedicated console.
  • Made "player entering game" messages and "say" messages visible in dedicated console.
  • Added description of -heapsize (how to change default memory allocation).
  • Added description of "net play pauses every few seconds" bug.
  • Added description of "playdemo fails across multiple levels" bug.
  • Added hooks for QHost; however, WinQuake won't work with QHostuntil a new version of QHost 3.0, which uses the hooks, isreleased. QHost 3.0 will not work with WinQuake.
  • Fixed bug where savegame descriptions weren't always terminated properly.
  • Fixed bug where running -dedicated reset part of config.cfg to defaults.

Version 0.994

  • Fixed bug where in some cases involving IPX, whenever a new person entered the game, a current player got dumped.
  • Added DirectInput mouse support, and the -dinput command-line to enable it.
  • Added -notriplebuf to disable triple buffering to work around possible problems with some modes on some DirectDraw drivers.
  • Added remembering last window position, and restoring that, rather than centering the window, whenever WinQuake runs in a window. Can be reset with the -resetwinpos command-line switch.
  • Added the vid_minimize command, which minimizes WinQuake if and only if the current mode is windowed.
  • Made it so WinQuake no longer gets suspended when Alt-Tab is used to switch away from a fullscreen session. The means you can Alt-Tab away from fullscreen WinQuake without losing a connection to a Quake server.
  • Added vid_nopageflip console variable to turn off page flipping, and documented page flipping problems this can be used to work around.
  • Documented that CTRL+ALT+DEL (in that order) causes WinQuake to fault on Win95.
  • Fixed the winsock TCP/IP driver so it will not cause a dial-up internet connection to automatically start up when Quake is started. If you start Quake with the internet connection already active, there will be no difference. If you start Quake with it inactive, the connection will be activated when you either try to connect to a server or search for local servers.
  • The local IP address will not always be known at startup now. If it is currently unknown the menu will display "INADDR_ANY". This will be replaced with the real address when it is known. The IP address will become known when: you try to connect to a server, you search for local servers, or you start a server.
  • For multi-homed machines (machines with more than one network adapter and IP adress), you can now force WinQuake to bind to a specific IP adress. There is a new command line option "-ip" that takes an IP address as its parameter.
  • Added vid_fullscreen_mode and ability to select that mode by clicking on the maximize button. Added two commands: vid_fullscreen to switch to vid_fullscreen_mode, and vid_windowed to switch to vid_windowed mode.
  • Changed joystick default to disabled; now it only works if the joystick cvar is set to 1; however, this setting now remains in effect permanently. Added joystick documentation below.
  • Documented dprint only works if developer set to 1.
  • Documented scrunching of MS-DOS windows on Alt-Tab.
  • Documented that NT versions earlier to 4.0 are not supported.
  • Added DirectInput support for devices such as First Person Gaming's Assassin controller. All buttons should now be configurable in WinQuake.
  • Fixed bug where when low-res fullscreen DIB modes selected from the menu sometimes ran very slowly or produced garbled displays.
  • Fixed bug where 1.06 and earlier save files couldn't be loaded by WinQuake.
  • Removed "Net play pauses every few seconds" bug; it was determined not to be a bug, just an artifact of network play.
  • Noted that even when BIOSes do have VESA 2.0 built-in, it's often so buggy that WinQuake crashes in faster configurations, and that SciTech Display Doctor is the easiest way to get reliable VESA support.
  • Added note on ALT+TAB only working if Tab released first.