It’s a happy day for me when I learn something new about Quake — or 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.
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.
— Joshua Skelton (@JoshuaSkelly) August 8, 2018
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.
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.