Half-Life 2
Windows · Xbox · 2004 · 3 projects
Short answerYes, though unfinished. The catalog has 2 recomps and 1 port, and 2 of them are already playable. You need your own copy of Half-Life 2 (Windows).
Projects 3
FTEQW
fte-team/fteqw
FTEQW: an advanced, portable Quake engine that grew from the Quake source code id Software released and plays several id Tech games, plus the games other developers have made with it. It supports Quake and its mission packs, QuakeWorld, Quake II and its mission packs, Quake III Arena and Team Arena, and Hexen II and its expansion; Half-Life and Half-Life 2 run through the Rad Therapy project. It finds games installed through Steam on its own, including the Quake and Quake II re-releases, as well as the classic Linux game folders. It renders with Direct3D 8, 9, or 11, OpenGL, or Vulkan, with a material system that accepts HLSL and GLSL shaders and video presets that make the games look like the originals or more modern, with real-time lighting. It has split-screen for Quake and most of its mods, Opus or Speex voice chat, a server browser covering every protocol it supports, a dedicated server, games with hundreds of players, IPv4 and IPv6, CD music replacement with Vorbis, MP3, WAV, or FLAC files, plugins (FFmpeg, Bullet or ODE physics), and its own QuakeC compiler, FTEQCC, which can run in-game, with a debugger. It runs on Windows, Linux, OpenBSD, and other systems, on x86, x86-64, ARM, and PPC64LE, and also on Android and the web. The builds for Windows (64- and 32-bit) and Linux (x86-64 and x86) are downloaded from its website; the GitHub repository is its official mirror, and its latest change is from June 4.
You needThe files from your own copy of one of the games (Quake, Quake II, Quake III Arena, or Hexen II, with their expansions if you have them), with the engine copied into the game’s folder; it also finds Steam installs on its own. For Quake II with the 64-bit build of the engine you also need 64-bit game logic, which the project recommends taking from Yamagi Quake II. Plus Windows, Linux, or another supported system.
Portal 2 / Half-Life 2 (kanapitsas)
kanapitsas/portal2-recomp
A static recompilation of the Linux versions of Portal 2 and Half-Life 2 (with Episode One, Episode Two, and Lost Coast) into native apps for Apple silicon Macs and the iPhone, with no emulator, Wine, or Rosetta: every x86 function in the game’s modules (engine.so, client.so…) is translated to C and compiled for ARM64 along with a runtime that implements what the binaries import (libc, threads, SDL2, OpenGL, Direct3D 9, and Steam). Steam calls go to Valve’s official arm64 libsteam_api.dylib, with no Steam emulation. It renders with Metal by default through mtld3d, a native Direct3D 9 on Metal, with OpenGL as a fallback; on an M3 Pro, a scene runs at 122 fps with Metal and 81 with OpenGL (2560×1440, 4x MSAA). The README calls Portal 2 fully playable on Mac and on an iPhone 15 Pro Max, at a steady 60 fps, with touch controls and portals fired by tapping the back of the phone. Physical controllers work, and there’s local network co-op where a Mac hosts and an iPhone or a second copy on the same Mac joins (only the connection and the map load have been checked). Half-Life 2 is experimental: it has been played for a few hours on Mac, at 120 fps with Metal on an M3 Pro, and the episodes and Lost Coast load their first maps without having been played through. The Natif Installer app or the setup.sh script builds it on your Mac from your Steam copies, in about 10 minutes for Portal 2 and 10 to 20 for Half-Life 2, and downloads Valve’s libsteam_api.dylib (from Steamworks.NET); for the iPhone, setup.sh --ios signs and installs the apps and copies the game data. v0.3.0 (November 8) is the latest of 2 installer releases. The README says AI coding agents (Anthropic’s Claude Code and OpenAI’s Codex) wrote most of the code under the author’s direction. 88 of its last 100 commits list Claude as a co-author.
You needYour own Steam copies of Portal 2 (the game folder, which can also be the Windows one, plus its Linux binaries, fetched from the Steam console with download_depot 620 661, about 90 MB) or of Half-Life 2 installed on the Mac (with hl2_complete, plus its Linux binaries with download_depot 220 224, about 320 MB), and Steam running with the account that owns the game to play on Mac. An Apple silicon Mac on macOS 13 or newer with the Xcode command line tools. For the iPhone, Xcode with your Apple ID (a free account means reinstalling every 7 days), Homebrew’s xcodegen, cmake, and ninja, and an iPhone on iOS 17 or newer in Developer Mode, with about 12 GB free.
Half-Life 2 (sp00nznet)
sp00nznet/hl2-recomp
A static recompilation of the Xbox version of Half-Life 2 (2005) into a native Windows executable with xboxrecomp: the x86 code in hl2_xbox.xbe is translated to C (49,487 of 49,498 functions, 13.4 million lines) and linked against its runtime, which stands in for the Xbox kernel and turns Direct3D 8 into Direct3D 11, plus DirectSound and input. The executable keeps MSVC’s RTTI, which the author used to recover 2,336 classes and 12,288 named virtual methods, most of them found in Valve’s public Source SDK 2013. The disc’s loader is recompiled too, and its own decompressor turns the disc’s archives into the format the game reads. It isn’t playable yet: it boots on its own to its main menu, drawing the background but not the options, and with xboxrecomp v0.14.0 plus a pending patch the title screen draws in full; the controller doesn’t work yet. Forcing a map, it loads 22.3 MB of the first level and shows the loading screen, but never hands off to the world. There are no prebuilt executables: the translated code is generated on your PC. All 74 of its commits list Claude as a co-author.
You needYour own copy of Half-Life 2 for Xbox, with the disc’s files extracted. To build it, Windows with Visual Studio 2022, CMake 3.20 or later, Python 3.10 or later with capstone, and an xboxrecomp checkout (v0.14.0 with change #224 for the title screen); the Source SDK 2013 is optional.
Installs with
Questions
Can you play Half-Life 2 natively on PC?
Yes, though unfinished. The catalog has 2 recomps and 1 port, and 2 of them are already playable.
What do I need to play it?
Your own copy of Half-Life 2 (Windows). Recompendium only links projects that don’t distribute the game, and each entry says which version or region you need.
Which one is the most popular?
FTEQW, with 366 stars on GitHub.
Which one is furthest along?
FTEQW and Portal 2 / Half-Life 2 (kanapitsas), which are already playable, though unfinished.
Is it still being updated?
Yes. The latest change is from November 9, 2026, in Portal 2 / Half-Life 2 (kanapitsas).
Can it be played on other devices?
Yes, besides PC: FTEQW (the browser); Portal 2 / Half-Life 2 (kanapitsas) (iOS).