みるくさんチート騒動-オフ検証編2

2012/04/24

ゲーム

Dxtoryで当日録画した動画を見ているのですが、比較する適切なシーンを探している段階です。
これ全部見ないと、どこが最も適しているか分かりませんよね、当たり前ですが……。
というわけで前途多難です。

私は用事があってGWに検証動画を作ることができませんので、予め検証方法を記載しておきます。
白も黒も結局今の段階では、比較することなく「うまいから白」とか「動画と全然違うから黒」とか、自分の主観でいろいろと言ってる状態ですよね。多少、それに変化があればいいなと思い。
検証動画誰か代わりに作ってくれたらいいな、という考えが無いといったら嘘になりますが、さすがに「あとは見てる人が判断しろ」みたいなことは言いません。それじゃ検証すべき箇所を募集したりした意味がなくなっちゃいます。
でも有志が思い思いにやってくれることを否定してるわけじゃないですよ! どんどん白も黒も、それぞれデータ比較をし、根拠を提示しながら話し合ってくれればいいと思ってます。

■比較対象について
元々チート指摘された動画は、プレイをDxtoryで直接録画した動画です。
Demo再生動画だと条件が異なるので、当日直接録画したDxtoryの動画と比較を行います。
Demoは、Demoファイル自体のUPと、L4Dを持っていない人向けに参考までにアップしただけという風に捉えてください。
Dxtoryで録画したデータも、順次エンコードして上げることにしました。

■検証用の動画について
検証用の動画の1)と書いていた部分についてです。
あれ、右上に数字と、背景に赤い●がポツポツ出てましたよね? それぞれについて動画の中で説明すればよかったのですが、入れてる時間がありませんでした。ここで説明します。

■1)で表示した「数字」について
あれは、動画を1/10の速度で再生して、動画の1フレーム(1/30)ごとに「レティクルの移動量」を数値化してあります。
数値の単位はありません。概念的なものです。これを、以下の図のように考えます。

<図1>数値の概念
1

これに基づいて、画面と比較して「どの程度動いたか」の数値となります。
10ならば、横160に対して10動いた、という意味になります。

なお、上下方向と左右方向で、同じマウスの移動量で同じだけ移動するという前提です。上下方向と左右方向でマウスの移動量に対して動く角度の差があれば、それは誤差になります。あったとしても無視出来る程度という前提です。
これが大きい場合は、直線距離ではなく「横いくついくつ、縦いくついくつ」というデータに分離する必要があります。検証用の動画では、無視できる誤差という前提で直線距離で計測しています。
もし認識がおかしければご指摘ください。データ計測をしなおします。

■1)で表示した「赤い●」について
赤い●ですが、あれは遠景(背景)の同じ場所をトレースしています。動画で示すために●を置いているので、ちょっとズレたりしてますが。
たとえば、山の頂上があるフレームではこの位置にあり、次のフレームにはここにある、というのを両方に●を置いて差をだしています。
それは何のためか。
これにより「マウスによるAIMのベクトルのみを抽出する」ことができます。もちろん誤差はあります。動画内でも言っていますね。

なぜ、遠景の同じ場所をトレースするとマウスのAIMのみを抽出することができるのか?
試しに、遠くに山が見える環境にある人は、自分の目でみてぴったり山の頂上を指さしてみてください(遠景であればあるほどいいです)。
そのまま腕を動かさずに前後左右に歩いてみてください。
あなたの指は、山の頂上を指したままだと思います。
山がない人は、東京タワーでもビルでも灯台でも、とにかく極めて遠景にあるなにかランドマーク的なもので同じ事をしてみてください。太陽でもいいです。目がツブれない程度に。

<図2>遠景のポイントをマークする理由
2

では、その指を指したまま、今度は体を左右に回転させてみてください。
当たり前だと思うでしょうが、指は山の頂上から大きくずれて、全然違う空を指していると思います。

で、これが何なんだ?ってことですが、つまり
「遠景のある一点をトレースし続けることで、WASD入力を限りなく無視して、マウスのAIM部分のみを抽出することができる(といえば言い過ぎですが、最小限の誤差ですむ)
ということです。
動画にあった赤い●はそれを示しています。

■ガクガクAIMの場所を探して比較する
今回の指摘は「マウスのAIMが速すぎる」「命中精度が高すぎる」という点です。
命中精度については、検証用の動画で示したとおり、見える範囲でカウントしたところ60%~70%程度とカウントしました。また小さすぎてHSかどうかは判別できません。
まずは、それと同等の命中率であり、なおかつ「ここはマウスのAIMが指摘箇所と同じような速さで動いているな」という部分をピックアップします。

あとは、そのピックアップした部分について上記の通り1フレームごとの移動量を抽出します。

ここで注意点は、検証用に用意した動画では、移動の向きを書いていません。
AutoAimだと、フレームごとの移動方向に無理が出る可能性が高く、そのベクトルも合わせて出す必要があります。検証用に用意した動画は、赤い●が残っているのでどういう方向で動いたかは分かると思います(本当は動画に入れたかったんですが、作業時間が足りませんでした)。
検証用の動画に、さらに移動方向の情報を足したら、比較したい場面でも同様のデータを取ります。

で、その移動量と移動方向の切り替わりの速さ(たとえば、←に5、←に10、←に5、最後に0になる、というフレームごとの遷移であれば、それと同等に→でも↑でも↓でもいいので、5、10、5、0というのと似たような移動速度になっているかどうか)を比較します。

それで初めて「元の動画と同じ動きができているのか、できていないのか」が分かります

■その他
説得力を増すためには、なるべく長い1つのシーンを使ってデータ比較をするのがいいです。
本当にコマ切れコマ切れでデータを出しても「そりゃたまたまその時そうなっただけだろ」となるだけです。
元の指摘箇所は全長で6秒程度なので、少なくともそれと同等の時間のワンシーンを切り出す必要があるでしょう。
一箇所に絞る必要もないので、適切な部分を探しているのですが、まだ全部みれていません。
05の最初のあたりとか、09の最初のあたりとかかなぁ……とか思っています。

あと、冒頭に言ったことのくり返しになりますが、Demoエンコードの動画とDxtory直接録画の動画は、どこが違うか分かりませんが「なんとなーく違う」ように見えます。
正しくデータを比較するには、やはり同じ環境同士でやるべきです。
Dxtory直接録画の動画も順次エンコードし、アップロードしていきます。正しく比較したい人は、そちらをお待ちください。

■まとめ
さて、このような基準で物事を考えてみたら、動画とオフのプレイを比較してどういう結果となるでしょうか?
それは私もやっていないので分かりません。興味が有る方は、そういう比較をした上でデータを元に話をしてみてはどうでしょうか。
黒とでるかもしれないし、白とでるかもしれないし、計測しないとわかりませんよね。

誰か物好きな人がまとめてくれたりすると、それを参考にもできるので大変ありがたいです。
といった、他人任せな一言を投げつつ、もちろん誰かにやってもらう前提ではなくて、自分で5/13までにやるつもりですので、それまでお待ちいただければと思います。

----- ----- ----- -----

データを取る、というのはこういうことだと思っています。
また、上記のように少し考えれば誰でもAIMの速度や方向をデータ化することは可能だったはずです。AAかどうかを判断するためには、データの比較をすればいいという発想にたどり着く人は多いと思います。
本当に真剣にチートについて考えている人達は「こんな理屈は説明されんでも分かっとるわい」というところでしょう。説明されないと理解できないということは、どういうことか。
白派も黒派も、すこし冷静になって胸に手を当てて考えてみてください。しばらく検証用動画を作り上げることができない私からの、今できる精一杯の提案です。

ブログ内検索

ブログ アーカイブ

Ads

QooQ