2012-03-02 4 views
2

あなたの知らない人のために、グライドはWorld of Warcraftのプログラムで、メモリを変更して本質的に入力をシミュレートすることでゲームの自動化を可能にします。私は同様のプログラムからのコードスニペットを見ており、特定のメモリアドレスでデータを変更しているように見えます。グライドはどのように機能しますか?

明らかに、変更するアドレスと変更する方法を決定する方法がいくつかあります。これはどうですか?一般的な意味で、プログラムの動作をメモリ内の状態を変更して変更するにはどうすればよいですか?

これはいくつかの倫理的な懸念を提示しています。グライドやそれに類するアプリケーションを使用するのは大変なことであり、私自身のバージョンをこのRPGや他のRPGで動かすつもりはないと言えば、私は嘘をつきます。プログラマーとして、私のためにゲームをするスクリプトを書くことは、自分自身でゲームをするより楽しいです。しかし、私はコンピュータサイエンスの観点からもこれに興味があります。ほとんどのプログラミング上の問題では、たとえそれを解決する方法が正確にわからなくても、どこから始めるべきか、どのリソースを見ていくのか、一般的にどのようなアプローチになるのかが分かります。しかし、この場合、私は完全に失われています。誰かが正しい方向に私を導くことができますか?

答えて

2

私はあなたがそれを理解するために変化する基本的なメモリのより単純な例を見る必要があると思います。

Cheat Engineと呼ばれるプログラムを探します。基本的に、メモリの場所を値でフィルタリングすることができます。

私は、スコアが未知のメモリ位置に整数として格納されている想像上のゲームを持っています。その初期値(ゼロ)を検索し、ゲームで何かをしてスコアを変更し、適用します新しい値を持つ別のフィルタ。チートエンジンは徐々にあなたがそれを見つけたと確信できるまで、スコアにマッチする4バイトのメモリシーケンスをますます小さく表示します。その後、そのメモリを更新するだけのケースです。

関連する問題