how to actually get prey (the better one, from 2006) running on a ’20s linux system

January 11, 2025
Share

The world is full of stories… and from time to time, they permit themselves to be told.

(note: some of this article may rehash information from GamingOnLinux’s 2018 post on the topic)

Prey (2006) is in my top ten video games of all time. It’s a goddamn masterpiece; it takes the already well celebrated for its time idTech 4 engine, better known for Doom 3 and Quake 4, and really runs it through its paces, with some extra spatial distortion features thrown in for neat gameplay elements. It has fantastic worldbuilding, a sick weapon set, Art Bell running a fantastic mock Coast to Coast AM airing… and it’s been named in damnatio memoriae by its rightsholder, Zenimax (may their wives leave them).

Prey got a Linux port that was released in 2008, but never had its source code changes opened up after the GPLification of idTech 4. So dropping Prey’s files into a modern source port like dhewm3, sadly, isn’t going to work. Fortunately, it’s reasonably simple to jury rig the 2008 proprietary port to work properly.

Getting the Game

Zenimax and Bethesda seem to see this whole game as radioactive. I don’t know if it’s because 3D Realms got Lo Wang to play Enisi (which was pretty infamous at the time, even with the native American VAs they did get on board), they’re squicked out by the various body horror elements in the game, or what, but as soon as they realize you’re not talking about the unrelated game from 2017 with the same name, they clam up and pretend it doesn’t even exist. There are no store listings anywhere you can buy a copy of, retail copies seem to disappear slowly (are they destroying them?), and the whole game has been memory holed out of corporate existence.

Therefore, the only feasible way you can get a copy if you didn’t already have it is through some piracy or abandonware source. It should be safe: despite being nearly erased from anything official, Prey was a well received (and among its fans like me, beloved) game, and the PR nightmare that would happen from you getting sued over it would likely rival the RIAA grandma lawsuits. I’m not going to link a source as a CYA measure; you’re a big girl, you can find it on your own, I believe in you ❤️

Preparing the Game

Install Prey (and the point releases, if you found em) in some Wine variant. Then get the official Prey Linux port from 2008; the classic icculus link was down when I tried it last, but the Internet Archive also has a version, assuming there isn’t some sick bastard attacking the library again. Then, run the port installer like this:

./prey-installer-02192009.bin --from-install --media "$PREY_INSTALL_DIR/base"

where $PREY_INSTALL_DIR is obviously, the path Prey got installed to (if you installed to the C:\ drive in Wine, this will usually be ~/.wine/drive_c/...). Click through the wizard. When it finishes, you’ll need to create one more file, call it prey.sh and put it in the same path as the Prey executable:

#!/bin/sh

export LD_LIBRARY_PATH="/lib32:/usr/lib32:/usr/local/lib32"
./prey "$@" 

Running the Game

Run the game once. If you encounter problems getting to the menu, the known good solutions are to delete libgcc_s.so.1 from the game dir and replace libSDL-1.2.so.0 with Lutris’ SDL 1.2 compatibility stub, since you probably don’t have a fully working libSDL 1.x on hand anymore.

Configure as much as you can within the in-game menu. With the libSDL compatibility stub, most issues regarding the hardware being too new for the game to recognize seem to have vanished, and I was able to run the game on max with no argument. I did however, have to make some changes in preyconfig.cfg to run the game in 1440p

seta r_customWidth "2560"
seta r_customHeight "1440"
seta r_mode "-1"

setting r_mode to -1 tells the engine to use the “custom width and height” variables above to get resolution.

From there, you should be able to run the game as normal, and have it look just as good as it could when it came out.

Remember: Do NOT fear the reaper.