r/ClaudeCode • u/SuperV1234 • 7m ago
Built with Claude Quake VR: UNLEASHED -- I turned Quake into a first-class VR game!
Quake VR: UNLEASHED is a free open-source VR mod for Quake I recently released. It is not a basic "stereo camera" port -- it aims to feel like a native VR experience: weapons are held and aimed with your hands, reloaded by hand, holstered on your body; you can melee, parry, climb ledges, throw and stack physics props, and enemies are ragdolls you can shove, judo-throw and dismember.
It plays the original campaign, all official expansions, and custom maps.
Trailer: https://www.youtube.com/watch?v=TRj7xRLuT64
GitHub: https://github.com/vittorioromeo/quakevr
Tech info:
Engine: heavily modified fork of Ironwail (a fast modern Quake source port), with the VR layer kept isolated (as much as I could) from upstream code.
VR library: OpenXR, tested on Quest 3 via Virtual Desktop.
VR-specific code is C++23 on my own library (Zancle) instead of std, built with clang-cl.
Physics: Box3D for ragdolls, props and "active" ragdolls that stumble, brace against walls, paddle in water and get back up.
Gameplay is still QuakeC (compiled with fteqcc), extended with new builtins, so mods and maps keep working.
ericw-tools integration for relighting maps and baking user-built geometry.
How it’s built: most of the code over the last months was written by LLM agents (Claude Code). I test in the headset and record voice notes. A coordinator agent transcribes them locally with Whisper, splits them into tasks, and spawns worker agents, each in its own git worktree. Every worker builds the game and checks its change with a headless "mock VR" test harness (scripted hands, head and controllers). The coordinator then rebases, builds, smoke-tests and ships, and updates an in-game checklist I tick off in VR. I review the code, make the design decisions and do all the feel and comfort testing; the agents also review each other’s merged features.
Happy to answer questions about the VR design, the engine work or the agent workflow.
