================================================================
 XG Effects for Quake2                               v0.3
 by Christopher Ashby     email: chrisa@datastreamicv.co.uk

================================================================
Title                   : XG Effects for Quake2
Author                  : Christopher Ashby
Email Address           : chrisa@datastreamicv.co.uk

Description             : Realistic environment reverb effects
                          utilising the SW60XG soundcard

Additional Credits to   : id Software for the game and source

                          Yamaha for such a cool versatile and
                          affordable sound card

                          Mrs Ashby for exceptional patience
                          with me whilst I indulged myself
                          creating this, my first, mod.

                          Quake2.com dll forum for invaluable
                          help with vectors and entities.

Build Time              : about 30 hours. didn't count
                          wasted loads of time figuring out
                          low level midi crap
================================================================

DESCRIPTION

This mod is designed to increase the immersive experience of
Quake2 even further. 

For those fortunate to own a Yamaha SW60XG soundcard this mod
will add a realistic reverb effect to the game audio. Not only
that but the style of the reverb will alter depending on the
environment around you.

If you don't own one, don't download this. It will do absolutely
nothing.

You're in a cramped corridor, and the shotgun reverberates with
a short boxy echo.

You burst into a massive warehouse with the noise of your machine
gun cracking with a long sustained echo. 

In short the reverb changes depending on the size of the room you
are in. It also will muffle the sound when the player is immersed
in water/slime/lava.

HOW TO USE THIS MOD.

It's pretty easy, but you need to set up your hardware a little.

The SW60XG can process an audio signal coming in via its line in
or mic. The reverb and other effects are controllable in midi using
system exclusive messages. The DLL tells the card what it wants and
the card provides the effects processing. So in order to use this
you need to get the game audio to go through the Yamaha soundcard.

You need to route the output of your normal digital soundcard
(soundblaster whatever) into the Yamaha.

I use a short cable with a stereo jack plug at each end. They're easy
to get. Owning an SW60XG, chances are you have one anyway. Unless you
don't play games. In which case you wouldn't be reading this.

Anyway, connect the line out of the digital card to the line in of the
Yamaha. Make sure the line out level is turned up on the digital card
and the line in level is turned up on the Yamaha (use Effect Gear).

Connect your speakers to the line out of the Yamaha.

It is important that the cards are connected this way or it won't work!

Unzip the XGeffects.zip file into the quake directory.

Launch quake2 with the additional parameter

+set game xgeffects

or replace the Gamex86.dll in the baseq2 directory with the one in the
zip file. Be sure to back up the old one however!

When the game has loaded, start a new game, and enjoy!

The sound card is set up by the dll so you don't have to do anything
else. 

I will personally testify that even the crappy hack of guesswork that
was involved in determining the reverb required, is still amazingly
effective and really does add tons to the atmosphere.

It is unfortunately single player only, because it interfaces with
local hardware, so on a server it only affects the server itself, and
even then it tries to change the reverb for every client connected, and
generally makes a complete mess. 

If *anyone* uses this please email me and tell me what you think.

I know this mod is of limited use (ie. none whatsoever to anyone
without a Yamaha SW60XG), but I would appreciate knowing that even just
one person got a little enjoyment out of it. Plus, feedback would be
appreciated just to make the next version better. So any suggestions
don't hesitate to email me.

Bye

