Smokin’ Guns

The tagline for reads, “With cordite in the air, splintered steel, shell casings and powder burns, there’s only one explanation…. Smokin’ Guns.” I don’t know about you, but I like watching movies based on the Old West, so it was a real treat when I came across this particular game a month or so back.


I honestly didn’t have very high expectations for this game, so when I did finally take it for a test run, I was pleasantly surprised. This game, which can be run natively in Windows, as well as in Linux, is an open source game based on the Quake 3 engine. You may have noticed that I did not mention Mac: it is true, that SG is not officially supported on a Mac, but according to SG forum post, somebody has ported it to the Mac.

Although this game can be played in Single Player mode, it is really geared toward Multiplayer over your LAN or the internet. Besides the usual Death Match and Team Death Match modes, there are also Bank Robbery, Duel and Round Teamplay. If you have ever watched “The Quick and the Dead” then you will love the thrill of the Duel mode.

Personally, I’m not a big fan of the Death Match mode, but the folks at SG more than make up for it by throwing Bank Robbery, Duel and Round Teamplay into the mix. The only thing that might prevent others – read avid gamers – from liking this game – in my estimation – would be the graphics. That being said, I do believe that the genre of this MP FPS is what will draw the fans, not the graphics.

// <![CDATA[
// <![CDATA[
var agt = navigator.userAgent.toLowerCase();
var originalFirstChild;

function createTitle(which, string, x, y)
// record the original first child (protection when deleting)
if (typeof(originalFirstChild) == 'undefined')
originalFirstChild = document.body.firstChild;

x = document.all ? (event.clientX + document.body.scrollLeft) : x;
y = document.all ? (event.clientY + document.body.scrollTop) : y;
element = document.createElement('div'); = 'absolute'; = 1000; = 'hidden';
excessWidth = 0;
if (document.all)
excessWidth = 50;
excessHeight = 20;
element.innerHTML = '

‘ + string + ‘

renderedElement = document.body.insertBefore(element, document.body.firstChild);
renderedWidth = renderedElement.offsetWidth;
renderedHeight = renderedElement.offsetHeight;

// fix overflowing off the right side of the screen
overFlowX = x + renderedWidth + excessWidth – document.body.offsetWidth;
x = overFlowX > 0 ? x – overFlowX : x;

// fix overflowing off the bottom of the screen
overFlowY = y + renderedHeight + excessHeight – window.innerHeight – window.pageYOffset;
y = overFlowY > 0 ? y – overFlowY : y; = (y + 15) + ‘px’; = (x + 15) + ‘px’;

// windows versions of mozilla are like too fast here…we have to slow it down
if (agt.indexOf(‘gecko’) != -1 && agt.indexOf(‘win’) != -1)
setTimeout(“ = ‘visible'”, 1);
{ = ‘visible’;

function destroyTitle()
// make sure we don’t delete the actual page contents (javascript can get out of alignment)
if (document.body.firstChild != originalFirstChild)
// ]]>


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s