ゲームでのチートの主流は表示されている数値などをメモリ上で検索、それを書き換えるもの。

対策としては画面に表示される数値についてはメモリを多重化しておくという方法がある。

つまりたとえば、realValという変数に実際の値を入れ、secValという値にそれを定数倍した数を入れる。  

realVal = t;
secVal = t * seed;

  すると常に

secVal == realVal * seed

が成り立つはず。

もしrealValが書き換えられていると、そうはならないため、チートが検出できる。

if (secVal != realVal * seed) {
	cheatDetect();
}

まとめたクラスは以下の添付ファイルで。

ただし、この方法もswf自体がデコンパイルされて書き換えられると有効では無いので、swfの暗号化が必要。


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード印刷に適した表示   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom Powered by xpWiki
Counter: 668, today: 2, yesterday: 0
初版日時: 2015-05-22 (金) 12:52:21
最終更新: 2015-05-28 (木) 23:40:28 (JST) (928d) by njf
広告

ログイン

ユーザー名:


パスワード:





パスワード紛失


NJF