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.“
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; however, darknets also provide access to cheat tools and methods.
Types of cheats
Lagging
By attaching a physical device (called a lag switch) to a standard Ethernet cable, a player is able to disrupt updates/communication from the server with the intent of tricking the game server into continuing to accept client-side updates (which remain unimpeded). The goal is to gain advantage over another player without reciprocation; opponents slow down or stop moving, allowing the lag switch user to easily out-maneuver them. From the opponent-perspective, the player using the device may appear to be teleporting, invincible, have delayed animations or fast-forwarded game play (delivered in bursts), or simply find themselves losing to an invisible opponent. Some gaming communities refer to this method as tapping.
In the peer-to-peer gaming model, lagging refers to a player with a faster connection flooding an opponent(s) using a basic denial-of-service attack outside the game structure.
User settings
Typically, a player can change settings within a game to suit his or her preference, play-style and/or system; these alterations are considered cheating in certain circumstances. For example, changing the keyboard layout to make it easier to use is an accepted practice and not considered cheating; however, changing player models and/or textures, increasing the field-of-view, turning off or limiting particle effects, modifying the brightness and/or gamma are considered cheating when set to extremes.
Exploits
Exploiting is the application of an unintended use or bug that gives the player an advantage. Not all gamers view exploits as cheating, some view it as another skill because certain exploits take a significant amount of time to find and/or dexterity/timing to use. Example dexterity/timing exploits include bunny hopping and texture-climbing in Quake. Even an official part of the series such as „skiing“ in Tribes is considered an exploit by some. However, exploits are considered cheating when they have an unbalancing effect, are used in an unintended manner or not intended to be feature.
Ghosting
Most games allow other participants to observe the game as it is played from a variety of perspectives; depending on the game, perspectives allow an observer a map overview or attach a „camera“ to the movement of a specific player. In doing so, the observer can communicate with an accomplice using a secondary communication methodology (in-game private message, 3rd-party or even off-line) to inform friendly players of traps or the position of opponents; an observer can be an active player, using a separate computer, connection and account.
Some systems prevent inactive players from observing the game if they are on the same IP address as an active player on the grounds that they are probably in close physical proximity; when all players from a single IP address are no longer active participants, they are all allowed to observe.
Binding
Binding involves reassigning a key to the mouse wheel or any other key (CAPS-LOCK) or combination of keys that allows a player to issue commands at a faster rate than the expected physical limitation of the player pressing the default key configuration sequentially. For example, assigning the „fire“ command to the mouse wheel allows a player to shoot faster (generally with weapons that fire at the same rate at which the user clicks) when compared to the default „fire“ key configuration. This is a subset of the user setting cheat.
Aimbotting and Triggerbot
An aimbot (sometimes called „auto-aim“, not to be confused with the built in auto aim in Metal Gear Online, which allows the user to only get body shots) is a type of computer game bot used in multiplayer first-person shooter games to provide varying levels of target acquisition assistance to the player. While most common in first person shooter games, they exist in other game types and are often used in combination with a TriggerBot, which shoots automatically when an opponent appears within the field-of-view of the player. Some TriggerBots are blatant while others attempt to hide the fact they are being used through a number of methods.
Wallhacking
Wallhacking allows a player to see through solid or opaque objects and/or manipulate or remove textures; when used in conjunction with an aimbot certain wallhacks allow the player to shoot through solid objects. A subset known as WhiteWalls removes the color/texture from objects in the surrounding environment, providing distinct contrast to opposition character models, which remain colored/textured. (See ESP for an evolution of the WallHack.)
Skin Cheats
Chameleon skins, cham-hacks or chams, replace player model textures with brightly colored skins, often neon red/yellow or blue/green, that change color depending on whether the model is visible. For instance, an exposed part of an opponent would be shown in a different color, giving a cham-hack user an advantage over non-hack users, especially in games in which camouflage techniques (provided by in-game mechanics, objects or player models) are negated. While cham-hacks are accomplished using a wallhack subset, historically, user settings (in Quakeworld, for example) or exploits in many older games allowed replacing skins arbitrarily with varying degrees of success–from pseudo-camouflage in dark areas of a map (prior to specular and other advanced lighting techniques) when using a „shadow skin“; to completely disappearing while the skin change propagated to other players; to forcing a plain-white skin on all opponents.
ESP
Extrasensory perception (ESP) in video games displays contextual information such as the health, name, equipment, position and/or orientation of other participants as navigation/directional markers. In military parlance, this is known as Battlefield Visualization and part of a larger trend toward Information Dominance.
Sharing
Sharing is when multiple people play using a singular character — mainly in MMORPGs — to gain an advantage by having higher online times and/or being able to apply more manpower toward game 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 specifically forbid it.
Spinbots
Spinbots alter the game so that play occurs on a rotated screen — upside down, sideways, diagonal, etc. Spinbots that cause the player to have more difficulty playing are rare; spinbots that present the user a normal view are more common but may still cause the player in-game model to spin extremely fast, disrupting the character model’s hitbox and distracting other players.
Disconnecting
In games where wins and losses are recorded on a player’s account, a player may disconnect when he or she has lost in order to prevent the loss from being recorded. A similar phenomenon is when a server operator boots an opponent or players who they do not support. Disconnecting is considered immoral, as the opponent may not have his or her „win“ recorded. Some games implement a disconnection penalty, usually by recording the disconnect as a loss, or a loss of experience points as in Halo 3.
Custom Kicking
In games where a player rather than a server hosts the game, custom kick software allows the host to selectively block connections to/from particular players. The intent is to prevent malicious players from ruining the game for others, but when abused, it is used to remove opponents so the host, partner(s) or preferred side gain an advantage. A firewall on the host itself or upstream (between the host and connecting players) can easily be co-opted into performing this function when the game itself doesn’t provide a built-in mechanism. This is a subset or extension of stacking abstracted to the network level, rather than based on the direct social order/preference associated with stacking and related sport-based drafts.
Stacking
Stacking involves altering game settings or team lineups to give one or more teams an unfair advantage over the other(s). One example includes pitting a team composed of skilled or known players against a team with members of lesser skill. Although a valid and accepted tactic and practice—especially in real-life sports —stacking upsets less-skilled players who feel that they aren’t being given a fair chance. Less ethical rigging involves weighting the game by providing a player or team an advantage by outfitting them with better (or more familiar) weapons or equipment or creating a play field that caters to a certain player, team and/or playing style
Farming
In games where achievements are available via defeating a number of a particular class, players may arrange to win/lose against one another in order to obtain the achievements without having to play the game linearly. This is also known as stat-padding or swapping, but is not considered cheating by most. The term farming also refers to the practice of garnering achievements and/or virtual property for the purpose of real-money-trading, with rare exception this has no direct effect on the gaming experience of other players; instead, it is a violation of most EULAs and could devalue the virtual property being farmed.
Implementation of cheats
In the client-server model, the server is responsible for sending a client only necessary information and maintaining game continuity. (See „Efficiency versus security“ below for drawbacks.) In the peer-to-peer gaming model, clients run equal code but are still subject to most of the same type of cheats found in the client-server multiplayer model; however, the peer-to-peer multiplayer model has depreciated in favor of the client-server model with the wider adoption of high-speed networks.
„Never trust the client“ is a maxim among game developers that summarizes opinion regarding the client-server gaming model; it argues that information sent to the client will be known regardless of whether or not the player should know that information. For example, a server might notify a client that another player is behind an object and cannot be seen; however, a wallhack would reveal the other player. Conversely, data from the client might indicate that a player has instantaneously moved from one position to another without playing linearly through required intermediary parts, indicating manipulation of game or positional data.
Game Code Modification
Many cheats are implemented by modifying game software, despite EULAs which forbid modification. While game software distributed in binary-only versions makes it harder to modify code, reverse engineering is possible. Also game data files can be edited separately from the main program and thereby circumvent protections implemented in software.
Wallhacks and maphacks often function by modifying the software. Other cheats analyze or change the game state in memory, such as some aimbots and programs that give infinite ammo or health (often called trainers). Additionally, software with legitimate use during non-gaming computer operation can fulfil the role of a cheat when used inside a game, examples include program accelerators and an auto clicker.
System Software Modification
Rather than modifying the game code (which the game itself or a 3rd-party protection system may detect), cheats choose to modify underlying system components. An example of this is graphics driver modifications that ignore depth checking and draw all objects on the screen — a primitive wallhack; the advantage of system or driver modification is that it is harder to detect, as there are a large number of system drivers.
Packet Interception, Tampering & Manipulation
The security of game software can be circumvented by intercepting and/or manipulating data in real-time while in transit from the client to the server or vice versa. Interception can be passive (see Ghosting and ESP) or result in active manipulation (see wallhacks); either methodology can be performed on the client machine itself or via an external communication proxy — some aimbots incorporate this methodology. Newer games encrypt network data at the expense of client computing resources that could be directed to make a faster, more immersive gaming experience.
Comparison
There are many facets of cheating in online games which make the creation of a system to stop cheating very difficult; however, game developers and third party software developers have created or are developing technologies that attempt to prevent cheating. Anti-cheat software is 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, ProtectEnviron or Warden.
Exploits of bugs are usually resolved/removed via a patch to the game; however, not all companies force the patches/updates on users, leaving the actual resolution to individual users.
Availability versus usability
Generally, the more game code run on the server, the fewer cheats possible in the game, since the server operator maintains control over what is allowed. However, a game server has limited resources (storage, bandwidth and computational capacity), which makes it necessary to distribute code to clients causing a trade-off between availability of cheats versus usability.
Efficiency versus security
Server-side game code makes a trade-off between calculating and sending results for display on a just-in-time basis or trusting the client to calculate and display the results in appropriate sequence as a player progresses. It can do this by sending the parts of the world state needed for immediate display, which can result in client lag under bandwidth constraints, or sending the player the entire world state, which results in faster display for the player under the same bandwidth constraints, but exposes that data to interception or manipulation — a trade-off between security and efficiency.
Ramifications
Some companies and leagues ban suspected cheaters by blacklisting specific installation/serial keys or user registrations; the player is effectively prevented from playing the game online. While game publishers are known to ban players employing cheats, the actual number of players banned is usually not revealed.
Sources: Wikipedia Modified by Fanterazzi