Blinky's Co-Op Cam for Quake II
Based on Quake 2 version 3.20, which supports co-op play.
Click here to buy Quake II!
In association with Amazon.com
ORIGIN

We at the Lab have been playing co-op DOOM since 1994, and we still love it. One of the features that makes DOOM ideal for co-op play is its F12 "spy" camera that lets you see what your buddy is doing. When we finally started playing Quake 2 in 1999, we were horrified to find that this vital feature was missing from the game!

Thus, when the Co-Op Certification Laboratory first went online on January 5, 2000, we included the following plea for help on our Quake 2 page:

WANTED!
A co-op "spy" feature for Quake II
that lets you see your buddy's
view, like F12 in DOOM.
Do you know of such a mod?

Lo and behold, on June 18, 2000, we received an e-mail from "Blinky Quake 2", mod author extraordinaire, who generously offered to create the desired mod for us. We eagerly accepted, and Blinky delivered in short order. Thereafter we worked with Blinky, testing various versions and offering suggestions for additional features. On this historic day, August 11, 2000, we are ready to release the world's first co-op mod for Quake II.

DOWNLOAD

Here it is, folks:

Blinky's Co-Op Cam

It's a tiny 149K download, yet it will revolutionize your co-op Quake 2 games. Don't try to install, run, or even unzip this file until you've read all the documentation below, including the disclaimer.

Want source code? A tutorial on how the source code works? Lots of other great tutorials by Blinky on building Quake 2 mods? Visit Blinky's Q2 Tutorials.

INSTALLATION

The Co-Op Cam is a replacement for the gamex86.dll file in your baseq2 directory. There are two ways to install it:

Permanent: Go to your baseq2 directory, rename the original Quake 2 gamex86.dll file to gamex86.old, then unzip coopcam.zip into the baseq2 directory. If you want to get rid of the Co-Op Cam later (so you can play multiplayer games with people who don't have it), delete the Co-Op Cam gamex86.dll file and rename the original gamex86.old file back to gamex86.dll.

Temporary: Make a new directory called coopcam under your main quake2 directory, then unzip coopcam.zip into this new directory. When you want to activate the Co-Op Cam, use the console command "game coopcam". You'll have to put any bsp or pak files you want to play while running the Co-Op Cam into the coopcam directory instead of the usual places.

The Co-Op Certification Laboratory uses the permanent method. To be honest, we haven't tried the temporary method...so let us know if it doesn't work! :-)

USAGE

The Co-Op Cam features are activated from the console.

To switch to someone else's view, type cam name, where name is that player's name. For example, if I want to cam to Bryan's view, I can type cam bryan. To return to my view, I can use my own name: cam wondersmith. A simpler way (especially in a two-player game) is to just type cam by itself. This cycles the view to each player in succession, and eventually returning it to your own view.

You may notice that when you cam to someone else's view, the Co-Op Cam displays that person's armor and health stats at the top of the screen. This is useful when you're trying to decide whether to pick up the health you just found.

To get stats for everyone, type stats at the console. As with the "cam" command, you can also supply a name--to get stats for just that one player.

Now let's suppose you've found some exciting action and you would like your buddy to join you. Alas, Quake 2 lacks another of DOOM's great features: the automap. This means your buddy may be unable to find you! No problem, the Co-Op Cam gives you a "summon" command to teleport him to you. For example, if I type summon bryan, Bryan appears right in front of me. The summon command won't work if there isn't enough room in front of you for your buddy to appear. Cool, eh?

Finally, if it annoys you that your buddy's head or arm sometimes gets in the way when you cam to his view, you can move the viewpoint farther forward by setting the "camoffset" variable. For example, to set camoffset to 15 (a reasonable value), you could type set camoffset 15 in the console. This is a tradeoff, since the farther forward you set the cam view, the more likely you are to see weird effects when your buddy gets close to walls or other objects. Life's not perfect. The default camoffset setting is 10. Hint: Try negative numbers for a cool "chasecam" effect!

KEY BINDING

To make the "cam" function easier to use, and also to simulate DOOM's F12 "spy" key, I added the following text to the autoexec.cfg file in my baseq2 directory:

alias cam1 "hand 2; cam bryan; bind f12 cam2"
alias cam2 "hand 0; cam wondersmith; bind f12 cam1"
bind f12 cam1

So when I hit F12, my weapon is removed from the screen and I cam to Bryan's view. When I hit F12 again, my weapon is restored and the screen returns to my own view. Bryan uses the same code in his autoexec.cfg, but with "wondersmith" in the first line, and "bryan" in the second.

There's one flaw with this approach: If Bryan dies while I'm watching his view, the Co-Op Cam automatically switches back to my own view--without restoring my weapon. But simply pressing F12 again gets things back in sync and makes my weapon visible as usual.

You should be able to adapt this code to your own games pretty easily.

BUGS

Here's a list of known bugs. We aren't aware of any unknown bugs. :-)

Sometimes the cam viewpoint is down around your buddy's feet instead of up at his eyes where it should be. We think this happens when your buddy looks waaay up or waaay down, but in any case, it is fairly rare.

The armor statistics shown for your buddies are incorrect--they're you're own armor stats! Oh well, at least the all-important health info is correct.

Your own weapon is still displayed when you cam to your buddy's view. See the "key bindings" section above for a workaround.

Your buddy's head or arms sometimes get in the way of your cam view. See the info on camoffset under "usage" above for a workaround. You'll want to set camoffset to a larger value.

With camoffset set to large values, you sometimes "see into" walls or other objects when your buddy gets close to them. Try using a smaller value for camoffset.

The "summon" command occasionally refuses to summon your buddy even when there's plenty of room for him in front of you. Wiggle around and try again.

DISCLAIMER

The Co-Op Cam is distributed as-is. By downloading and running it, you take full responsibility for any damage it may cause to your computer and/or software. We at the Co-Op Certification Laboratory have not found the Co-Op Cam to cause any problems, but we take no responsibility for its actions. Use it at your own risk.

Blinky has explicitly waived any copyright in the Co-Op Cam code. The original Quake 2 code itself is of course the intellectual property of id Software, but Blinky's own contribution to the Co-Op Cam is in the public domain. Speaking of Blinky and the code...

CONTACTING THE AUTHOR

Blinky's kindness and programming talent are self-evident, but we know little else about our mysterious benefactor. Here is Blinky's e-mail address if you would like to contact the Co-Op Cam's author yourself:

blinkyquake@hotmail.com

And don't forget, you can also visit Blinky's Q2 Tutorials for source code, cool tutorials and other great info on all of Blinky's Quake 2 mods.

How about sending sending Blinky a thank-you? Here's ours:

Thanks, Blinky!

Continue
to the list of Co-Op Tested Quake II Maps
Return
to the Co-Op Certification Laboratory main page
Return
to The World of the Wondersmith

The Co-Op Certification Laboratory
Copyright © 2000-2018 Blake Linton Wilfong
All rights reserved.
All trademarks used in these reviews are the property of their respective owners.
Photo of soldiers is public domain from Pixabay.