Team Beef's QuakeQuest — the standalone VR Quake for Quest headsets —
ported to PCVR over OpenXR.
This is not a new VR mod. It is Simon Brown's VR work brought across to a
desktop PC from the exact DarkPlaces commit his Android build forked, with
nothing changed except what PC requires. If you have played QuakeQuest on a
Quest, this plays identically, at whatever resolution your PC can drive.
Developed and confirmed on a Quest 3 over Virtual Desktop (VDXR) at
3993x4243 per eye, 72Hz.
How to use it
- Download
quake-vr-pc.zipbelow and extract it anywhere. - Run
Setup.batonce. - Start Virtual Desktop and connect it first, then run
Quake VR.bat.
That is the whole thing if you own Quake on Steam or GOG. Setup finds your
install and copies the game, every expansion it has and the soundtrack out of
it, then builds the menu artwork and the MachineGames episodes' message text
from your own data. It needs Python 3, and Pillow as well for the artwork.
Quake VR (flatscreen).bat runs it in a window with no headset, which is
useful for checking settings.
No game data is included and none ever will be. Quake is id Software's.
The 2021 re-release on Steam or GOG is the easiest source — it has Quake, both
mission packs and all four official episodes, and Setup.bat will find and add
them for you.
What it does
- Everything QuakeQuest does — stereo, head tracking, room scale, the weapon in
hand, the weapon wheel, haptics, the big-screen menus, snap and smooth
turning. - All six games reachable in the headset from Single Player, without going
back to the desktop: Quake, Scourge of Armagon, Dissolution of Eternity,
Dimension of the Past, Dimension of the Machine and Dawn of the Machine. - A PC Options page — supersampling, anti-aliasing, particle style (which
is the red blood switch), the door Z-fighting fix, HUD height and the desktop
window. Every one of them defaults to Team Beef's own value, so an untouched
install behaves exactly as their game does. - A desktop mirror worth streaming — borderless full screen by default,
Alt+Enter for a window, resizable, and cropped to the shape of your monitor
rather than squashed into it.
How faithful it is
The port was built against a strict 1:1 reference build kept alongside it the
whole way: QuakeQuest on PC with nothing added, down to reproducing five
defects of theirs deliberately — black blood included, which was verified
against their standalone on a Quest rather than assumed. No PC addition was
made until the 1:1 build behaved identically to their release.
Getting the MachineGames episodes to run
The three MachineGames episodes are built on the 2021 re-release's QuakeC,
which expects its own engine in several places. Four faults had to be fixed:
- a cvar their progs set about seventy times a second, which this engine did
not have — every failed set printed a warning into the notify area, which in
a headset is a permanent line of text just above comfortable view - one malformed model out of 228, storing a field as floating-point negative
zero, which made a stock bounds check fatal and threw you out of Dawn of the
Machine - their achievement message, sent on a number DarkPlaces already uses for
something else, which desynchronised the stream and ended the session ex_centerprint,ex_sprintandex_bprint— functions their QuakeC
declares with empty bodies for their own engine to fill, which silently
swallowed every key, secret and story message in all three episodes
Their message text is a localisation token throughout; the real wording is
recovered on your machine from their own level editor files and from classic
Quake's progs.
PROGRESS.md in the repository is the full development log, with the evidence
for all of it.
Known issues
- The in-game Mods browser drops out of VR. Changing gamedir ends in
vid_restart, which destroys the GL context the OpenXR swapchain images
belong to. Use the Single Player game list instead — it relaunches the
process, which is why it works. - Sixteen messages in the MachineGames episodes show a readable placeholder
instead of their real wording, because that text exists only inside the
re-release's own engine. Everything else, including every ending, is real.
Credit
Team Beef / Simon Brown for all of the VR work, LordHavoc and the
Xonotic project for DarkPlaces, and id Software for Quake. GPL v2, same
as both — the complete source is this repository.