Help us understand the problem. What is going on with this article?

チートにまつわるエトセトラ

More than 5 years have passed since last update.

オンラインゲーム/ソーシャルゲームに焦点を置いて、考え方的なものを。

はじめに

※※※ オンラインゲーム/ソーシャルゲームでチートはされます、完全に防ぐ事は出来ません(キリッ※※※ 

チートとは

簡単に言うと、 「ゲームの不正改造」 です。
100人のユーザーが入れば、その内の1%に知識/技術を持った人が居たとしてもおかしくはありません。

チートの手段

  • パケットハック
    クライアントーサーバ間でやりとりするパケットデータをハッキングし数値を書き換える方法。
    理論値を超えた値を送る人も入れば、理論値ギリギリの値を送る事も可能なので、判別しにくい。
    (例)
    プレイヤーがモンスターに攻撃するシーンで、ダメージをクライアント側でダメージを計算し、
    サーバーに送っていれば、その「ダメージ」を意図的に変更する事が可能

  • メモリ/セーブデータハック
    バイナリエディタを使用して、数値を書き換える方法。
    クライアントで扱っている全ての数値を書き換えられる事が可能。
    (例)
    攻撃力の変数の場所が分かったとして FF(16) -> 255(10) に変更出来てしまう。

対策ってあるの?

簡単に言うと、クライアント側で計算を行わない。
『サーバー側』で全ての計算を行い、結果だけを『クライアント側』に送る。

kikuchi-hiroshi
SIer系のSEを経て、オンラインゲームのサーバを担当。 現在は渋谷のソーシャルゲーム系企業に勤めるエンジニアです。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away