Hi, I'm AmstradHero. After plugging my NWN2 module in his last post, Ferris has now been generous enough to allow me to guest post on his blog - which I'm going to take advantage of by writing about bugs in computer games. I'll start with a little warning that this is a little bit lengthier than previous posts...
Every gamer knows what it feels like to get frustrated with a game. Whether it's losing to opponents in an online match, struggling to defeat a particular hard segment of a game, or simply figuring out the correct path through a puzzle, games are designed to be both fun and challenging. However, the one frustration that is the bane of every gamer are bugs or gameplay elements that simply don't work. If you've been a gamer for any length of time, you're almost certain to have your own horror story about a bug or glitch that caused you countless hours of grief. It is also true that sometimes these can work in your favour - and certainly, I remember clocking up the high score in a variant of choplifter on a BBC Micro due to a glitch that let me continuously destroy a tank for points. The Internet proved a saviour for PC gamers when it enabled the release of patches that have now become commonplace. While this was a fantastic step forward, the problem that has increasingly reared its ugly head is that games are being released and that patches ARE expected, as opposed to being a means of dealing with a series of unfortunate events that cannot be avoided. Additionally, often these patches are being used to add in functionality that should have been included from a game's first release.
Let's draw on some recent examples to prove a point. First off, I'd like to take aim at one of the pride and joys of my FPS gaming enjoyment for many years - the Unreal Tournament franchise. When the Unreal Tournament 3 demo was released, I, like many other eager fans, downloaded the UT3 demo with much anticipation and indeed a sense of glee at returning to the frenetic pace of a game that makes you feel like you should be taking a cocktail of speed, acid and amphetamines just in order to get the maximum enjoyment out of it. Dealing death with an Instagib shock rifle while leaping off walls and maniacally laughing like the arch-villain out of a B-Grade action flick is exactly what I'd come to love and cherish about the series. However, when I downloaded the demo, I was brought back to reality with a resounding kick up the jacksy and the completed obliteration of a gamer's false sense of self-worth as embodied by the power of his gaming rig. After playing one vehicle CTF fragfest against bots and finding it putting my moderately aged system through its paces until I dropped the settings down a little, I decided to fire up a deathmatch game for pure unadulterated slaughter. Or I tried to. My box froze unceremoniously on the menu and I clicked "play game", and nothing short of a reboot would fix it. Undaunted, I fired the demo up and tried again, after all my machine is getting a little long in the tooth... Load up, choose instant action, play game... BAM. I spent more time installing the darn demo than I did playing it. If I hadn't been a one-eyed UT fan, I wouldn't have recently bought UT3 and found that the full version lacks all the bugs of the demo that was obviously released far too early. Thank God. I still love you, Epic.
The trouble is, this isn't an isolated case, and it extends to full versions of games as well. I found STALKER close to unplayable due to various glitches and even when it wasn't being more buggy than a Louisiana Bayou, I found myself continually clearing out a never-ending stream of bad guys who would attack on sight as though someone in this radioactive zone was churning out people like Darth Sidious in Attack Of The Clones. Then there's Heroes of Might and Magic 5 seemed like a lesser cousin of its predecessors when released, though this may have been because half the information about the units or the gameplay wasn't made clear - it took about 500Mb of patches before you gained even basic things like checking the abilities of your troops! I could go on, like moronic AI, an appalling inventory system, or having enemies disappear or be encased in walls in Mass Effect, or the patches required to Neverwinter Nights 2 in order to make the camera usable. It is even possible to level complaint about your moronic AI allies in Call of Duty 4, but with these I'm hitting smaller issues and I think we've long learnt to expect as much support from AI in single player FPS games as we do expect facts from a US election campaign. (I should confess that I absolutely loved both Mass Effect and Call of Duty 4 regardless)
Of course, it would be remiss of me to argue the poor maligned gamer like some whining child or someone falsely claiming worker's compensation benefits, without presenting the other side of the argument. Testing IS done by gaming companies, but the problem they have to deal with is that they are dealing with an unknown platform. There are countless combinations of various bits of computer hardware from numerous manufacturers, and then there's varying patch levels for those components to consider - though by and large that mostly boils down to video drivers. This sort of problem is one of the factors that might lead to the death of PC gaming in favour of consoles, but that's another discourse entirely.
As for the solution: well, that's the sixty-four million dollar question, isn't it? Test cases are a fairly useless approach for most situations given the wide variety of possible actions in today's complex games. After all, speedrunning relies heavily on the unexpected consequences of various unforeseen actions, and if this type of ingenuity is taken away, then gamers will feel hamstrung by a lack of freedom. While heavy testing of individual segments can be carried out, the large scale problems are the challenge, due to lacking the ability to have several thousand testers at a company's fingertips. Unless, of course, the public beta angle is pushed more heavily. This, of course, has to be done in a carefully managed, fashion, because gamers do not (and should not) become the first line of testing. This also results in the difficulty of releasing a game sample large enough to give the gamers a taste of the game without giving them too much such that they don't want/need to buy the game. Ideally, games would undergo a substantial testing regime internally, followed by a closed beta, then finally an open beta for larger scale testing to occur. Of course, this also means that release dates should not be set unrealistically, and that companies should adhere to the maxim that dictates quality is better than quantity, and something should be done right, or not at all. Quality is something that gamers have come to expect, and the plethora of bugs and oversized patches issued for many modern games can start to leave a slightly bitter taste in one's mouth.