Multiplayer Game Cheating 247
Washizu writes: "Ensemble Studios programmer Matt Pritchard, who worked on both Age of Empires, and Age of Empires 2: The Age of Kings, has written an article for Gamasutra, the online game developer magazine, on multiplayer game cheating methods and prevention." A lot to say here about human nature. A lot of it applies to virtually any form of online human interaction: from games to, yes, even Slashdot's message boards. A very worthwhile read.
This is a very insightful article (Score:5)
--Shoeboy
use of hacker (Score:1)
Doesn't this look like.. (Score:1)
---
But I wana cheat! (Score:3)
You know... (Score:4)
If I went into a job interview and took the previous persons resume in with me how far would that get me? That's about the same thing as cheating in video games.
These kids better wise up before they get smacked by the real word.
the only real deterent to cheating is cheating. (Score:3)
Anyway, like I said, after a while it just isn't fun anymore. Until someone starts cheating a lot they will always have this desire to do it (to see what it was like). It is nothing special. Get over it
Just my worthless
It's happened to me before... (Score:1)
Out of the blue, I saw a message on the chat giving away one of the people's positions and needing help. They had been duping me up to that point about being part of a FFA, but knew each other and were planning on "winning" by knocking me out of the game, and then claiming that one of them won.
I still cannot understand the mentality of cheating to win. To me, you can't really win against someone if you take a severe handicap to do so. Cheating, whether through codes, fraud, trainers or the like, does no good. Sure, you can win more often, but is that win really worth anything?
Dragon Magic [dragonmagic.net]
Bolo was the bomb (Score:1)
It had so many cheating checks built into the game. It was impossible! Every player had to have the same major version of the game so that every player could keep tabs on every other player.
I'm sure that once you get to 64 way Half Life games, the network traffic generated by checking to see if a given player is moving too fast is unwieldly.
Re:You know... (Score:2)
Multi Charachter cheating (Score:1)
Some people are too lazy (or dont know how / dont know how to effectively play) RPGs, and HAVE to cheat. This does not make it right, but people cheat at ANYTHING. All of us have cheated in some way, sometime in out lives.. wrote that one word you could never spell onto your desk minutes before the spelling test.. took advantage of the money cheat in ROM 2.1, or even clocked in 30 minutes earlier than you should have. The people who always cheat in RPGs jsut bug everyone else out. In one mud I play, one person convinced other mudders to give her over 475 gold (in this mud, if you have 100 gold, you are very very wealthy) and she was level 4! The girl wasnt even 'strong' enough to leave the first town / level. That is what I hate..
Re:You know... (Score:1)
-pf
Game Cheaters As Resource? (Score:3)
How could the creativity of cheaters be harnessed in other ways, without ruining the game for non-cheaters? Maybe create games where you design in-game ships or weapons by writing some sort of psuedo-code ?
Re:You know... (Score:3)
Remember kids, cheating does pay off. Just be good at it.
-B
I Can't Believe It! (Score:1)
Re:You know... (Score:1)
"open source" and "Free Software" is part of the problem? People using their creativity for the benefit of themselves and others is a problem? Did you really mean to say that? Somehow, I get the feeling that your exposure to highschoolers is...... limited.
Re:Is anybody surprised that RPG's encourage this? (Score:1)
Violence is perpetuated by scared kids who want some control and who want to do better than those who came before them.
Forms of cheating you can't stop (Score:1)
I remember playing on a MUD where generally everyone just blew cheating off and looked down upon the people who did it (it wasn't that big of a MUD so there was a little community). No one wanted to cheat because then the other players wouldn't help them in their quests or give them a little gold or spellup when they needed it. Coincidentally, there was no cheating. On the other side, I played on another MUD where the players laughed cheating off as "harmless" as long as it didn't interfere with game balance. On that one, there were level 2 guys running around with The-Armor-of-Ultimate-Invincibility-You-Can't-Hit
-Antipop
Re:You know... (Score:1)
Re:Leftist *trendies* are in vogue (Score:1)
Re:You know... (Score:2)
However I will make an intelligible reply.
I believe you are correct about declining values in 'this' country, we will just go ahead and assume America since mostly only Americans talk about "this" country and expect everyone else to know who it is
I do NOT think Free Software is the 'problem' I think parents are the problem.
Free Software and the belief that Music and such should be Free and the prolific use of Napster/gnutella I believe is a result of bad parenting.. Something is causing a decay of sorts and its not really the fact that its the things are available. They have always been available but the fact that it is more readily and easily avaialable due to advances in technology and the *DEMAND* for such things indicates more along my line of reasoning, it is the parents.
All things you think and say are learned expect for some very basic instinctual things such as breathing and eating.
This means of people have no morals then they are just not being taught them.
The mp3's and Free software are not a cause...
Yes.. Welcome to the *real* world. Where these young people NEVER wise up and they will teach even less to their own children. Maybe the instigators of Moral value(parents) need to wise up before reality hits them ehh?
Jeremy
If you think education is expensive, try ignornace
Article a little short on solutions. (Score:5)
It is not terribly difficult to write a script to execute commands without the use of the mouse. In Quake 2, the only real effect was that some people had godlike aim - and this was usually pretty easy to spot.
But consider what reflex augmentation could do in Warcraft 2, for example. One could write a script that caused the "mouse" to "click" on your Town Hall and Barracks, automatically creating peons and ogres at a set rate, while you controlled everything else.
Would this even be possible to spot?? From the server side, it would just look like someone had insanely good reflexes. And, of course, it would be easy to tone it down just a little - occasionally have your script "mis-click" just to the left of the town hall, put in tiny delays, etc.
It seems to me that the only way to prevent reflex augmentation would be to force the player to play on someone else's computer with a very restrictive account... any thoughts?
Re:It's happened to me before... (Score:2)
cheating????!!! (Score:1)
Jeez, I thought I just sucked. Now I know better
Seriously, I think all those CS players out there can testify to how hard it is to prove someone was cheating (and even harder to prove you are not cheating). I've seen arguments constantly go back and forth about "how could you shoot me through the wall unless you were cheating" countered with "well, there is usually someone hiding there and I heard you walking over there".
The only sure way to limit cheating is to play on a server you know is honest and one that is monitored by an admin throughout the game. Even then, it's hard to tell, but at least if there's an admin there, as a last resort he can kick/ban both alleged cheaters and their whining accusers and let the game go on in peace!
-------
Re:But I wana cheat! (Score:1)
If you or I want to type "it is a good day to die" in WII to make it easy and funny, that's fine. The problem is when a 1337 hax0r decides that starcraft is more fun when, for example, one drone is invincible and destroys the other guy's whole camp. (that's an actual bug, by the way.)
Re:Multi Charachter cheating (Score:1)
-pf
This would not happen (Score:5)
The problem with the entire RPG genre of on-line games is that it isn't really the fun that hooks people in, it is the basic stimulus-response instinct that keeps people up all night playing Everquest or a MUD. By making you do things to get rewards (levels, new items, etc.), and by dishing them out a little at a time (with a fair ammount of randomization), these games tap into the same psychological conditioning scheme that makes old ladies spend their retirement checks all day at slot machines and BINGO games.
Since the satisfaction one gets in these games is usually the reward of a more powerful character, the mind begins to make the association of "better character == more fun", and cheating, or power-leveling, or "twinking" becomes very attractive.
The draw of these games is that they sort of let you live life in fast-forward. In a few dozen hours of gaming, you go from being a pathetic babe in the woods to being a massive warrior or wizard. Cheating speeds this up even more. It's a logical extention of the persuit of the goals the game establishes, really.
You don't often see the kind of rampant cheating that prevailed in Diablo 1 or Ultima Online when you are playing the FPS games. It seems that the shooters have acquired a sort of sports culture. To cheat at Team Fortress would be a lot like cheating at a pick-up basketball game. Neither side has more fun as a result, because the rewards of player-vs-player gaming comes from the joys of testing your skills against other people. Cheating in such situations is boring for both the cheater and the victim, even among younger kids.
It seems to me that the challenge that lies before those who wish to write on-line RPG's is to get a little farther away from the "kill monster, get a treat" format that is so common to these games. Good storytelling is helpful; nobody cheats at games like Myst. Creating a social environment that facilitates less of a "who's got the biggest *" mindset would also reduce cheating dramatically.
Mind you, I'm not saying that the typical hack-and-slash, smash-and-grab RPG does not have its place. I wore out a mouse on the first Diablo, same as the next geek. All I am trying to say is that game designers ought to start thinking beyond it, now that the current technology allows them to explore a lot of new avenues.
Sarcasm is kool (Score:1)
I say that if people really wanted to play the game they would, and wouldn't need to cheat. The trick is, NOT TO TAKE ONLINE GAMING THAT SERIOUS. That said, cheat at Quake III and I'll f**k you up, bitch.
lol
Re:Multi Charachter cheating (Score:1)
What about it? That seems like good role-playing to me. Unless the RPG you're playing has a rule "No giving items to people who claim they're female". I mean, cheating is breaking the rules. That's just playing the game. If someone gets the violin playing award because they're better than you, that's not cheating, right?
Far worse than cheating, I think, is people whining about cheaters. Diablo was FULL of cheaters. It was amazing. And yet somehow, people still managed to have a good time.
Re:You know... (Score:3)
People have been complaining about declining values for centuries, and yet our society has not imploded. It's not difficult to find accounts of Europeans visiting the nascent colonies in the 18th century and complaining of the lack of values found in the US. In theory, then, if values have been continuously declining, then shouldn't they have bottomed out at some point?
Values haven't declined at all per se. What has declined is the possibilty of "upstanding people" keeping seperated from those "with no values" in a place as open as the internet. What has declined is accountability, as you (I think) pointed out, and as the article highlights.
People are inherently no better or worse value-wise than they ever have been. It's simply that the rules of engagement have changed, and now they favor freeloading. I'm all for doing something to change the rules, as long as nobody bitches about "declining values".
Another AoE Cheat.. (Score:1)
Re:This would not happen (Score:4)
cheating and 'declining values' (Score:1)
It's far more constructive to find ways of protecting ourselves from the assholes in life without hurting the innocent (i.e. writing code that's harder to crack, writing games that are harder to cheat in, finding ways of detecting cheaters and warning others about them, etc) than to whine about a bunch of values that never have really existed.
Re:Multi Charachter cheating (Score:1)
Who is the worst? Do you mean the female character, or the one-handed-typer who gave her the magic sword?
---
Re:Article a little short on solutions. (Score:5)
The augmentation will try and go after the "fake" players, and the server could try to detect attempts on the fake players and shut down a client that went after them with regularity.
---> Kendall
game integrity in MMOGs (Score:5)
First, the tradeoff: anything you keep server side on a trusted server is safe. Anything you load client side you can assume for the sake of argument will be possibly modified by a player. So, let's take a MMORPG: you have characters, monster, and various abilities all interacting. What is responsible for the integrity? The server needs to be. First, the all important player character should be totally stored server-side. No information about stats/abilities/etc is kept locally, and the server never reads any from the client. It just sends a scenario and accepts commands. A pristine client interprets options from the server to provide an interface, but just because you locally manage to send a "super fireball" command when you only have a regular "fireball", doesn't mean the server should parse that. It should obviously return an error. (and probably flag you for some sort of observation, cheater!)
In any event, the dichotomy between client and server matches that between cause and effect -- never let clients dole out effects, only accept input.
On to the more difficult problem, which is when the information you pass to the client is more than they should have, based on the fact that you cannot transmit it as-needed due to bandwidth/cpu/latency limitations. This is where innovation needs to occur. Things like handing over partial maps, or possibly breaking maps/info up into smaller pieces and giving them all out encrypted, then handing decryption keys over real time. (And this would be an art in itself? Would 16-bit XORs work? Or would someone find a way to analyze all 65k combinations for consistency and break through in sufficient time to gain an advantage?)
In a game which was not time-sensitive, obviously, this stuff should be kept server side. For example, I've never played age of kings, but I've played HOMM2/3, which are turn-based strategy games. In those cases, all data could be kept server-side, other than the revealed portion of the map. Because the players play each turn in succession, time is not a real issue. A few seconds for pulling data is not that important.
Anyhow, good article. This is definitely one of the biggest problems facing MMO gaming, and as multiplayer becomes more important to games, and as more games go MP-only, this will be critical. Bandwidth and lower latency will help alleviate the problem, but there's a lot of room, I think, for clever protection from cheaters.
Re:You know... (Score:1)
Re:Jenna Elfman... (Score:1)
Yeah, and what do non-geeks think? (Score:2)
I love playing Half-life, and I figure if I break even (Kill/Deaths) it's pretty good. You have to figure if there's 12 others trying to kill you, then that's REALLY good actually.
Some people just don't see it that way and/or are too egomaniacal to accept it, so they cheat. They look at the 3-Kills, 7-Deaths stat and can't live with it.
But, like I said, it doesn't matter why they do it. The fact that there is wide spread cheating in what is percieved to be a close-knit gamers' culture, makes outsiders seriously wonder if we aren't all screwed up.
I used to cheat... (Score:1)
I mean, I was playing Doom in order to blow off some steam. The last thing I need when I'm trying to relax is to worry about someone killing me. So iddqd and idkfa it was. To my credit, I was playing at Nightmare lever wth mosters respawning every 8 seconds. But that was the idea - infinite carnage. You'd finish a level with 5000% kills...
I would never cheat on a multiplayer game. I do get really pissed off when people accuse me of cheating just because I got them 20 times and they haven't got me.
I get really annoyed when playing a FPS+Strategy game like Tribes, where you can deploy turrets, drop mines, etc. People accuse you of cheating for actually using the resources on the game! It's rediculous.
--
so what? (Score:1)
--
Dungeons and Dragons (Score:1)
I also remember the Ultima series on Apple II's and Ataris and how easy it was to boost characters. Of course, these games weren't multiplayer then.
Your open source and free software comment was a joke, right? Here's a little substitution game:
[blank] causes declining morals and the end of civilization.
a) Dungeons and Dragons (1980's)
b) Heavy Metal Music (Tipper Gore)
c) The Internet (Bush)
d) DeCSS (mpaa)
e) Catcher in the Rye
f) Jazz Music
g) Television
Damn. I must be morally corrupt and on the way to hell.
game theory (Score:1)
To solve the cheating problem we can take a lesson from game theory. Most people will only cheat if it benefits them. Most people will not play with others who cheat. We cannot keep people from trying to gain an advantage. Some of these advantages, like convincing people to give up equipment with promises of sex, are a gray area. Others, like hacking the code, is more clear. In either case, it is important for all players to know who the cheaters are. If cheating is obvious, then the players can do something about it.. Often, these cheaters will learn not to cheat, and sometimes will be accepted back into the game. Many of us have already gone through this process. I think it is important to set up Multiplayer Games with these realities in mind.
The challenges of stopping cheating with my proj. (Score:3)
The previous generation servers, that the earliest branches of chessd are based off of, solved this problem by what they call "timeseal". They distributed a closed source binary for a bunch of platforms to their users, and should they choose to use them, it would use the MOVE command in such a way where it would trust the time reported. This was a half assed solution, at best. Besides being easily reverse engineered, anyone who knows how to use their system's "date" command can fool it.
The crux of the matter is, at least in chessd's case, that we can't stop cheating. We can pretend to stop people using timers, but there's no way in heck we can stop people who use a chess engine to analyze their position, etc. Hence, in our rewrite we will be implementing a "trust" system. Either the user trusts the client and risks playing a cheater, or trusts the server and bites the lag bullet. We will, of course, be doing _some_ checking on the trusted moves to make sure they aren't obviously faked. (No negative times!)
We don't think that an E-Bay style recommendation system is needed, because frankly, the server admin can always ban someone who they have good reason to believe is cheating.
In conclusion, you should trust your opponent out of good faith. If you can't, you can either trust the server and bite the performance bullet, or not play at all.
Re:You know... (Score:2)
Where are you getting this from? First hand experience? I'm sure that if you were a little more clear, I would take you a little more seriously (And please, Kids, or High-Schoolers. Pick ONE). There is an obvious separation between a random kid off the street, and your capable SoftIce user reverse-engineering a game. Most 'kids' don't cheat. Most cheaters I know tend to be Windows and Mac users downloading an executable, and blindly clicking. And most cheaters I know have grown out of it, just as they've grown out of flooding the hopeless goofs on #eggchat. Kids will be Kids, no matter what decade they're growing up in.
Yes, new technology is cool, (or k3w1, if you're a 'kid') but you overestimate the impact of free software on the country. Linux is great, but it's impact on (I'm guessing, due to your wonderfly savant tone) american teenage society? Go buy a Britney Spears CD. I somehow Richard Stallman is driving her 'Crazy'
But do cheaters really enjoy it? (Score:3)
The point is, often cheaters (in certain types of games) will end up being punished automatically, because online games just aren't fun unless you have someone to play against, and no one likes playing against a cheater.
Read about aiming proxy.. (Score:4)
The only hitch is that the proxy monitors and attempts to decode all of the packets it is routing. The program keeps track of the movements and locations of all the players the server is reporting to the game, building a simple model. When the proxy sees a Fire Weapon command packet issued by the cheating player, it checks the locations and directions of all the players it is currently tracking and picks a target from them. It then inserts a Move/Rotate command packet into the stream going to the server in front of (or into) the Fire Weapon command packet that points the player straight at the selected target. And there you have it: perfect aim without all the mouse twisting. (End of Article)
I just cant help thinking, these guys are so desperate about cheating. All this effort could have been spent on building something productive or learning how to use the mouse with the keyboard and kicking bots ass. Why cant we just learn to lose sometimes. Why is winning so important ? I have had my ass kicked by bots and humans alike, but I jump right back up and rail his sweet ass to kingdom come. Gaming is not all about winning, but its about perspiration that drips from your eyebrows, but you cant wipe it off, because you know your enemy is out there, seeking you out with a railgun combined with the power of Quad Damage, with an ethereal blue shadow to his skin, and you wish you were somewhere else...
Re:This would not happen (Score:3)
It's not just in the RPG's, though.
The world of first person shooters is, if anything, even more rampant with cheats (probably because it makes you look more skillful, and then you get the girls, or so they think).
In Tribes, which I play quite a bit of, they only recently installed CRC checking on certain critical files. This ended up being done because modified models and bitmaps were out there that would turn the normal half-man height flag into a massive monstrosity 50 times the normal size. Because of the way the Tribes engine works, this would extend THROUGH buildings! You could always tell where the enemy flag carrier was hiding - be it inside their base, or crouched behind a hill. And that was only ONE of many alterations in the poorly named HappyMod... visible mine trigger radii, remote turrets that showed around the corners they hid behind, etc.
And this is in one of -the- fastest paced FPS games out there, where sometimes you see the enemy capper for less than a second as he screams through at mach 5 on his sliproute.
Again - it's not just RTS. It's all games. Some people think they have to win, no matter the cost, because that's all they think is fun.
But Cheating is Allowed!! (Score:4)
You Must Cheat To Even Out The Playing Field (Score:3)
Re:Game Cheaters As Resource? (Score:2)
Re:Is anybody surprised that RPG's encourage this? (Score:2)
RPG's encourage kids to live in a fantasy world.
etc.
Like adults, children are very good at distinguishing fantasy from reality. Many children play games (computer-based and otherwise) in which they can fly, yet relatively few of them attempt this in the real world. Either you fail to grok this, or you have an extremely low (and deeply incorrect) estimation of the intelligence of children.
What about single player mode? (Score:3)
It drives me insane when I hear an announcement that X game is delayed to correct a few multiplayer cheat bugs. *I DON'T CARE*. Why do I have to sit and wait because some poor attention-starved loser wants to cheat on a part I will never use?
Add to that the added insanity (disclaimer: I believe single player games should allow me to cheat my damn brains out - i bought the game, let me do what I want with it) that sometimes developers disable cheating entirely in the game as a way to deal with the multiplayer bugs.
How are they going to solve that? Sell two separate versions of the game? I'd also expect it to be cheaper than the single+multiplayer version.
Is there any reason why this can't be done? Or am I, as a single player, destined to be ignored due to the complaints regarding a game I don't even play?
Re:Yeah, and what do non-geeks think? (Score:3)
Re:Forms of cheating you can't stop (Score:3)
Anyone remember when BBS's were popular? How you could log into a BBS Door game and play it for maybe a maximum of an hour? Ever play one where the SysOp played too? Not very fun if everyone picks on the SysOp, because the SysOp would turn around and just cheat to restore balance to their favor.
The same goes for MUD's, The people running it might just be as guilty of cheating as the people playing it.
There is no such thing as a cheat-proof game. The closest Online Games come to being cheat proof is when it's Client-Server and nobody has access to the server. The second part is that the "Client" has to only process I/O from the server (Person moved from x,y to X,Y and got hit by a frog.) and not store any data on the user's end. Now the problem with these set-ups is that there has to be checks in place to prevent multiple accounts or multiple users. (Anyone play Utopia or Earth 2025? Worst case of Client Server cheating I've ever seen, reason being that the only multiple account check is the uniqie email address the authorization code was sent to.)
Of course that could be blamed on the fact there are too many free email systems out there for people to abuse.
The worst examples of cheating always occur in peer-to-peer and client-server systems that the client has to do calculations to send back to the server.
A type of cheating I haven't seen too much, but realized people do this (and not just to games!) is to create macros or bots so they don't have to play the game themselves.
The "Adbar make free money" system has been the latest target of cheating with people creating emulators and macros to cheat them.(Look it up, they exist, Alladvantage being the biggest target) And to make more free money out of them here comes the muliple accounts that they use for referer's, so when they do their X hours on whatever ad system, they load up the next account and do the X hours again.
Just about every aspect of cheating in games can be applied to cheating other software, be it cheating the Ad-paid software, to cheating stupid software from wasting your bandwidth (Do you know how many programs waste your bandwidth? *cough*Real*cough*Player*cough*)
In my opinion, if people are going to create cheats for online games, the people who create the games should be looking out for these cheats and what they do to the game. (Lot's of cheats rely on over-writing some part of the game's memory with different values) Save-game cheats
being the easiest way for the novice to cheat(all you need is a hex-editor), to the more complicated using a debugger and changing memory values to cheat.
Again I come back to the point where game developers should not "use" any data calculated on the client side since it could be cheated easily.
Anyways I think this message is long enough.
You've an important distinction there... (Score:2)
vs.
The "hacking cheater, who opens the binary in a hex editor, actually groks what's in there, and figures out the cheat codes, AND mabye WRITES the very patches that he cheats with.
The first kind, is really kind of contemptable. And I, for one, doubt that anyone really buys into his "sk1ll3z".
But the second kind... well hacking up the executable of someone elses game (and generally the source is NOT available in MOST games)... that takes GENUINE skill. And not only to I NOT hold these guys in contempt, but I think that we could agree that THESE guys are due some respect. Patching executables is a dying art in this era of fast and smart compilers, linkers, and assemblers. Hell, most people would never even THINK to even LOOK at an executable in an editor, much less CHANGE anything. My kudos to the guys who can still do it.... and do it well.
john
Resistance is NOT futile!!!
Haiku:
I am not a drone.
Remove the collective if
Re:Slashdot contradiction? (Score:3)
I didn't get that message from it. I don't think it is evil to hack on a game and find its weakenss. It IS evil to use that knowledge to screw with an unsuspecting person's game. Well, at least it is rude. I've considered writing a Battlezone bot just for the fun of it, but you can be darn sure I would have let other players know it was a bot they were playing against.
In the end, I decided to write my own game instead (or more correctly, a game toolkit [gridslammer.org]). Sorry about sneaking in that shamelessly self serving plug. :)
Cheers,
Thad
Contra (Score:4)
Why not a trust model? (Score:4)
No solution, period (Score:2)
There's also no solution to having more information than you're supposed to -- how about turning up the brightness on your monitor? How about using video drivers that allow you to up the gamma? Maybe automatically adjust the levels so that contrast is perfect?
There's stuff you just can't control. But the stuff you can't control isn't necessarily the interesting part of the game. I don't play video games because I'm always insanely frustrated by stuff like why my peons seem to have such pathetic AI. Try to design the game so that cheating doesn't matter, rather than trying to make cheating hard, and you've got a great game. Imagine -- how could you cheat at Sim City? You can't (other than trivially: more money, etc), because the decisions you make in Sim City are decisions that a computer can't (currently) make.
On the other hand, testing your skill in spotting stuff on a dark monitor screen, or in getting the mouse just perfect, isn't all that interesting.
Cheating in Open Source Games (Score:3)
The best strategy I can see so far is to keep the authoritative simulation on a central server. Game character data would have to be stored and authenticated by some central authority as well. My vision for a MMRPG involves a network of virtual worlds running on many servers, and that makes the who cheating issue even more complicated. Anyone have any thoughts to share on that?
BTW, you can check out my SDK at www.gridslammer.org [gridslammer.org].
Later,
Thad
A problem with this argument. (Score:2)
Not true.
All it takes is one person who considers it more fun to harrass their fellow players than to play the game.
These people will always exist, no matter how good the game is. Look at the slashdot trolls for an example.
Any system that has to deal with a vast number of people will have to protect itself against the small but occasionally very capable minority who will actively try to ruin it for everyone else. This applies to games, public forums, network administration, and many other aspects of life.
Re:But Cheating is Allowed!! (Score:2)
[which, with reference to gaming, implies to me that if you're using a 'cheat' and racking up kills, it's you that's _getting_ cheated, because instead of learning to play and being good at it, you're merely bending yourself...]
Re:Game Cheaters As Resource? (Score:5)
At WorldForge, we're doing exactly this. The client is made available in source code form so that the player can customize it to make it work better for them. And we make all of the server code available for download so players can look through it and discern new tricks for effective playing. If in doing so, they uncover a bug that can be taken advantage of to the detriment of other players, then they're welcome to make use of it - sometimes this is the best way to test out how bad the bug really is.
If I don't think the bug is worth my time fixing, then any players sufficiently bothered by it are welcome to download the source code to the server, find the area causing the problem, fix it, and submit a patch. If I disagree with their patch or otherwise refuse it, well then at the least they have the permission to establish a new server and compete with me. So I will probably work hard to make sure to include the patch!
So I guess a lot of stuff I see called cheats, I think really should be honestly called 'bugs', and responsibility placed with the programmers rather than the players. Some stuff - like denial of service or similar - that's just plain mean, and out of the server programmer's hands to prevent. But a lot of the in-game cheating is preventable via code.
Maybe I'm an idealist, but the best way to harness the creativity of cheaters, is, IMHO, to establish an environment where giving out fixes to cheats has as much glory as identifying the cheat in the first place.
We also strongly encourage (even urge) players to get involved in the game development process. Our present game server is written in Python, and we will encourage and allow extension of it by direct coding (the amount of extension is limited by the slowness of Python). Our next game server (being coded now - in C++), will allow players to design assemblies and mechanisms in-game, and automate them with scripting, among other things. :-)
And of course, since the client is open source, you're welcome (and encouraged) to automate your character as much as you want. (In my opinion, if the game is so simple that you *can* program a super-bot that wins consistently, then the game lacks adequate sophistication. AI programming is tough, and if allowing for this kind of "cheating" encourages lots of people to gain skill at it, then this makes the (game)world a more interesting place! Besides, programmers are cool and deserve an edge. *Wink*)
Bryce
Top Geek at WorldForge
Re:This would not happen (Score:2)
Here's my critique. I find that these games offer enough semblance of realism and complexity to convince you that your intellect is shaping the outcome in rich and subtle ways; when in fact the range of possible outcomes is limited and has a coarse-grained dependence on your inputs. Generally, while your skill affects how slowly or quickly you advance, steady progression towards victory is inevitible once you've mastered the basic moves. Eventually (usually as the sun rises on a new day) you realize that you're no longer investing any creativity, yet you're still acquiring ability after ability, hoarding gold piece after gold piece, and all you can do is feel like a dupe.
Other human players help to some degree, but to me they can't overcome fundamental inflexibilities in the games.
I haven't played all that many games, but I'm thinking of Dune, Freeciv, Ultima. All great fun at first, but ultimately vapid.
Re:Article a little short on solutions. (Score:2)
When you start trying to outwit the troublemaking lusers, you turn it into a game. And they'll always win, because they have a lot more time on their hands than you do, and more self-esteem at stake.
How well are the troll filters working?
Re:This would not happen (Score:2)
Such is the case of the Doom cheat that was put in by Id Software. Any version of Doom before the final release 1.9 had a cheat in it that allowed you to see where your opponent was on the map. If you hit TAB and held down the left ALT key and typed 'IDDTIDDTIDDT', you would have this advantage. I know of a local hardcore player who used it quite often, and he ended up SLAUGHTERING everyone who wasn't really quick at finding a weapon after they respawned. However, they still had a chance, and in many cases, he was outgunned.
PS. I seem to remember the changelog that ID released with 1.9 saying something along the lines of "miscellaneous soundcard fixes"... it was never publically admitted that there was a multiplayer cheat in the game all along.
They'll kill me for this, but... (Score:3)
MUD-Dev [kanga.nu] is a professional and advanced amatuer discussion and design sharing forum, based around a mailing list and the kanga.nu domain. These topics are a regular subject of discussion there.
Follow this [kanga.nu] for a philosophical/technical discussion about trusting the client; includes significant amounts of contribution by Raph Koster (OU's Designer Dragon)
This [kanga.nu] is a currently running discussion about controlling "grief players"...
Take a look... there's some good stuff in here.
Can be 'foiled' (Score:4)
One has to ask how they did it. And I can tell you one thing, it wasn't with client side logic.
They do virtually *EVERYTHING* that this article says is a big nono, or simply not possible. Yet they are successfull. They take some addition precautions as well, such as not allowing the app to run minimized, therby making it a *little* harder to hack while running. They encrypt all local files, and do a CRC check on them. If they fail, they update them. All communications is encrypted, and yet they still maintain decent framerates..
Granted, their framerates aren;t their selling points, but the game is playable with *hundreds* of people in the same zone..
Which not make a game for hackers? (Score:4)
That is, all the entities in the game are controlled by computer programs, which are written by the players. The programs can run remotely on their machines and make request over the network (with some human guidance) or they can run 24hrs a day on a Java Servlet on the server.
The idea of programmers writing robots for a game isn't all that new. A long time ago there was C Robots. About 8 years ago Dave Taylor and I got our start in the gaming world by running the National Programming Contest for IEEE. This contest had a fresh new game every year that was played by client programs and run on the IBM AIX platform (they gave us free machines). Our contest were simple because contestants only had one weekend to make a client, but I can imagine a much more complex and interesting world for clients to play in.
What is kind of new here is the idea of a persistent world. As players get more advanced they can have their characters spawn new ones. A computer program can control 10 people almost as easily as 1. And computer programs can play 24 hrs a day, but human players have to sleep. And for someone looking to make money - you could charge for "hosting" the client program.
Re:Can be 'foiled' (Score:2)
http://www.hackersquest.gomp.ch/html/seqfiles.s
The ShowEQ program, with equivalents under Win, gives you plenty of information-leakage advantage under EQ. It reassembles the packet stream itself..so much for encryption..Also on that site, code to read all the data files, and some code which emulates an EQ server. EQ is just as vunerable as everything else I'm afraid.
Re:Is anybody surprised that RPG's encourage this? (Score:2)
The challenge (Score:2)
I believe that the people who produce cheats to games do so for different reasons than the people who use cheats use them. The person creating a cheat might want to see how a particular program works for knowledge's sake, might enjoy reverse-engineering for its own sake, might want to demonstrate his coding skill to others, might want to get a little advance knowledge about the game offline before he goes online and makes a tough decision. (Example: how to spend skill points in Diablo 2. This is a crucial decision that, due to poor documentation, must be made with relatively little information - unless you create a level 93 character of your class offline just to find out.) He might even want to abuse the system and cheat, but I speak from experience when I say that mostly, by the time you're done reverse-engineering the game structures you're interested in, it's no longer that interesting to play with the cheats.
And once you're done, you might want to distribute your cheat so you can get a little credit for your skill - but don't. It's the losers who download your cheat and use it to ruin the game for everyone else you have to be worried about.
Re:Article a little short on solutions. (Score:3)
Hos is this a bad thing? If there are nice abstract control features which can be added to a strategy game like Warcraft/Starcraft then it's crappy game design to not include them in the first place!
Seriously, aim-bot style "cheats" in RTS games like Starcraft are not cheats. They are improvments to the user interface. It's the game designers fault for expecting people to keep pushing the stupid create peon button like some kind of lab rat.
Now, it's true that one player gets the improved user interface and another player dose not, but that's easy to fix. Add a scripting langauge to your RTS game, but make the game send your scripts to everyone else who you play against. These people can paw through your scripts and pick out the part's they think they can use.
Anywho, my point is that a RTS game should not be based on mindless clicking. It should be based on strategy. It's not cheating to hire someone to click the mouse for you while you look over their sholder and tell them what to do, so why should it be cheating for the game to do the stupid stuff for you.
Actually, my roomate 2 years ago and I were pretty bad ass at sharing the effort of remembering to do all the stupid shit. One of us would play while the other would remind him to do the stupid stuff when it needed doing and help him to think though the biger strategic descisions. I've always considered the need for this kind of double teaming to be evidence of a poorly built game.
LAN parties are the solution, kiddies (Score:4)
internet multiplay is crap! stop doing it! everybody cheats, we know this. you don't know the people you're playing against (this, i'm sure, is not true in many cases, but i'm generalizing) so what fun is it to win? basically, all that internet play does is foster agressiveness and competitiveness in people-- two things i personally can live without. internet play is also difficult for modem users who are up against HPBs all the time.. gosh, what fun!
the solution is, get some friends together and start having LAN parties. start playing with people you know. multiplayer games are so much more fun when you get to talk about it afterwards over a beer or a mountain dew or whatever the hell you want to drink: "dude, that one part where you bounced off my rocket over the lava and onto jimmy's head was RAD!" "yeah, rad". i know, sounds lame, but you all know it's fun.
basically, i'm giving a call to gamers to quit being lazy sax of shznit and start organizing LAN parties in your town: they kick ass, and you could probably use the socializing (if you're anything like the hermits i normally party with)!
thanks for your time, sorry if i was overly-crude
Re:This would not happen (Score:2)
The interesting thing is that sometimes "cheating" is the solution to the bigger problem of "kill the monster get a treat" which creates the "cheating."
A MUD which gives you levels for cheating will just have people write bots to raise their characters level. A RTS game which requires lots of mindless clicking for building troops and commanding troops will be hacked to automate these tasks.
These are *good* cheats! They remove a stupid unnessicary part of the game and allow the player to play the game they really want to play like role-playing with higher level characters and exploring dangerous lands in the MUD or thinging about the actual strategy in the RTS game.
Anywho, cheating is not always the problem.. sometimes it's the solution.
I suppose the real long term solution to cheating is adding a scripting langauge to the game to make writing "reasonable" cheats (like an auto produce peon button) easy but make writing the "unreasonable" cheats (like removing the fog of war) harder (ala the artice).
Diablo II (Score:2)
Die, cheating scum. (Score:2)
Now, in Quake III, each player has a unique CD key that identifies them with the master server. This is used to prevents piracy.
Imagine if some of the countermeasures described in the article were implemented in a really subtle way... not to prevent cheating, but to just detect it, and detect it carefully and explicitly. Let that system run for a few months or so and collect a big blacklist of the cheater's unique CD keys, without anyone knowing about it.
Then the sting... (insert evil laughter here...) ban them from playing in regular games. Set up another "master" server just for the cheaters, listing servers that explicitly allowed cheating, and only let the cheaters play on those servers.
Oh yeah... make sure the delay before people got put on the blacklist was long enough that the fsckers couldn't return the game and get their money back.
Maybe that would teach the little bastards! Please, ID software! Do this for DOOM 2000!
Torrey Hoffman (Azog)
Re:Game Cheaters As Resource? (Score:2)
You see this pattern alot, whether it be writing cheats, cracking systems, defacing webpages.
Online cheating is not always bad (Score:2)
Re:This would not happen (Score:2)
--
Fortunately, not at all. (Score:2)
Then, the trolls showed up. They mocked the Slashbots that drove the intelligent posters away. In a desparate attempt to foster useful conversion, and because he couldn't stand to see people make fun of his site, he implemented moderation. This has been nothing but a disaster. Rather than act as a catalyst for spot-lighting the few intelligent messages, it allowed the Slashbot Karma Whores to pat themselves on the back for useless, mindless drivel. But, the trolls fought back. They organized and attacked brilliantly. They posted hysterical rants, mocked the repetitions, UNFUNY Slashbots (you Slashbots used to think "Imagine a beowulf cluster of these!" was "Insightful", not "Inciteful"), and fictional opinions designed to trigger the knee-jerk response of the hive-minded Slashbots. They are entertaining and artistic. Now that the old guard has mostly abandoned Slashdot for smaller communities, the trolls are the best thing about Slashdot. Frankly, they are the only good thing about Slashdot.
I no longer come to Slashdot to learn and share. I come here for a cheap laugh.
Thank you, trolls.
Re:Cheating in Open Source Games (Score:2)
I've come to basically the same conclusion myself. I've decided that my MMRPG will be a strategy game more than an action game, so the 'enhanced reflexes' issue is not so important. Also, it means the network protocol need not be quite so chatty, so a server can support more simultaneous users.
The server code will be open source, so there is the possibility of a person putting up a hacked server and running a world where they can cheat, but that is where the social engineering part of it comes into play. When they are found out, other game server admins can vote to exile that server from the web of worlds. We still need some sort of trusted repository for game character data and maybe a 'central bank', but I think that can be worked out. If anyone thinks this would be fun to work on, please join the GridSlammer mailing list.
Thad
Some Q1 experiences (Score:2)
I used to play multiplayer Quake classic a lot . . . eight hours a day one summer. I made some binary patches to the Linux client, both to enable cheats in multiplayer and fix some minor bugs (players that weren't visible in the score list, messages with carriage returns in them, bogus shirt colors in team games, etc).
I played with the cheats for a while, and discovered some interesting things. The good players could sometimes tell that I was cheating (I never denied it if someone guessed). The cheats often made the game less interesting, because there was less suspense (I only played with rendering hacks). And most interesting... even after I stopped using them, I was a better player from my experiences with them, because I had a better grasp of how other players acted; which routes they took on particular maps, how they evaded me when they thought I couldn't see them, stuff like that.
The stuff I was using was clumsy enough that when I finally found really good opponents (Clanring DM people), it kept me from improving. So I stopped using them, even the lighting hacks, which I think a *lot* of other players were achieving by editing the maps. And eventually I was good enough on my own that people called me a cheater anyway--a high compliment, IMO.
The article has some good advice for game developers; but I think that some forms of cheating, especially in FPS games, cannot be prevented. Determined hackers can always write their own client, or wrap the rendering layer nowadays. The best you can do is carefully filter the information sent to network clients, so that they don't get info about objects that should be hidden. And I can chime in to say that it's always unfair anyway--because of differing lag.
And for RTS games, I think a design goal should be that a human player can learn to be better than a computer. Definitely true for Starcraft, but I would like an option to write my own AI, and an arena where it can compete with other AIs... an RTS Core Wars :)
Re:Game Cheaters As Resource? (Score:2)
--
Re:Article a little short on solutions. (Score:2)
Why "solve" this "problem"? Having buildings produce units automatically is a FEATURE. Try ctrl-click to build in TA Kingdoms, for example.
Rather than "cracking down", I think improvement of the UI should be encouraged. It's supposed to be a strategy game, not a clicking-speed game [urban75.com], right?
Re:Read about aiming proxy.. (Score:2)
It's a little harder than the article says, actually. The proxy has to grok the map, too, or you fire at walls with people behind them.
I wrote a Q1 proxy... but it was designed to be run on the SERVER. (I had to do magical loopback things to convince a Q1 server that each connection was from a different client, because it mostly ignored port numbers... required multihoming on most IP stacks.) It was meant to fix some lame problems with existing CTF mods (they couldn't even reliably kick players or enforce team colors), and to help players make macros to report their status to teammates. I was even working on some weird features like a good spectator mode (unlimited connections, ghosting another player without help from the server), and server side demos (merging all the event streams from different clients to make a single demo that included all the gamplay).
Anyway, I spent a lot more time on that, and tools to query lists of servers (before gamespy existed), than I ever did on cheats. But Q1 wasn't very popular anymore by the time I started on the more interesting stuff, so I never really finished it due to lack of demand :(
Re:Can be 'foiled' (Score:2)
To put it another way, you're never getting any info that they aren't already sending you; you're just using a program to ease the analysis of it.
Re:Is anybody surprised that RPG's encourage this? (Score:3)
Geez, the number of times I see wholly ignorant people spewing that line in defense of letting kids have access to FPS, violent movies, etcetera.
Fantasy rules the child's life. The bogy-man under the bed, the magic of the shopping mall Santa, playing house, don't step on the cracks, Bambi dying.
Even a lot of adults don't have the ability to distinguish fantasy from reality. Look at the number of adults who believe that America grabbed the U571 submarine, or believe that UFOs exist.
It has nothing to do with intelligence and *everything* to do with naivete. Children don't have the life experience necessary to distinguish reality from fantasy.
In adults, it's more tempting to use the word "ignorance," but it's really the same thing: a naive person who hasn't the experience to know historical truth from Hollywood fantasy; or scientific methods versus wishful thinking.
At any rate, the bottom line is that anyone with experience with children or who spends a few minutes looking in a few child psychology books, will certainly understand that fantasy and reality are not easily distinguished by children.
And anyone who thinks otherwise is, at best, naive.
--
Re:Die, cheating scum. (Score:2)
The assumption behind the concept of a key generator is that there is some algorithm used to expand a small key space into a large one. By finding the algorithm, a hacker could easily guess a key in the small space and expand it to a valid key in the large space. However, There is no reason to believe that ID did that at all.
Q3A CD keys are long. Mine is 16 characters of alphanumerics. That gives a gigantic search space: 36^16, a 64-bit number.
I expect they just created a database of 64-bit random numbers, just enough for as many CD's as they sell. Then they just have to guard that database very, very carefully. If that's how they did it, there is NO WAY to generate a fake key other than guessing. If there are 10 million valid keys, then you would have a one in 795866110994640088 chance of randomly guessing one of them.
The only hope for cheaters would be to steal one of the correct keys!
Obviously there would need to be some way to deal with people who had their keys stolen and whatnot. But overall, I think it would be tremendously effective.
Torrey Hoffman (Azog)
Comments from the Article's Author (Score:5)
0) This article first appeared in print in the June 2000 Issue of Game Developer Magazine.
1) I didn't come up with the title. I honestly couldn't think of a catchy title, so I let my editor come up with one. As far as nit-picking over the useage of "Hacker" and "Cracker" - don't sweat it. Yes, I know the difference.
2) The most important point in my mind is that multiplayer cheating hurts other human players and is an order of magnitude different from the things we do when playing solo (single player) games. When a person realizes they are on the receiving end of a cheat - that another human being wants to do that to them - it's a hugely distructive feeling.
2a) People walk away from games and badmouth them to their friends when they think they are getting screwed. The better selling your game, the more this matters.
3) Many people have been emailing me and posting about things I didn't cover. I really appreciate it though I do already have some of it. When I wrote the article I had to keep it to about 7000 words, so I only got to cover about 1/2 of what I wanted to. Given the reception it has received, there will likely be a second article on the topic.
3a) Keep the comments and emails coming - I will try and respond to all.
That's all for now. I really appreciate everyone's input and thoughts on the matter.
-Matt Pritchard
Re:Article a little short on solutions. (Score:2)
The best method I've seen to combat the autoaim is to make aim irrelevant in that even if the crosshair is on the guy, the bullet's exit vector might not be on the same vector as your aim - the Counterstrike/Rainbow 6 cone of fire effect where your aim gets all wonky due to the recoil - the more you fire, the faster you move, the wider the cone becomes and the less accurate your bullets.
There's no way I can see an autoaim proxy that can get around this since the bullet vector is random and handled by the server. They will still get a higher % of hits, but they won't be able to dominate as badly. Unfortunately for games like Quake2/3, some people are amazing with the railgun without the use of a proxy and such an effect would totally kill their gameplaying since they rely on their aim being where they hit.
Re:You've an important distinction there... (Score:3)
Agreed absolutely!!!!
In today's age, understanding how the machine actually works is wayyyy underrated. People don't care about it anymore because they now grow up with smart compilers---or worse, they grow up buying the lie that just knowing how to use applications is "good enough" (umm, what if that app becomes obsolete, God forbid?!), and teachers de-emphasize it because it's not the "industry trend".
*I* say, screw the "industry trend". You need to understand how the thing actually works. I haven't researched this, but I'm willing to bet that people who don't know how the machine works write poorer quality code than those who do. I'm not talking about obsessive "optimized" coders who tweak the last ++ operator in C and abuse #define's to get a "100%" efficient program (only to get totally screwed over by the optimizing compiler that gets totally confused by the weird code and spits out poor executables). I'm talking about people who've had solid experience in assembly language programming. They are the ones who understand what exactly goes on in optimizing compilers, and how to take advantage of them. (John Carmack, anyone?)
People think that assembly language programmers will become extinct. Everybody around me says so. But they don't realize how much understanding you can gain just by learning how to look at a hex dump, and with a good reference on your processor's assembly language, locate where a piece of code might be, and then figuring out how to patch it to do what you want. Figuring out how to locate a piece of code in a large binary executable, possibly with no information on what is code or what is data, this in itself will be such a valuable learning that you won't ever regret spending the time and effort. You may not actually use this in your career, but who knows, the kind of logic that you need to apply to this kind of problem may well earn you a good income. And then of course, after locating the piece of code you're interested in, constructing the patch to it -- which must take into account many constraints like size, which often severely limits what instructions and addressing modes you can use -- and applying the patch... the kind of analytical thinking that you need to accomplish this will be such a help to you that even if you'll never touch assembly language again in your life, you won't regret having learned how to deal with it.
It's not that assembly language programmers are stubborn or trying to hold on to "outdated" methods; rather, it's that young programmers spoilt with modern conveniences and short-cuts are deprived of an experience that may make a huge difference to their abilities, even if their area of expertise will be programming in a high-level language.
---
Online Poker Game Exploit (Score:2)
Rather they used the fact that the publisher shows off the thouroughness of their software by publishing the deck shuffling alogirithm. Now because this is seeded from the system clock it is possible apply the shuffle using all different values of the clock until you find which time is in sync with the server.
Clever stuff
Re:Bolo was the bomb (Score:2)
Yes indeedy there is.
The Windows port of Bolo is called WinBolo and can be downloaded from the author's website [xoom.com].
There is also a Linux dedicated server available from the same page. A Linux client port is being worked on by the same guy (using GTK and SDL) and should be available sometime in the next few months.
Re:But Cheating is Allowed!! (Score:2)
If you don't play by the same rules as everyone else, it's not a fair game.
(Why was Neo a hero? He wasn't good at anything, he simply had a magical power (as far as people in the sim could tell). He didn't actually do anything based on actual skill, he auto-trained for things, basically, using scripts... Yay, what a hero... Whoa!)
Re:Article a little short on solutions. (Score:2)
It might be better to have a game where you can pause, think about things, and order various actions. The actions only start happening once you unpause the game. In this way speed of mouse clicking would not be a factor. OTOH such a game would probably be very dull and would not have the 'real-time strategy' element that makes eg Dune 2 so fun to play. I used to play Transport Tycoon by pausing and unpausing all the time, but then I decided life was too short to play in such an anal fashion.
It would be interesting to _encourage_ the development of scripts for Command&Conquer type games. It might make the games more fun to play. If I have to sit in front of a Windows box and repetitively click on things I get annoyed. On Unix I'd probably write a script to automate it and get on with something more interesting. There are tedious elements in strategy games too, why not let users automate those?
Re:Article a little short on solutions. (Score:2)
Yes, this is a very good thing, but you should also force the client to upload all the scripts to it's opponent. This means that someone who is vaguely competent at programming can take ideas from the people who beat them.
Also, I really hate those little timing exploits which quake scripts can exploit. Unfortunatly, game writers mayu be tempted to leave these "bugs" as some sort of reward for the person who waist a large amount of time mastering the timing of a timing "bug." Scripts will force them to make it a normal part of the game or remove the timing exploit.
BTW> Why should players who invest a significant amount of time outside the game engine not be rewarded more then players who jyust invest time inside the game engine? I agree that it changes that nature of the game, but I think it changes it in a good way.. it makes people think more then react.
Re:Article a little short on solutions. (Score:2)
There are other ways of using my original plan, even if the clients can parse the maps for location and skins. You could have the virtual players exist with normal skins, but just outside of the field of view of the player (though I'd imagine good auto-aim clients probably only target things being looked at). You could place them at far distances that players wouldn't really notice them otherwise. You could architect the game to have "curtains", things that people and weapon fire could go through but you couldn't really see, and place virtual players behind that. You could just give virtual players the invisibility powerup and have them stand still in a corner. Perhaps a virtual player with invulnerability lurks in every lava pool. What checat client would resist the opportunity to kill a guy stuck in a lava pool?
And that's only one dimension of what you could send. Why limit the server to sending just false players, you could send other wierd things about the game state that would have no effect on what a normal player saw or did, but could confuse (or possibly even crash) a hacked client (or the real one - careful!)
I'm sure there are a lot of other ways to implement the idea. Basically I feel that if the developers really were serious about preventing the augmentation kind of cheat, they could architect the game in such a way to make the virtual players easy for the server to place without distracting normal users and at least limit the effictivness of the augmentations to the point where they were more trouble to use than they were worth.
Until now, I don't think cheat prevention has been even a low priority for most game developers, even for a lot of the MMP games. They're just at the stage now where most developers realize they need to store most things on the server! Soon I think they'll really start dealing with cheating issues, but they have a long way to go to build in any kind of sophistication.
Re:Is anybody surprised that RPG's encourage this? (Score:2)
http://washtimes.com/national/default-200072722
Conclusive is as conclusive does; there are people who believe there's no conclusive evidence that smoking causes cancer. Go figure.
--
Re:Game Cheaters As Resource? (Score:2)
Good question. The basic answer is that the speed of programming in Python isn't as valuable to us for this particular application. The stuff that isn't performance critical also happens to be the simpler bits of the program, so even if it is a bit harder to do in C++ than in Python, it doesn't matter all that much in the grand scheme. Plus, having the entire core written in one language is nice for simplification and elimination of interfaces (and the overhead).
What we'll probably end up with is the server's core in C++, and pluggable modules that can be written in Python or whatnot to implement some of the game-specific stuff. That way, the C++ will be limited to the areas that maintainers and future game developers won't be getting into very often.