「改善」しようとしている PC ゲームのコードを調べてきました。(わかりましたので、ゲームが苦手かもしれませんが、それでもプレイしたいです)。次のコードを調べてください。
fld dword ptr[ebp+00007B1C]
fsub dword ptr[esp+64]
fst dword ptr[ebp+00007B1C]
call 004A2E48
このコードは、レベル カウントダウン タイマーに対して毎秒呼び出されます。数分間、特定のレベルにとどまる必要があります。アドレス [ebp+00007B1C] にプッシュされる値が 0 になるように上記のコードを変更できれば、ゲーム レベルは常にタイムアウトになり、クレイジーな「サバイバル」ミニゲームをプレイする必要がなくなります。
このコードから私が理解したことを説明します。心配しないでください。これに深く入る必要はありません。最初の行で
、タイマー値を取得します。たとえば、残り 97 秒の場合、この値がロードされるのはここです。2 行目で
は、値 (1 秒) が 97 から減算されます。3 行目では
、96 が再びメモリに移動されます。最後に、残り時間に基づいて他の処理を行う関数呼び出しがあります。
あとは、プッシュされる値が 0 になるように、このコードになんらかのパッチを適用するだけです (3 番目のステップ)。
これで私を助けてもらえますか?