

オンラインゲームでは、チートとは、一般的にサードパーティ製ソフトウェアを使用して、ゲームのルールや仕組みを悪用し、他のプレイヤーに対して不当な優位性を得る行為です。[ 1 ] [ 2 ]何がチートに該当するかは、ゲームの種類、そのルール、特定の行為がチートとみなされるかどうかについての一般的な意見によって異なります。
ほとんどのマルチプレイヤーオンラインゲームではチート行為が行われているが、その実態を把握するのは難しい。[ 3 ] [ 4 ]オンラインゲームにおけるチート行為には、スクリプトやボットなどのソフトウェア支援、ゲーム内の脆弱性や不具合を利用した様々な非スポーツマンシップ的なプレイなど、様々な形態がある。インターネットやダークネットでは、オンラインゲームでチート行為を行うために必要な手法が提供されており、ソフトウェアは購入可能な場合も多い。[ 5 ]
不正行為の手法が進歩するにつれて、ビデオゲームパブリッシャーも同様に不正行為対策を改善してきたが、その効果には限界がある。不正行為者に対する罰則も様々で、不正行為の作成者や使用者に対しては法的措置も取られている。一部の国では不正行為を禁止し処罰する法律があるが、ビデオゲーム会社は不正行為者に対する訴訟で著作権侵害を主張してきた歴史がある。[ 6 ] [ 7 ]
エイムボット(またはオートエイム)は、コンピュータゲーム用ボットの一種で、主にファーストパーソン・シューティングゲームで使用され、プレイヤーに様々なレベルの自動的な標的捕捉と照準調整機能を提供する。これらは、プレイヤーの視野内または照準レティクル内に敵が現れた際に自動的に発砲するトリガーボットと併用されることもある。
エイムボットは、各プレイヤーのクライアントコンピュータが、プレイヤーの位置から見えるかどうかに関わらず、他のすべてのプレイヤーに関する情報を受信することに依存しています。ターゲティングとは、プレイヤーの位置に対する敵の位置を特定し、プレイヤーの武器をその標的に向けることです。このターゲティングは、敵が壁の後ろにいる場合や、直接見えないほど遠くにいる場合でも機能します。
サーバーによっては、非アクティブなプレイヤーが観戦し、アクティブなプレイヤーの視点からゲームを観戦できるものもあります。ゲームプレイのアクションを録画できる場合もよくあります。ターゲットエイムボットを使用している場合、観戦者にはボットが不自然なほど正確な位置追跡をしていることがすぐにわかります。エイムボットやトリガーボットの中には、相手がチーターの照準に入った瞬間に発射されることを隠すために発射を遅らせるなど、さまざまな方法で観戦者に使用を隠そうとするものがあります。トリガーボットプログラムの中には、マウスやキーボードを使って簡単にオン/オフを切り替えられるものもあります。
チートツールには、超感覚的知覚、移動速度、弾薬数、プレイヤーレーダーの調整など、他の機能に加えてこれらの機能も組み込まれている場合があります。初心者は、これらのツールを俗にエイムボットプログラムと呼ぶことがあります。
ピアツーピアのゲームモデルでは、ラグとは、1 人以上のプレイヤー間のデータの流れが遅くなったり中断されたりして、動きが途切れ途切れになり、対戦相手が不規則な動きをしているように見える現象です。ラグスイッチを使用すると、プレイヤーはクライアントからサーバーへのアップロードを妨害することができ、その間、自分のクライアントは実行されたアクションをキューに入れます。目標は、相手プレイヤーに反撃することなく優位に立つことです。対戦相手は動きが遅くなったり止まったりするため、ラグスイッチのユーザーは簡単に相手を出し抜くことができます。対戦相手の視点から見ると、デバイスを使用しているプレイヤーはテレポートしたり、透明になったり、無敵になったりしているように見えるかもしれませんが、対戦相手はアニメーションの遅延や早送りされたゲームプレイを断続的に受けることになります。[ 8 ]一部のゲームコミュニティでは、この方法を「タッピング」と呼んでおり、これはユーザーがインターネット接続をオン/オフしてラグを発生させることを指します。
「ラグスイッチ」という用語は、クライアントとサーバー間のネットワーク通信を妨害する多くの方法を包含しています。1つの方法は、ハードウェアラグスイッチと呼ばれる物理デバイスを標準イーサネットケーブルに接続することです。スイッチをオン/オフすることで、クライアントとサーバー間の物理的な接続が中断されます。ビデオゲームコンソールのハードウェア設計者は、スイッチが切り替わったときに電圧の変化を検出する電圧検出器の形で、ラグスイッチに対する組み込みの保護を導入し始めています。一部のメーカーは、この検出器をバイパスまたは騙すための対策を講じています。[ 9 ]これは、クライアントにつながるイーサネットケーブルを抜くだけで、プレイヤーのインターネット接続を中断することによっても実現できます。ソフトウェアまたはワイヤレスラグスイッチと呼ばれる他の方法は、コンピュータプログラムを使用することです。この方法では、チーターはクライアントと同じネットワークに接続されたコンピュータでアプリケーションを実行します。アプリケーションはネットワーク帯域幅を占有し、クライアントとサーバー間の通信を妨害します。ただし、これを無制限に行うことはできません。通信が途絶えると、ほとんどのゲームクライアントやゲームサーバーは接続が切断されたと判断し、プレイヤーをゲームから切断します。P2Pゲームによっては、すべてのプレイヤーがラグを起こしたり、ゲームから切断されたりする可能性があります。
より簡単な方法としては、帯域幅シェーピングとネットワーク遅延を適用するファイアウォールやルーターのルールがありますが、チートを使うと、帯域幅と遅延の両方の制限を調整してP2Pネットワーク上での優位性を維持しながら、他のプレイヤーに対して大きなアドバンテージを得ることができます。
先読みチートは、ピアツーピアマルチプレイヤーゲームアーキテクチャにおけるチート手法であり、チートを行うクライアントは、自分の行動を発表する前に他のプレイヤーの行動を確認するために自分の行動を遅らせることで不当な優位性を得る。[ 10 ]
クライアントはこの方法を利用して、高遅延が発生しているかのように振る舞うことで不正行為を行うことができます。送信パケットに実際の送信時刻より前のタイムスタンプを付加することで、他のクライアントを騙し、アクションが正しい時刻に送信されたものの到着が遅れたと思わせるのです。部分的な解決策として、ロックステッププロトコルがあります。
ワールドハッキングとは、ユーザーがバグを悪用して、開発者が意図したよりも多くのレベルを閲覧できるようにする手法またはサードパーティ製プログラムのことです。
リアルタイムストラテジーゲームの共通点は、プレイヤーが所有する個々のゲームオブジェクト(通常はユニットと建造物)の視認範囲を超えて見ることができない、あるいは部分的に制限されていることです。この概念は、フォグ・オブ・ウォーと呼ばれるメカニズムによって制御されています。ワールドハッキングは通常、このメカニズムを完全に削除したり、通常は見えないオブジェクトをフォグを通してレンダリングしたりすることで、ユーザーがこのメカニズムを回避できるようにします。 [ 3 ]マルチプレイヤーモードでは、これにより、意図された設定に従う他のプレイヤーに対して明確な優位性を得ることができます。得られる優位性は、特に個々のオブジェクトのさまざまな強みと弱みのバランスを取るためにじゃんけんのダイナミクスに依存する平均的なリアルタイムストラテジーゲームでは、かなり大きくなる可能性があります。

ワールドハッキングによって、プレイヤーは固体や不透明な物体を透視したり、テクスチャを操作または削除したりして、遮蔽された領域から敵が射程圏内に入ってくるタイミングを事前に知ることができるようになる場合もあります。これは、壁のテクスチャを透明にしたり、ゲームマップを修正して本来は固体である壁に多角形の穴を挿入したりすることで実現できます。この手法は、基本的にプレイヤーが壁越しに敵を見ることができるため、「ウォールハック」として一般的に知られています。(ウォールハックという用語は、その後、視覚情報を生成するあらゆる形態のハッキング、つまり超感覚的知覚(ESP)を指す言葉として一般化されました。)
ワールドハッキングは、FPSサーバーが通常、ゲーム内のすべてのプレイヤーの生の位置情報を送信し、壁の後ろ、植物の葉の中、または暗い影の中に敵を隠すのはクライアントの3Dレンダラーに任せているという事実に基づいています。ゲームマップのレンダリングを完全にオフにできれば、すべてのプレイヤーが何もない空間を動き回っているのが見えるようになります。マップを完全に非表示にすると、チーターは見えないマップの経路や障害物をナビゲートできなくなるため、チーターにとって何のメリットもありません。しかし、特定の表面だけを透明にしたり削除したりすると、チーターが簡単にナビゲートできるだけの世界の輪郭がわずかに残ります。
モバイルゲームの文脈では、ワールドハッキングはUnityエンジンのレンダリングパイプラインを悪用するように進化しました。Androidなどのプラットフォームでは、Standoff 2用のサードパーティ製ソフトウェアがシェーダー変更(Chams)とライブラリフックを使用して遮蔽されたジオメトリを回避し、リアルタイムの視覚的利点を提供します。[ 11 ]
ASUSは2001年に、プレイヤーがウォールハックを使用できるワイヤーフレーム表示ドライバーをリリースし、その設定をマルチプレイヤーゲームで使用できる「特別な武器」として発表した。オンラインゲーマー協会のアンケートでは、会員の90%がドライバーのリリースに反対した。[ 12 ]
プレイヤーは複数のアカウントを作成して対戦します。通常、メインアカウントは、サブアカウントが未使用であるか、プレイヤーが負けることに同意しているため、意図的に抵抗を受けないことで勝利します。一部のプレイヤーはゲーム間で役割を交代し、各アカウントの勝敗記録を均等にします。
勝敗がプレイヤーのアカウントに記録されるゲームでは、プレイヤーは負けそうになったときに、負けが記録されるのを防ぐために切断することがあります。これは通常、ゲーム内の既知のグリッチを有効化するか、ファイアウォールソフトウェアの機能である「IPブート」を介してサードパーティソースを使用することで行われます。対戦相手が不公平だと感じた場合、このような行為を行うプレイヤーもいます。一部のゲームでは、切断ペナルティが設けられており、通常は切断を敗北として記録したり、経験値やEloポイントを減点したりします。また、一部のゲームでは、プレイヤーが切断できるようになる前に10~30秒の「切断遅延」期間が設けられています。これは、プレイヤーが死にそうになったり負けそうになったりしたときに、すぐに切断してしまうことを防ぎます。一部のゲームでは、プレイヤーが切断すると警告を受けたり、短時間オンラインプレイから締め出されたりすることがあります。
多くのゲームでは、武器は連射モードと単発モードの2種類で発射できます。コントローラーやキーボード/マウスを改造して、通常のプレイヤーよりも速く武器を発射できるという利点を得ることは、チート行為とみなされる可能性があります。このような改造はゲームバランスを崩す恐れがあります。コンソールやコントローラーの改造に加え、PCでも同様の効果を得るには、マウスのスクロールホイールに発射ボタンを割り当てたり、キーの高速連打を自動的にシミュレートするマクロ設定を使用したりする方法があります。しかし、ほとんどのゲームでは、プレイヤーがボタンを押す速さに関わらず、武器の発射速度に制限を設けることで、このようなチート行為を抑制しています。
エクスプロイトとは、ゲーム設計で意図されていない機能やバグを利用して、プレイヤーにゲーム内で想定されていない有利な状況を与える行為です。エクスプロイトは、通常、不正な利益を得ることから、ゲームコミュニティ全体では一般的にチート行為とみなされています。オンラインゲームのソフトウェア開発者の多くは、利用規約でエクスプロイトを禁止しており、エクスプロイトを行ったプレイヤーに対して制裁措置を講じることがよくあります。エクスプロイトを行う側の中には、エクスプロイトはソフトウェアで許可されているアクションを利用しているに過ぎないため、チート行為とはみなされるべきではないと主張する人もいます。また、エクスプロイトの中には、見つけるのにかなりの時間を要するものや、使用するのに適した器用さとタイミングが必要なものがあるため、エクスプロイトをスキルと捉えるプレイヤーもいます。
ファーミングという用語は、リアルマネー取引を目的として実績や仮想資産を集める行為を指す場合があります。[ 13 ]ごくまれな例外を除いて、これは他のプレイヤーのゲーム体験に直接的な影響を与えることはありません。むしろ、ほとんどのEULAに違反し、ファーミングされている仮想資産の価値を下げる可能性があります。
トゥインクとは、本来高レベルのキャラクター向けに用意された装備を、自力では入手できない低レベルのキャラクターに譲渡する行為です。トゥインクされたキャラクターは、トゥインクされていないキャラクターやゲーム世界の他のプレイヤーに対して大きなアドバンテージを得ます。これは通常、新しいキャラクターを作成したいプレイヤーが、より早くレベルアップするため、またはPvP(プレイヤー対プレイヤー、マルチプレイヤーのインタラクティブな戦闘の一種)で不当なアドバンテージを得るために使用します。ほとんどのMMORPGは、トゥインクされたキャラクターがトゥインクされていないキャラクターとのPvP戦闘で使用されない限り、これを容認しています。多くの場合、トゥインクにはゲーム内で制限が設けられており、通常はアイテムを装備するための厳格なレベルまたはステータス要件によって制限されています。これらのレベル要件を回避することは、さらなるチート行為となります。[ 14 ]
ほとんどのゲームでは、他の参加者がさまざまな視点からゲームプレイを観察できます。ゲームによっては、観察者はマップ全体を見渡したり、特定のプレイヤーの動きに「カメラ」を取り付けたりすることができます。観察者は、ゲーム内のプライベートメッセージ、第三者との通信、あるいはオフラインなど、別の通信手段を用いて仲間と連絡を取り合い、罠や敵の位置を味方プレイヤーに知らせることができます。観察者は、別のコンピューター、接続、アカウントを使用することで、アクティブなプレイヤーとして参加することも可能です。
システムによっては、アクティブなプレイヤーと同じIPアドレスを使用している非アクティブなプレイヤーがゲームを観戦することを制限している場合があります。これは、両者が物理的に近接している可能性が高いという理由からです。単一のIPアドレスから参加しているすべてのプレイヤーが非アクティブな状態になると、全員が観戦できるようになります。しかし、1つの場所に複数のIPアドレスが利用可能な場合(ブロードバンド契約でよく見られる機能)、または観戦者が自分のコンピュータにリモートデスクトップソフトウェアをインストールして、選択した他のプレイヤーがリアルタイムで自分のコンピュータ画面を閲覧できるようにすれば、この制限は簡単に回避できます。
さらに、これはTwitchなどのプラットフォームでライブ配信を行っているプレイヤーに対して、プレイヤーとそのチームのポジションや統計情報を盗み見るために悪用される可能性があります。これは一般的にストリームスナイピングと呼ばれています。
スタッキングとは、ゲーム設定やチーム編成を変更して、1つまたは複数のチームに他のチームよりも不当な優位性を与える行為を指します。例えば、熟練したプロ選手で構成されたチームを、スキルの低い選手で構成されたチームと対戦させるなどが挙げられます。倫理的に問題のある不正操作としては、より優れた(あるいは使い慣れた)武器や装備を選手やチームに与えたり、特定の選手、チーム、プレイスタイルに有利なプレイフィールドを作成したりすることで、ゲームに偏りを持たせる行為があります。多くのゲームでは、相手チームよりも選手数の多いチームに選手が参加できないようにすることで、このような不正行為を防止し、新規プレイヤーがチームのバランスを取るように促しています。
スクリプトとは、プログラムやゲーム機能を利用して特定のアクションや動作を自動化することです。スクリプトの使用は、その動作の内容や、スクリプトを使わずに再現できるかどうかによって、チート行為とみなされる場合とみなされない場合があります。スクリプトによっては、通常では得られない異常に速い連射速度を実現したり、リロードなどの一見些細なタスクを実行したりできる場合があります。また、コマンドを偽装することで、他のプレイヤーのシステムを改ざんできるスクリプトもあります。
チートは実際にはゲーム用コンピュータ上で実行されるわけではありません。代わりに、DMAカードがケーブルを介してゲームのメモリデータを別のコンピュータに送信します。[ 15 ]
クライアント/サーバーモデルでは、サーバーが情報セキュリティとゲームルールの適用を担当します。(欠点については、下記の「不正行為防止方法と制限」を参照してください。)ピアツーピアゲームモデルでは、クライアントは同じコードを実行しますが、クライアント/サーバーマルチプレイヤーモデルで見られるのとほぼ同じタイプの不正行為の影響を受けます。ただし、高速ネットワークの普及に伴い、ピアツーピアマルチプレイヤーモデルはクライアント/サーバーモデルに取って代わられ、廃止されました。[ 16 ] [ 17 ] [ 18 ]
「クライアントを信用するな」は、ゲーム開発者(および他の開発者)の間でよく言われる格言で、クライアント・サーバー型ゲーム設計のモデルを要約したものです。[ 19 ] [ 20 ] [ 21 ]これは、クライアントから送信された情報がゲームのルールや基本的な仕組みに違反している場合はサーバーが受け入れるべきではなく、また「知る必要のある」情報以外はクライアントに送信すべきではないという意味です。たとえば、ルールの適用やデータの整合性チェックを行わないサーバーは、すべてのクライアントを他のすべてのクライアントに関するすべての情報と同期させます。サーバーは非常に高速になりますが、ウォールハックプログラムを使えば、ゲーム内のすべてのプレイヤーの位置、所属チーム、状態(体力、武器、弾薬など)が明らかになります。同時に、クライアントから改ざんされたり誤ったデータを受け取ると、プレイヤーはゲームのルールを破ったり、サーバーを操作したり、他のクライアントを操作したりできるようになります。
多くのチートは、実行時にコードを変更したりフックしたりすることで実装されます。この方法で実装されるチートには、内部チートと外部チートの2種類があります。両者の主な違いは、ゲームプロセスとの相互作用の仕方です。内部チートは、一般的にDLLインジェクションを介して、プロセスをコードで注入します。これにより、プロセスのアドレス空間全体を読み書きしたり、内部関数をフックしたりすることができます。一方、外部チートは、独自のアドレス空間を持つ別のプロセスで実行され、オペレーティングシステムのメモリ読み書きプリミティブ(ReadProcessMemoryMicrosoft Windowsなど)を使用してプロセスのメモリを変更します。[ 22 ]
ゲームコードを直接変更する(ゲーム自体やサードパーティ製の保護システムで検出される可能性がある)のではなく、一部のチートはシステムコンポーネント自体を変更します。その一例として、深度チェックを無視して画面上のすべてのオブジェクトを描画するグラフィックドライバの変更が挙げられます。これは原始的なウォールハックです。システムドライバはユーザーごとに異なるため、システムやドライバの変更は検出がより困難です。
ゲームソフトウェアのセキュリティは、クライアントからサーバーへ、またはその逆方向へのデータ転送中に(「パケット」に分割された)データをリアルタイムで傍受および/または操作することによって回避される可能性があります(中間者攻撃)。傍受は受動的なものもあれば、能動的な操作につながるものもあります。どちらの方法も、クライアントマシン自体で実行することも、外部の通信プロキシを介して実行することもできます。一部のエイムボットはこの方法を採用しています。
「アクセシビリティ周辺機器」という名目で販売されている一部のコンピューターやコンソール機器は、反動を完全に排除したり、エイムアシストを強化したりするなど、他のゲームプレイヤーに対して不当な優位性を得るために使用されており、中にはダウンロード可能なマクロが含まれているものもある。[ 23 ]
ゲームによっては、マッチメイキングに異なるプールを使用するものがあり、例えば、PCプレイヤーは他の PC プレイヤーとマッチングされ、コンソールプレイヤーは他のコンソール プレイヤーとマッチングされます。マウスとキーボードの使用を可能にするコンソール周辺機器を使用すると、コンソール システムを騙して、コントローラーに提供される追加のエイム アシストを提供させることができます。[ 24 ]
より高度なオンラインビデオゲームのチーターは、特殊なDMA攻撃カードを使用してゲームのメモリにアクセスし、壁越しに見えるなどの機能を提供します。この方法は、ゲームが実行されているコンピュータのソフトウェアを変更する必要なく、2台目のコンピュータを使用してメモリダンプを分析するため、従来のチートよりもはるかに検出が困難です。その後、マウスエミュレータが自動的に照準を合わせて発射し、エイムボットを実装します。デルタフォースは、チーターとアンチチートエキスパート開発者の間の綱引きで悪名高いです。[ 25 ]

オンラインゲームにおけるチート行為には多くの側面があり、チート行為を阻止するシステムを構築することは非常に困難です。しかし、ゲーム開発者やサードパーティのソフトウェア開発者は、チート行為を防止しようとする技術を開発または開発しています[ 26 ] [ 27 ]。このような対策はビデオゲームで一般的に使用されており、有名なアンチチートソフトウェアとしては、BattlEye、GameGuard、PunkBuster、Valve Anti-Cheat (特にSteamプラットフォームのゲームで使用)[ 28 ] 、 EasyAntiCheat [ 29 ]などがあります。
一般的に、サーバーがルールを厳格に適用すればするほど、ゲーム内での不正行為の問題は少なくなる。[ 30 ]このアプローチでは、クライアントのすべての機能は純粋にゲームサーバー上で実行されるか、あるいはゲームサーバーがクライアントのゲームプレイをミラーリングし、ゲームの状態を継続的に検証する。多くのモバイルゲームでは、まったく同じユーザー入力を使用して、クライアントのゲームセッションをサーバー上で同期的に実行するのが一般的である。ゲームセッションが同期しなくなるとクライアントセッションがリセットされ、不正行為が防止される。
サーバー側のゲームコードは、結果をジャストインタイムで計算して送信して表示するか、プレイヤーの進行に合わせてクライアントが適切な順序で結果を計算して表示することを期待するか、というトレードオフを行います。これは、即時表示に必要なワールド状態の一部を送信する方法(帯域幅の制約がある場合、クライアントの遅延が発生する可能性がある)と、ワールド状態全体をプレイヤーに送信する方法(同じ帯域幅の制約がある場合、プレイヤーの表示は速くなるが、データが傍受や改ざんの危険にさらされる)の2つで実現できます。つまり、セキュリティと効率性のトレードオフです。
かつては、ゲームサーバーは、利用可能な技術やハードウェアのコスト、そしてインターネット接続の遅さといった制約により、ストレージ、メモリ、内部帯域幅、計算能力などのリソースが限られていました。そのため、エンドユーザーへの影響を最小限に抑えるには、セキュリティを犠牲にして最適化を図る必要があると考えられていました。しかし今日では、マルチコアコンピュータの速度と性能の向上、ハードウェアの低価格化、そしてブロードバンドインターネットの普及により、この問題は以前ほど深刻ではなくなっています。
非標準形式でのデータ保存に加えて、一部のゲームではソフトウェアプロテクターによるランタイム保護も利用しています。主な目的は、攻撃者がコンパイル済みソフトウェアを直接検査したり変更したりするのを防ぐことです。プロテクターは、ソフトウェアを保護するために3つの方法のいずれかを使用します。
暗号化ソリューションはコード命令を暗号化し、通常、復号コードを直接標的とするリバースエンジニアリングや改ざんの試みに対して多層防御メカニズムを使用します。このカテゴリのほとんどの保護システムはコードを暗号化し、アプリケーションの起動時または実行時に復号します。これは、攻撃者がブレークポイントを設定し、リバースエンジニアリングを行い、カスタムコードを挿入するタイミングです。実行時の復号は、処理オーバーヘッドを大幅に増加させ、ゲームのフレームレートを低下させる可能性もあります。あるいは、ジャンプステートメントや一見ランダムな命令パスを挿入することでコードを難読化することに焦点を当てたソリューションもあります。最後の最も強力な代替手段は仮想化です。[ 31 ]このアプローチでは、暗号化されたコードは仮想CPU上で実行されます。仮想CPUは、保護されたファイルごとに命令セットが固有であるため、一般的なx86およびx64 CPUとは大きく異なる場合があります。
プロテクターとバーチャライザーに共通する弱点は、復号化が必要になったり、不要なCPU命令が導入されたりすることで、パフォーマンスに影響を与えることです。オーバーヘッドを削減するため、コードバーチャライザーは、ゲームの状態やレンダリングとのインターフェースなど、コードベースの重要な部分を保護する目的でのみ使用されることがよくあります。
観戦機能により、サーバー管理者は個々のプレイヤーを監視し、チートが行われているかどうかを判断できます。観戦モードのリスクの1つは、競技試合で観戦者がこのモードを悪用して特定のプレイヤーをスパイし、プレイヤーの位置や戦術を相手チームに伝える可能性があることです。一部のゲームでは、観戦モードをまったく許可しないか、ビデオフィードを遅延させることで、この制限を回避しています。[ 32 ]
一部のゲームでは、コミュニティが迷惑行為の報告を確認し、その報告が妥当かどうかを判断し、必要に応じて一時的な利用停止措置を適用できるようにすることで、プレイヤーの監視を体系化している。報告には、スクリーンショット、動画、チャットログなどのデータを含めることができる。
プレイヤーの行動における異常は、クライアントからサーバーに送信されるゲームイベントを統計的に分析することで検出できます。このアンチチート方式の利点は、プレイヤーのプライバシーを侵害せず、すべてのエンドユーザーシステム構成で確実に動作することです。この方式の欠点は、プレイヤーがチート行為を行っているかどうかを常に明確に判断できるとは限らないことです。例えば、高度なスキルを持つプレイヤーは、マップ感覚が非常に優れているため、ウォールハックやエイムボットの使用が疑われる可能性があります。一方で、検出閾値以下の方法でチート行為を行い、摘発されないままになるプレイヤーもいます。
誤検出を減らすため、統計的検出システムは、コミュニティ主導型または専門の管理者チームによって管理される監視システムと組み合わされることが多い。このような実装では、プレイヤーの異常な行動がクライアント側のコンポーネントをトリガーし、レビュー用のレポートを作成してアップロードする。
パターン検出システムは、プレイヤーのハードドライブとシステムメモリをスキャンして、既知のチートコードやプログラムを検出します。統計的検出と比較すると、主な利点は、巧妙なチーターも検出できることです。これ以外に、純粋なパターン検出アプローチには一般的に利点はほとんどありません。経験上、検出ベースのシステムを最新の状態に保つことは、チートを常に追跡し、検出パターンを更新する必要があるため、比較的時間がかかり、労力がかかることがわかっています。エンドユーザーは、VAC (Valve Anti-Cheat) が閲覧履歴にアクセスする場合のように、プライバシーの問題を懸念することもあります。[ 33 ]
ソフトウェア プロセスをサンドボックス化することで、コード インジェクションやメモリ変更など、ゲームを改ざんする可能性のある悪意のあるアクションから保護できます。[ 34 ]サンドボックス化の主な利点の 1 つは、基盤となるチート メカニズムが機能しないように効果的に防止できるため、チートが機能しなくなるため、ゲーム コミュニティ メンバーを追放する必要がなくなります。さらに、強力な防止メカニズムにより、高度なスキル要件のため、多くのゲーム ハッカーがゲームを標的にすることを阻止できます。パターン検出システムと比較すると、サンドボックス化は一般的にプライバシーを侵害しません。このアプローチでは、外部のバックエンド システムにデータをアップロードする必要がないためです。
アンチチートソフトウェアは、OSベンダーが一般向けに意図していない低レベルのシステムインターフェイスを使用することがよくあります。そのため、新しいバージョンのオペレーティングシステムやセキュリティ対策、 Wineなどの代替OS API実装との互換性の問題を引き起こす原因となることがよくあります。[ 35 ]例えば、Windowsは、アンチチートとの互換性の問題のため、中国と韓国のインストールを除くすべての市場でハイパーバイザ保護コード整合性(HVCI)をデフォルトで有効にしています。[ 36 ]
競技ゲームで不当な優位性を得るために使用されるサードパーティ製周辺機器の人気が高まっていることに対する監視が強化されるにつれ、BungieやActivisionなどのゲーム開発者は、これらの周辺機器のユーザーを取り締まり始めました。Activisionは、そのようなデバイスを検出するためにRICOCHETチート検出ソフトウェアを更新しました[ 37 ] [ 38 ]。一方、Bungieは、真のアクセシビリティのために周辺機器を使用することには問題ないが、プレイヤーがこれらのデバイスを使用して不当な優位性を得ていることを検出した場合は、対策を講じる準備ができていると発表しました[ 23 ] [ 39 ] 。
ゲームパブリッシャーは、不正行為を行ったプレイヤーに対して、多種多様な制裁措置を講じることができる。
ゲームパブリッシャーによっては、チート行為を繰り返してゲームコミュニティを混乱させるプレイヤーを永久追放しようとする場合がある。このような追放は通常、ハードウェアIDまたはIPアドレスに基づいて行われる。そのため、チーターはプロキシサーバーやVPNサーバー経由でプレイしたり、ハードウェア構成を偽装または変更したりすることで、これらの追放を回避する方法を開発する可能性がある。[ 40 ]
一部の企業やリーグは、特定のインストールキーやシリアルキー、またはユーザーアカウントをブラックリストに登録することで、不正行為が疑われるプレイヤーを禁止し、事実上、そのプレイヤーがオンラインでゲームをプレイできないようにしています。一部のゲームでは、不正行為者を特定し、他の不正行為者のみとマッチングさせることで「シャドウバン」を行い、不正行為者が特定されたことを知られないようにしています。[ 41 ] [ 42 ]
ゲームパブリッシャーはチートを使用するプレイヤーをBANすることで知られていますが、実際にBANされたプレイヤーの数は通常公表されません。例外として、Blizzard Entertainment、Nexon、CipSoftは、チートを行うプレイヤーをまとめてBANし、BANされたアカウントの数を公表することで知られています。これはおそらく、他のプレイヤーがチートを行うことを抑止するためでしょう。[ 43 ]
場合によっては、アカウント停止は永久的なものではなく、一定期間後に解除されることがあります。アカウント停止は、ゲームのグリッチの悪用、プレイヤーへの嫌がらせ、ハッキングによる利益の享受に対する懲罰措置として一般的に用いられ、ユーザーが永久停止処分を受けない限り、さらなるルール違反を抑止する効果があります。また、監視や統計的検出に基づく不正行為防止策でよく見られるように、違反行為を完全に証明できない場合にも、一時的なアカウント停止が用いられることがあります。
一般的に、キックは軽度の罰則とみなされ、該当プレイヤーへの警告として機能します。一部のアンチチートシステムは、システムの整合性を維持または確実に判断できない場合に、プレイヤーをゲームサーバーからキックする場合があります。また、他のアンチチート手法では、不正なゲームプレイ行為に対する即時の罰則としてキックを使用する場合もあります。
ゲームによっては、特定のプレイヤーを追放するための投票オプションがコミュニティに提供される場合もあります。投票による追放には多くの利点がありますが、投票プロセスを通じて正当なプレイヤーをゲームから排除できるため、荒らしや嫌がらせのツールとして利用される可能性もあります。[ 44 ]
不正行為がファーミングやステータス水増しによるものである場合、プレイヤーの出場停止や永久追放は厳しすぎる罰となる可能性があります。そのため、一部のゲームでは、違反者を昇格とは反対の低いランクに降格させる(降格)システムを採用しています。
ポイント制を採用しているいくつかのゲームでは、プレイヤーが不正行為を行った場合、そのプレイヤーのスコアは、新しいプレイヤーがサーバーに参加した際に適用される基本値にリセットされます。
近年、韓国や中国を含む国々では、ビデオゲームにおけるチートの販売や使用が犯罪とされている。[ 45 ]韓国では、チート行為を行った者は、最長5年の懲役または4万ドルを超える罰金刑に処される可能性がある。[ 6 ]オンラインゲームにおけるチーターの存在は、正当なプレイヤー層を遠ざけ、業界全体の利益を減少させる可能性があり、ゲーム開発者が立法機関や執行機関と協力するようになる。[ 45 ]
歴史的に、一部のゲーム会社は、ビデオゲームでチートツールを作成および販売した個人に対して、その使用を抑制する手段として法的措置をとってきました。アンチチートの専門家は、チートの作成と販売で利益を得ている団体に対して法的措置をとることが特に重要であると主張しています。[ 46 ] 2013 年 4 月、プログラマーの DrUnKeN ChEeTaH は、 Combat Armsの人気サブスクリプション制チートプロバイダーである GameAnarchy を運営していたとしてNexon Americaから訴えられ、敗訴し、Nexon は 140 万ドルの損害賠償を獲得しました。[ 47 ] 2017 年 1 月、Riot Games は、Riot のLeague of Legendsのサブスクリプション制ハッキングサービスを提供していた LeagueSharp サービスを訴え、勝訴し、Riot に 1000 万ドルの賠償金が支払われることになりました。[ 48 ] [ 49 ] Blizzard Entertainment は、複数のゲームのソフトウェア ハックを配布したとして Bossland GMBH を訴え、850 万ドルの損害賠償を勝ち取った。[ 50 ] [ 51 ]バトルロイヤルゲームFortniteのプロデューサーであるEpic Games は、さまざまなオンラインゲームのチート サービスを提供する AddictedCheats と提携している 2 人のチーターを訴えた。[ 52 ] Bungie は、 Destiny 2に関連するチートで AimJunkies を訴えた。彼らの主張の一部は仲裁によって解決され、Bungie には 430 万ドルが支払われたが、著作権侵害の主張については陪審裁判で Bungie に有利な判決が下され、AimJunkies の収益に基づいて Bungie には約 60,000 ドルが支払われたが、これはビデオゲームのチート ソフトウェアに関する陪審裁判での判決としては初めてであり、今後のさらなる異議申し立ての判例法を確立する可能性がある。[ 53 ]
ゲーム会社がチーターやチート提供者に対して起こす訴訟では、著作権侵害が訴訟理由として挙げられることが多い。この主張の妥当性に異議を唱える人もいるが、著作権侵害の根拠には、会社の知的財産を侵害すること、他のユーザーの体験に影響を与えること、ビデオゲームにも適用される可能性のあるデジタルミレニアム著作権法(DMCA)を回避することなどが含まれる。[ 7 ]