You're playing it wrong: Quake II

From thecrankyhermit

Quake II was originally released in 1997 for Windows 95. As was common in the early days of computer games on CD-ROM, its music is encoded directly onto the disc as standard CD-DA format, and not as a digital file, making the game disc double as the OST; you could place the disc in a CD player and listen to the game's music. But this also meant that at the time, it was not possible to "install" the games' music on the hard drive. Even with a full game installation, the disc had to be in the drive in order to hear any music.

In 2001, id released the source code for the Quake II engine, allowing hobbyist programmers to release their own versions of Quake II.

Presently, Quake II is available on Steam. The QUAKE Collection contains the original plus both expansion packs.

But there's one big problem - the Steam versions lack music. We can fix this, and add a whole bunch of other enhancements as well, using the KMQuake2 engine.

Get KMQuake2 and install it to a directory, and call it "Quake2" or something that will remind you that it is Quake 2.

If you wish, you may also download "Hi-res levelshots." Extract it to the gameDir as well, overwriting the baseq2 folder.

Run Quake II through Steam once, and quit as soon as you can. Do the same for both expansion packs.

Browse to:
<steamDir>\SteamApps\common\quake 2

Copy the folders "baseq2" and "xatrix" and "rogue" to your KMQuake2 directory.

Go back to the KMQuake2 website, and download "Official mission pack support" (version 0.20). Extract the contents to the "xatrix" directory *AND* the "rogue" directory, overwriting any files in them.

Then go to the kmquake2 directory and create a file called "quake2.bat." Edit it, and copy and paste this into it:

@echo off
echo Quake II + expansions
echo 1: Quake II
echo 2: Mission Pack 1: The Reckoning
echo 3: Mission Pack 2: Ground Zero
set /p userinp=choose a number (1-3):
goto %userinp%
:1
goto end
:2
set game%=xatrix
goto end
:3
set game%=rogue
goto end
:end
kmquake2.exe +set game %game%

Now, to enable the music, download this patch. Extract its contents to the KMQuake2 directory. Run the file "difdepak.exe," and then wait a few minutes. If all goes well, it should eventually say:

Everything is Ok
Press any key to continue . . .

The music is now re-enabled. At this point, you may delete the files "control" and "pak.zip" to free up disk space. You can now run the game with quake2.bat. You will get a menu letting you choose which Quake II you want to play, and the correct music should play.