Skip to content
themuffinatorPublic

About

openPREY: the modern way to play PREY. An open-source PREY (2006) source port on a modernized idTech4 engine, with Vulkan and OpenGL renderers, for Windows, Linux, Steam Deck and macOS.

Topics

Resources

Code of conduct

Contributing

Stars

62 stars

Watchers

2 watching

Forks

Repository files navigation

openPREY

The modern way to play PREY.
An open-source engine and game-code replacement that runs the original 2006 game on today's Windows and Linux PCs.

Status Platforms Licensing Proudly vibecoded

Build openPREY from source Join the DarkMatter Discord

Quick start · Features · Platforms · Guides · Help · Build from source

What is openPREY?

openPREY replaces PREY's engine and game binaries with its own: a GPL engine built on openQ4 and a source-available game module built from the PREY SDK. Your original campaign and multiplayer maps load from the retail game files, now with modern window and display handling, a choice of OpenGL or Vulkan rendering and one game module for single-player and multiplayer.

Note

openPREY does not include any PREY game data. You need your own copy of PREY (2006), from the original discs or another legitimate source.

Important

openPREY is in early development and has no release yet. Representative campaign maps, save/load and a two-client multiplayer session have been played on it, but full campaign completion and multiplayer parity aren't claimed. See release status.

Quick start

Until the first release, you build openPREY yourself:

  1. Install PREY (2006). Leave it where it is; openPREY keeps to its own folder.
  2. Build and stage openPREY with BUILDING.md. The staged package lands in .install/.
  3. Launch openPREY-client_x64 (.exe on Windows) from .install/.
  4. openPREY finds your PREY install on its own. If it doesn't, launch with +set r_fullscreen 0 +set fs_basepath "C:\path\to\Prey", pointing at the folder that contains base, not at base itself. See If auto-detection fails.

Tip

Don't copy retail .pk4 files into basepr/. That folder is for openPREY's own files.

The Releases page still lists nightly builds from April 2026. They predate openPREY's move onto the current openQ4 engine and don't match this README.

Features

What the current code does:

  • 💿 Finds CD-era installs. openPREY checks the folder it starts in, the Windows registry (install keys, App Paths and uninstall entries) and the usual install folders such as Human Head Studios\Prey and 2K Games\Prey. It doesn't depend on Steam or GOG. On Linux it looks in ~/Games/Prey.
  • ✅ Checks your game files. Startup confirms the official base packs are present. The consolidated retail layout is checksum-verified; CD-era numbered packs are checked for presence until their checksums are recorded.
  • 🎮 One module for every mode. A single game_x64 module, built from the PREY SDK, runs single-player and multiplayer.
  • 🖥️ Modern window handling through SDL3: windowed, borderless, desktop fullscreen and exclusive fullscreen, monitor selection with r_screen, and aspect ratio and FOV that follow the render size. Linux runs native Wayland or X11.
  • 🎨 OpenGL or Vulkan. OpenGL is the default and matches PREY's original interaction stages. The Vulkan renderer (r_renderApi vulkan) reaches gameplay in focused tests but isn't at full parity yet.
  • 💡 Baked light grids add indirect light to portal areas: bake them, inspect them and switch them on. See Light Grids.
  • 🤖 Multiplayer bots (experimental): a cast of bot characters on PREY's own artificial player, each with a fighting style and chat. Retail maps ship no bot navigation, so bots fight what they can see and don't plan routes. See the bot guide.
  • 🧪 Inherited from openQ4, not yet checked against PREY: shadow maps, cel shading, DDS texture replacements, controller support with a Steam Deck profile, performance presets with Auto-Detect, and the level-load cache. Their guides are below.

The rebase status ledger records what has been ported and how each piece was tested.

Platforms and requirements

Active CI builds Windows x64 and Linux x64 on every push. No packages are published yet: the Windows installer, Linux AppImage, ARM64 and macOS lanes inherited from openQ4 are switched off until they're rebuilt around basepr/ and the unified game module. See release status.

Platform State Notes
Windows x64 Built in CI; most runtime testing happens here Windows 10/11 recommended
Linux x64 Built in CI A modern 64-bit desktop, comparable to Ubuntu 24.04 or newer. SDL3 picks Wayland or X11; set OPENPREY_FORCE_X11=1 to force XWayland
Steam Deck / SteamOS Launcher in Linux builds Run openPREY-steamdeck; inherited from openQ4, not yet checked with PREY. See the Steam Deck guide
Linux AppImage Not produced yet tools/build/package_linux_appimage.py is rebranded for openPREY (x86_64 and aarch64 names), but nothing runs it until the release lane is rebuilt
Linux ARM64 Not supported yet openQ4's ARM64 lanes are switched off until they're rebuilt for openPREY
macOS Not supported yet The build files cover macOS hosts, but CI doesn't build or test it and there's no package
Windows ARM64 Not supported yet Switched off, as for Linux ARM64

You'll need a 64-bit CPU, a graphics driver with OpenGL ARB2-era vertex and fragment program support, and PREY (2006)'s retail base/ files. Details are in Getting Started.

Player guides

Start with release status: what works today and what isn't claimed yet. Most other guides describe engine features carried over from openQ4, and each one says where PREY testing is still pending.

Set up

Play

Look and feel

Host and create

Compatibility

  • openPREY runs the official retail PREY (2006) assets with its own engine and game module.
  • Mods built for the original proprietary PREY game DLLs won't load.
  • For multiplayer, use matching openPREY builds on every client and server.
  • openPREY is in early development: compatibility work is ongoing.

Getting help

  • Something broken? Open an issue with your setup details and a log: launch with +set logFile 2, reproduce the problem and attach the qconsole.log it writes to your save folder.
  • Crashed on Windows? Attach the log and minidump from the crashes/ folder beside the executable.
  • Building on a Mac? macOS isn't supported yet, but the macOS support-data guide shows what a useful report contains.
  • Want to chat? Find us on the DarkMatter Discord.

For developers

  • BUILDING.md: build openPREY on Windows, Linux and macOS hosts
  • TECHNICAL.md: compatibility status, file layout, configuration and dependencies
  • AGENTS.md: project rules, including the licence boundary between engine and game code
  • Source layout: where new code and vendored libraries go
  • The rebase plan: how openPREY moved onto openQ4 and adapts upstream engine changes
  • Platform support: what each platform needs before openPREY claims it
  • CONTRIBUTING.md: project conventions for pull requests

Credits

themuffinator leads openPREY's development, with stewardship from DarkMatter Productions. openPREY stands on Human Head Studios' PREY and its SDK, and on the openQ4 engine, which brings the work of everyone credited there with it.

Full credits and third-party software

Licence

The openPREY engine is licensed under the GNU General Public License v3.0. Files that keep Doom 3 or Doom 3 BFG Edition headers also keep their upstream notices and Additional Terms; the source-provenance inventory records their scope and lineage.

The game code in src/game, src/Prey and src/preyengine is derived from the PREY SDK and remains under Human Head Studios' SDK EULA. LICENSING.md explains each component's terms, including the open question about distributing them linked together. PREY's game assets remain the property of their rights holders and are not included.

openPREY is an independent project and is not affiliated with, endorsed by or sponsored by Human Head Studios, 2K, Bethesda, ZeniMax Media, id Software or Raven Software. PREY is a trademark of ZeniMax Media Inc.


Website · Releases · Issues · Discord · Back to top

About

openPREY: the modern way to play PREY. An open-source PREY (2006) source port on a modernized idTech4 engine, with Vulkan and OpenGL renderers, for Windows, Linux, Steam Deck and macOS.

Topics

Resources

Code of conduct

Contributing

Stars

62 stars

Watchers

2 watching

Forks

Releases

Sponsor this project

Contributors

Languages