Multiplayer Game Cheating
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.
I for one deplore cheating on online games. For shame. I'd write more, but I've got to go log on with my other account and moderate this post up.
--Shoeboy
I think that some times a little chitting can add to a game, come on how many can say that you haven't got home from work and entered "it is a good day to die" in to the chat Window of Warcraft II and send a Peon out to kill the dark armys of the humans? Helps with the stress and it can add a little to the game.
Does anyone actually have a Java program designed to control air traffic, or for the operation of a nuclear facility?
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.
when you use any sort of game cheat for so long it just isn't even fun to play anymore. You have such an unfair advantage that if you actually are enjoying it, you really need to take a look at yourself and consider getting professional help. Computer games that are played online are NOT real. You are NOT cool when you win. I think that gamers that cheat to win sucked at everything they did (inside or outside of the Internet) and they feel this need to fix that (something like the fathers that scream at the kids to kick ass in some such sport or get all fired up on bad calls because they are living their non-existant sports career out in their kids).
:)
.02
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
One thing that impressed me about the article was the ingenuity of cheaters (the ones who actually create the cheats, not the lamers who just download and use them). The Doom/Quake franchise managed to, in some sense, harness that creativity by allowing people to create their own game modifications.
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 ?
wants to be the first monkey to touch the monolith
The article identified six types of cheating, but completely failed to identify any reasonable solution for the first one: reflex augmentation.
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?
"Beware he who would deny you access to information, for in his heart he deems himself your master."
In large part, that depends upon how you define "win". Your definition (and mine) involves meeting a specific objective by using a set procedure. IOW, following the rules is inherent in the very definition. To a lot of people, the word win seems to mean something like "humiliate the other person as much as possible by any means necessary." To their way of thinking, "cheating" is merely creative strategy. The fact that they were "smart" enough to cheat and you weren't is just more proof of their superiority.
"The legitimate powers of government extend only to such acts as are injurious to others." Thomas Jefferson.
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.
Information wants to be anthropomorphized.
In massively multiplayer online games, most notably MMORPGs, integrity is everything. If people can't trust the integrity of other characters, they won't bother spending the time to build them. I think a lot of attention needs to be paid about how to keep server-side certain pieces of critical data.
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.
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'd rather have someone respond than be modded up.
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.
-bugg
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.
(From the Article..very interesting. read on) An FPS aiming proxy works like this: The proxy program is run on a networked computer and the player configures it with the address of the server they are going to play on. They then run the FPS game on another machine and connect to the proxy machine, which in turn connects the game to the server, acting just like an Internet packet router.
:)
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...
Rapid Nirvana
Or how would Neo dodge bullets or bend spoons in The Matrix???
Yes I've used the map hack on Starcraft- not to cheat, but to give myself a fighting chance because cheating is so widespread on BNET. The whole balance of power concept from that Star Trek episode where Kirk in response to the Klingons arming one side of a warring faction, broke the rules and armed the other side in order to create an equilibrium. It's a never ending cycle because everytime a patch is released, the new hack follows in a matter of days. Maybe trying to cut corners for that edge is just human nature.
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.
Sailing over the event horizon
As someone without a cable/DSL/anything above 33.6, I have little interest in multiplayer gaming. I typically buy games only for single player only.
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?
Another form of cheating that get's overlooked is cheating by the people who are running or created the game.
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.
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
Imagine all the people...
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). Sorry about sneaking in that shamelessly self serving plug. :)
Cheers,
Thad
The Bolachek Journals
Looks like "Up, Up, Down, Down, Left, Right, Left, Right, B, A, Select, Start" has been the downfall of human kind.
Why not skip the technical solution and go for the social one? Sort of like Advogato's trust model, or maybe more like PGP's key exchange mechanism. I trust Anna, who trusts Bob, so I trust Bob. Stuff like that. If someone cheats, you don't trust them. That way you don't have to trust everyone explicity, but you still have a wide pool to play from. Perhaps this is a bit too complicated for the average FPS-player (I'm not sure it could be implemented to where I thought it was easy). Do any games have solutions like this? Of course, such a model could possibly be abused and would put new players at a disadvantage (aren't they already, though?).
I don't see how there could be any solution to this. In theory, you could take your cheating all the way to a massively complicated AI you plug in between the machine the game is running on, and the keyboard, mouse and monitor you see.
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.
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.
Later,
Thad
The Bolachek Journals
This would not happen if playing these games honestly was as fun as it is supposed to be.
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.
Out there on the web, we've got this site...
MUD-Dev 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 for a philosophical/technical discussion about trusting the client; includes significant amounts of contribution by Raph Koster (OU's Designer Dragon)
This is a currently running discussion about controlling "grief players"...
Take a look... there's some good stuff in here.
-- Still waiting for the Nike endorsement
Look at how many hacks and/or cheats that have been uncovered in Everquest. Nada.. Ziltch.. A few cheats that have been quickly 'repaired', but those that resided in the 'buisness logic' of the game.
;-P
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..
-- I'm the root of all that's evil, but you can call me cookie..
I think someone should make a persistent world game designed for programmers. Instead of having them focus their energy destroying the experience for other players, why not make a game that encourages programming/hacking - in fact it requires it.
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.
-- Virtual Windows Project
You almost made your point... While I agree that the declining morals/values issue needs to be addressed its not the fault of RPG's. It is almost entirely the parent of said childrens fault. These games are not for children. Period. Teenagers, well ok, depending on the values you have successfully instilled in them. If you let a television set raise your child then you will get what we as a society are seeing in the rise of violence amongst minors. Our generation had D&D and we didn't go around killing classmates and teachers yet D&D was more of a fantasy world than these games create because you have to visualize the deaths of your oppenents etc. On the flipside if you teach young minds the strategies that games teach (for arguments sake even checkers does this) they will have learned skills that puts them several steps ahead of most folks in business school. And wait a minute... is baseball(or other little league sports for the matter) better for your kids when parents are beating up (recently killing) other parents/coaches/umpires because they disagree with the calls? Many of the little league systems could even be blamed for the rise in the use of steroids because the children are being taught to win at all costs. I think not. I would say the best activity for children to participate in is martial arts training (don't even bother with the 'thats violence' retort) as long as your not a 'little league' small minded parent who puts thier kids in tournament karate events(see above note on parental behaviour) for selfish reasons like pressuring your kids to perform.We are bringing up children in a society where they are encouraged (in school none the less) to turn thier parents in if the parents use corporal punishment and children can divorce themselves from thier parents etc. The problem goes much deeper than the proverbial scratch in the surface mentioned here though, 'Blame Shifting' is on the rise. People can't believe that its thier own fault thier kids are the way they are so they need scapegoats to blame for thier inaddequate parenting. Parents sued Judas Priest and Ozzy Osborne for this kind of lunacy in the 80's becuase thier kids committed suicide. Hence, it is much easier to say its so and so's fault rather then thier own. Disagree? Read your own post and then take that magnifiying glass of self-righteousness and point it back at yourself. Like I said the blame is on the parents, a lack of parenting combined with a lack of discipline for innappropriate actions not society, not rpg's, not even music or television.
Prospecting Stinks. Stop Wasting Time on Cold Calling.
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.
It's rare that you're presented with a knob whose only two positions are Make History and Flee Your Glorious Destiny.
i, for one, don't give a shit about cheating because whenever someone i'm playing is cheating, i can walk over to their computer and kick them in the good 'n plentys. let me explain:
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
grizzo: totally insecure, but very convenient.
I realize this is (only slightly) offtopic, but the article mentioned that in the original Diablo cheating was rampant. I've been playing Diablo II for a while and I don't believe I've encountered any cheaters. The CD key system and requiring Closed characters to be stored on their servers seems pretty secure to me, but I'm curious, anyone have thoughts/comments on how cheat-proof it actually is?
"Well kids, you tried your best, and you failed. The lesson is, never try."
After reading the article, I'm just depressed. But, I had kind of a neat idea for hitting cheaters back - hard. The wailing and gnashing of teeth would be heard far and wide...
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)
Torrey Hoffman (Azog)
"HTML needs a rant tag" - Alan Cox
Surely I'm not the only one who remembers smart-ass Lord British getting fried in Ultima Online? ;-)
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.
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 :)
Java: the COBOL of the new millenium.
Children are *NOT* good at distinguishing fantasy from reality.
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.
--
--
Don't like it? Respond with words, not karma.
Oh wow. I just got back into Dallas from Siggraph 30 minutes ago and discovered my mailbox filling up with emails from the /. side-effect. Just a couple quick comments on the discussion....
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
Take a look at This for an insight into how a group of security experts developed a nice method to figure out the workings of an online poker game despite the fact that the hidden cards were never send down the wire to the thin java client.
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
Yes indeedy there is.
The Windows port of Bolo is called WinBolo and can be downloaded from the author's website.
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.
.sig?
To contradict you:
5 08.htm
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.
--
--
Don't like it? Respond with words, not karma.