I'll try to describe, briefly, the problems of cheating and cheating regulations. First, the hacks themselves. These include aimbots, that automatically aim at your enemies and kill them, even capable of judging the trajectory of a grenade. You've also got screenhacks, that let you see through walls. These two combine nicely in games where walls are sometimes bullet-permeable. As an amusing example of early internet technology, someone made a proxy between the client playing the game and the server, that altered packets to correct a person's aim. These days packets are well encrypted. There's also hacks that let you move faster than should be possible, either through strafe running (generally considered okay) or bunny-hopping (usually requires a script and looks highly unnatural but allows you to move wicked fast).
So now that we know about screenhacks, aimbots, and bunny-hoppers, I can tell you how these are currently combatted. In the case of bunny-hoppers, you are correct in that the server should be able to prevent that. Counter-Strike I believe finally removed that stupid hack. On the other hand, aimbots don't do anything extraordinary or out of the range of the possible. Screenhacks don't even do anything but reveal the extra information you've been given by the server. It's very difficult to combat aimbots and screenhacks. The most popular option is a program called PunkBuster. This program basically scans the player's computer for known cheats and hacks, and reports unusual results back to a central repository. Generally, when you get detected, you'll be kicked. I think that the BF2 version will actually ban your userid on all rated servers, which acts as a nuclear type deterrant. Usually server software is free to the public, and anyone can run one, even a rated one. The company behind BF2 actively rents servers. There are also "meta servers", which act as a directory of public servers, and as a form of identification and validation for individual users. Steam, the software behind Halflife, requires you to be authenticated by a metaserver before it will allow you onto any server to play.
The problem with punkbuster and its friends is that it requires you to run as admin, in order to let it examine all other programs running in detail. Furthermore, sometimes PB and antivirus software fight. Usually you get false positives for hacks by running norton or something. Furthermore, punkbuster actively fights many of the ideas of open source. By altering the software, you'll trigger a punkbuster alert.
The safest solution is to do all processing server side, but you'll have incredible amounts of video streaming for 32 players, which is both processor and network intensive. A safer solution is to do some form of check to send out only information that the player could observe, but that adds CPU overhead and should result in wierd pop in because of lag. It may be that twitch games are simply doomed in an open source environment.
Justin Dugger
On 8/13/05, Jack quiet_celt@yahoo.com wrote:
--- Justin Dugger wrote:
Of course, there is also the concern over cheating made simple with open source. ... Personally, I think that this is a failing of the server design. If a player is being excessively disruptive, there should be a social mechanism in place via the server to manage, arbitrate and facilitate the curtailing of that disruptive player, either by kick\bans or other means of punishment. This is probably one of the most important aspects of multiplayer gaming that has gone unsolved, but not for a lack of trying.
Not being a gamer [for health reasons. ;')], I don't know all the issues here, but it seems to me it should be fairly easy to deal with the cheaters. Of course it really does seem to depend on handling it at the servers. It seems that some fairly decent coders could write a routine to detect the cheaters and either ban them or strip their powers and points. Alternatively, it should also be possible for some decent coders to write a plug-in for users to download andinstall that could detect cheaters and take some action based on that, by any or all of: posting to everyone in the game the "identity" of the cheater, cheating back against the cheater, using some force to terminate the cheater from the game, intercept the cheats and reverse them, etc. Now like I said I'm not a gamer but it seems some of these things should work, or I may just be uninformed to how it all works. I'm assuming all the servers are owned by the game vendors and thus out of the control of the players? It seems to me that this would be a good use for p2p to build rogue servers, with ligitimite clients. Should someone build a server that valdiated legitimite copies of the game software, then there really wouldn't be any angle the vendors could use to sue the servers/clients. I know that someone in St. Louis did build a server for some game, but I don't believe they included verification of clients, which of course just leads judges to believe they are up to something.
just some random thoughts, Brian
Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com _______________________________________________ Kclug mailing list Kclug@kclug.org http://kclug.org/mailman/listinfo/kclug