Jump to content

Cheating in online games

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 71.142.208.226 (talk) at 23:55, 27 April 2008. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Cheating in online games are activities that modify the game experience to give one player an advantage over another player(s); depending on the game, different activities constitute cheating and it is often a matter of consensus opinion as to which particular activity or activities actually constitute cheating. Clive Thompson writes that "Johann Huizinga, one of the first big philosophers of ludology -- the study of play -- defined cheating as when you pretend to obey the rules of the game but secretly subvert them to gain advantage over another player[1]."

Cheating reportedly exists in all multiplayer online games but is difficult to prove. The Internet provides players opportunity, means and methodology -- through anonymity and resources -- necessary to cheat in online games.

Types of cheats

User settings

Typically, a player can change settings within a game to make it suit their play style and system. These alterations are generally not cheating, except in extreme circumstances. Changing the keyboard layout to make it easier to use is usually accepted. However, issues such as changing in-game player models and textures, turning down particle effects to see through smoke, or modifying the brightness or gamma in order to make it easier to see in dark areas are considered cheating by some players.

Exploits

Exploiting is the use of bugs in the game that give the player an unfair advantage. Not all gamers view exploiting as cheating, some may view it as another skill due to the fact exploits take a significant amount of time to find. Example exploits include bunny hopping in Quake or even an official part of the series such as "skiing" in Tribes. However, most exploits are unbalancing to a multiplayer game, and are called cheats because they are not intended to be features.

Ghosting

Most games allow other players to observe the game as it is played. Most games offer a variety of camera perspectives from which an observer may scan the map, the most frequently used being the free camera which allows the observer to fly through the map. In doing so, they can communicate with players via a number of third part programs to inform friendly players about any traps they may run into or they may divulge the position of opponents

Binding

Binding involves binding the "fire" command to the mouse wheel or any other key or combination of keys so that the player can shoot faster (generally with weapons that fire at the speed that the user clicks) than with the default key configuration.

Aimbotting

An aimbot is a program that aims for the player. These are the most common in first person shooter games, though they exist for many games. Some aimbots are blatant, and fire at any enemy that comes nearby while others attempt to hide the fact they are being used through a number of methods.

Wallhacking

Wallhacking allows the player to see through walls, giving them an advantage as they know who will come around the corner, or where their opponent is hiding. Most wallhacks will allow you to see through objects other than walls.

Sharing

Sharing is when multiple people share an online game (mainly MMORPGs) character. Common reasons are to gain an advantage by having higher online times, and being capable of having more manpower (for activities such as leveling or gaining experience). In some MMOs this is not seen as cheating although others such as Maplestory, Blizzard Entertainment's World of Warcraft or Jagex's Runescape forbid it.

Spinbots

Spinbots are a special type of hack, which not many people will ever encounter. They are used by few players. Spinbots are an odd hack, because they actually cause the player using them to have a harder time playing. Spinbots work by altering your game program in a manner so that you play on a rotated screen (upside down, sideways, diagonal, etc.)

Disconnecting

In games where wins and losses are recorded on a player's account, a player may disconnect from a game they have lost in order to prevent the loss from being recorded. A similar phenomenon is when someone running a server boots players who are beating them. Disconnecting is considered immoral, as the opponent of the cheater may not have their "win" recorded. Some games implement some kind of disconnection penalty, usually by recording the disconnect as a loss, or loss of experience points as in Halo 3.

Stacking

This kind of cheating often involves altering game settings or team lineups in order to give 1-4 teams an unfair advantage over the other. One example includes filling a team with only skilled or known players and pitting them against another team of lesser skill. Though this tactic is not illegal, it often upsets lesser-skilled players who feel that they aren't being given a fair chance. Less ethical rigging involves giving one team more advantages such as better weapons or equipment. Riggers can also abuse games with map editors by creating maps that give the advantage to a certain team in the game.

Implementation of cheats

There are many facets of cheating in online games which make the creation of a system to stop cheating very difficult.

"Never trust the client" is a common maxim among multiplayer game developers that summarizes in their opinion the case of client-servers. It argues that programmers should assume that information sent to the client game will be known by that player, regardless of whether or not the player should know that information. For example, the server might tell a client in a First Person Shooter that a player is hiding behind a door and cannot be seen, but a wallhack cheat can reveal the player. Similarly, data from the client might indicate that the client teleported from one side of the map to another for some reason (possibly a change made to the game's data). The server is responsible for sending only the necessary information and for maintaining the game's continuity. (See "Efficiency versus security" below for the drawbacks.)

The game software

Many cheats in today's games are changes to the game software, although many game companies have policies which forbid the modification of such code. While the software (for most games) is distributed in binary-only versions make it harder, reverse engineering is always possible. Also many of the data files for the games can be edited without editing the main program and thereby circumvent protections in the software.

Wallhacks and maphacks often function by modifying the software. Other cheats can analyze or change the game's state in RAM, such as some aimbots and programs that give infinite ammo or health (often called trainers). There is software that are actually legitimate programs during normal uses but they can fulfill the goals when used inside the game. Some examples of these programs include program accelerator and auto clicker.

System Software

Rather than modifying the game (which the game may detect), cheats can choose to modify the underlying system software. An example of this is modifying graphics drivers to ignore depth checking, and draw all objects on the screen (A primitive wallhack). The advantage of these is they are harder to detect, as there are very large number of possible drivers.

Packet tampering

Some cheats completely circumvent the protection of the software by running in real-time and changing the game data while in transmission from the server to the client. Some aimbots in first-person shooters use tricks like this. Some newer games encrypt the network data, but this uses up computer resources that could be used to make a faster-running or better looking game instead.

Preventing cheats

Game developers and third party software developers have created technologies that attempt to prevent players from cheating. Anti-cheating software is most commonly used in popular games such as Half-Life, Quake, or World of Warcraft. A few examples of anti-cheat software are DMW Anticheat, GameGuard, PunkBuster, VAC, or Warden (software).

Some "Cheats" are exploitations of bugs in the game, these are usually fixed via a patch to the game that removes the bug.

Some companies select to ban suspected cheaters from their games. When this is done by blacklisting the game's serial key, the player is often effectively prevented from playing online the game they purchased. Many game developers are known to have banned players, though the actual number of players banned is usually not revealed.

Efficiency versus Security

The more of the game code that is run on the server, the fewer cheats are generally possible in the game, as the server's operator has control over what happens. However, a game server has limited bandwidth and limited resources, which makes it necessary to distribute code to the clients. There is a trade-off between lack of cheats and usability.

For example, a player is not supposed to know who is hiding behind a closed door. The server has to make a trade-off between calculating what the player can and cannot see. It can do this by sending only a part of the entire world state, which can result in client lag but makes wallhacks unlikely, or sending the player the entire world state, which is faster for the player but makes wallhacks more likely. The server can also choose to send part of the world state, which is a trade-off between security and efficiency.

References

Hoglund, Greg. Exploiting Online Games. 2008. Pearson Education

  • Counter-Hack.net Provides information on many aspects of cheating and anti-cheating in many online games. Counter-Hack.net, 1999.
  • Punkbuster Provides "anti-cheat" software for various online game manufacturers.