The Purpose Of Quake's Mystery Graphics File, Explained

Image: id Software

It's a happy day for me when I learn something new about Quakeor any classic game, for that matter. My fresh factoid for today: a seemingly unused image in Quake's data files that actually plays an important role in running the game.

Copy protection, or DRM, has come along way since 1996 (though some might argue not by much), but back in the day, games resorted to simple methods, good enough to fool the average user.

With Quake, id Software used the presence of a file in the game's "PAK" data archives, to determine if the user's copy was registered or shareware. A tweet from developer Joshua Skelton revealed its existence to me.

Now, this wasn't just discovered in 2018; take this GitHub wiki page from 2014 on the PAK format, which explains the file's purpose:

Quake 1 specifics on PAK files (content wise). If the file /gfx/pop.lmp is present and contains a Quake logo (extract from your own pak1.pak file), Quake considers the game as registered, otherwise it's a shareware. If it's shareware, the ending screen in end1.bin is displayed (character, screen buffer colour format). If registered, end2.bin is displayed.

And if the file doesn't exist? The game just won't start, going by a quick Google search.

I still have my old copy of Quake installed (I was a veracious modder and QuakeC coder during my teenage years and it's somehow survived in my backups over the years), so verifying the file's existence — and contents — was easy.

Sure enough, I cracked open PAK1.PAK and in the "gfx" folder, I found a lone graphic: "pop.lmp". Here's what it looks like, opened in a hex editor.

Image: Logan Booker

As you can see, it's the same as that from Skelton's tweet.

It's stuff like this that makes me want to be a full-time game archaeologist... I'm just not sure if it's a good enough career to pay the bills.

@JoshuaSkelly [Twitter]


Comments

    I'm not sure I'd describe it as copy protection, since it won't be able to differentiate between original and pirated copies of the PAK file.

    It sounds more like a way to have a single version of the game executable function for both the shareware and full versions of the game, simplifying the process of distributing updates.

Join the discussion!

Trending Stories Right Now