Impedence Mismatch People who tried to play the PC version of 'Gears of War' at the start of this month got a nasty shock. It refused to play! It seems that as part of the game's protection against copying and cheating there is a digital certificate that expires at the end of January. If it's after January 2009, you can't play. There is a work around - set the clock on your computer back to before the expiry date - and everything is OK. Well, not really OK, because the clock is now wrong and all the programs that rely on the clock to calculate elapsed time are screwed. It also begs the question of why they bothered with such an easy to circumvent system. This is one of the reasons why I've just about stopped buying games over the last few years. For a start I won't buy games that poke around and snoop on what else I've got running on my computer, and that cuts out the likes of WoW. Games are pretty complex beasts, anyway. Trying to add Digital Restrictions Management (DRM) and client snooping technology just makes things worse and increases the chances of subtle bugs that don't show up until after the things have been distributed. This is really the intersection of two problems that have plagued online games since the first ones appeared on University DEC10 computers 20 years ago. The first problem lies in game design. Designers of Massively Multiplayer Online Games (MMOGs) - the good ones at least - are still trying to come up with designs that don't have boring and repetitive middle games. Actually a lot of them haven't yet even figured out that even online games need some sort of closure. At the moment most MMOGs end for players when terminal boredom sets in, because the game has no exit strategy. Hey guys, which is best. Someone who leaves a game after several years saying, 'Wow! That was good, I wonder what else they've got to offer.' Or someone leaving after a few years saying, 'Sheeesh, I've been bored out of my brains for the last six months, why am I paying this subscription? There must be more interesting games elsewhere.' So. No end game and a middle game that is so repetitive that it can be run by the client using quite simple macros. The second problem is that the MMOG companies are unwilling, or unable, to match their game genre's and designs to the available network technology with a resulting impedence mismatch. These days that means that they are using networks that cannot get event updates from the sever to the client fast enough. Partly this is a function of the technology of the Internet. Every time the packet passes through a router, the router has to look at it to find out where to send it on to. Routers are fast, but pass the packet through enough routers and the cumulative time becomes noticeable. It's also a function of basic physics. In a vacuum, the best possible case, light travels 186 miles in a milli-second. Virgin Atlantic gives me 3,400 air miles when I travel from London to New York, so we can probably take that as a minimum distance to cross the Atlantic. Divide 3,400 by 186 and we get just over 18. That means, in the best possible circumstances, it takes 18 milli-seconds for a small packet of data to cross the Atlantic. So what does that mean in practical terms? Well... My game playing BenQ monitor has a refresh rate of 2 milli-seconds, which means it's capable of having the screen redrawn every two milli-seconds. This is in the same ball park as the frequency with which twitch games update the contents of the screens. In other words, in this case, allowing a couple more milli-seconds for processing at the host and client ends, the client needs updates ten time faster than the network can supply them. There are three ways out of this. You can either design a game that doesn't need such frequent updates - difficult but possible. You can make sure everyone is playing on a server that's no more than 400 miles away - expensive, and brings up a series synchronisation problems. Finally, you can shift a significant amount of the processing of updates to the client - superficially easy, but opening a world of woe in the long run. When I designed ibgames first graphical game - Iron Wolves - we took the first option and designed a World War II submarine simulation. Submarines at that time only travelled at a speed similar to that of a push bike, torpedoes and surface ships not much faster. This matched the speed at which we needed to send update packets to the capabilities of the network we were using. As a result, we could do all the calculations on the server, and use the client solely for display. We had no problems with players 'fixing' the client, and no need to spy on our customers in an effort to see if they were 'cheating'. As I mentioned earlier, most of the big MMOGs take the third option. The result is what I can only describe as an arms race between the game programmers and the customers as the programmers devise ever more intrusive ways to stop 'cheating' and the customers find ever more ingenious ways to circumvent the anti-cheat programs. You only have to look at the ratio of users (millions) to programmers (hundreds) to figure out who will win this race. Unfortunately, no one has yet stepped back and said this is ridiculous, lets go back to the drawing board and start again from scratch. In the meantime, money, creativity, and effort that could have been put into making the game a more enjoyable experience is being ploughed into futile legal and technical efforts to discipline paying customers!
|
If you have any questions or comments about the articles on my web site, click here to send me email. |