Auf If funktion reagieren

  • If abfrage- auf veränderung des wertes reagieren

    Hi

    ich wollte ein kleines programm schreiben das die offsets einens programms ausliest und auf eine veränderung von +1 reagiert
    wie immer klapt das natürlich nicht auf anhieb X(
    das ist mein source:


    #include <mem.au3>
    $Prozesspid = WinGetProcess("BF2")
    While 1
    $mem = _MemoryOpen($Prozesspid)
    If _MemoryRead(0x249F6B40, $mem) = +1 Then
    Run("cmd")
    Sleep(2000)
    endif
    Wend

    _MemoryRead(0x249F6B40, $mem) liest die kills aus einem shooter aus z.b. wenn ich 1 kill mache soll er 1mal cmd öffnen(cmd jetzt nur testweise)
    wenn ich irgendwann noch einen 2. kill mache soll er cmd nochmal öffnen also zu jedem kill 1 mal :)

    danke für eure hilfe :)

    Bitte nicht rumspammen sonst wird mein theard wieder closed..
    DIES IST KEIN BOT!

  • ja ich weis habe das nur nicht hinbekommen
    nur ist mir gerade ein 2. probelm eingefallen
    die offsets verändern sich bei jedem start das spiels -.-
    kann man da noch was machen?

  • Wie wärs mit ne Hotkey?
    Du nimmst dir ne c belibige Taste und setzt darauf deinen Counter.
    Wenn du einen tötest einfach draufdrücken. ^^
    Q oder E da kommt man so schön dran.
    Also wenn die nicht belegt sind^^

  • Q ist immer belegt im spiel :)
    aber nichtmal das geht weil ich gerade herausgefunden habe das sich die offsets jedesmal beim starten verändern
    gibt es überhaupt noch ne möglichkeit das zu machen wenn sich die offsets beim neustarten des spiels verändern(ich will jetzt nicht jedesmal die offsets raussuchen müssen)

  • Nein!


    ich will später in den chat: "!stats" eingeben und dann soll er mir meine kills usw zeigen!


    DAS IST KEIN BOT, WENN IHR DENKT DAS ES EIN BOT IST DANN BEHALTET ES DOCH BITTE FÜR EUCH

  • jo ich will das aber in dem chat haben

    ist das normal das sich die offsets bei jedem programmstart verändern?

  • Und du kannst nicht "Tab" drücken (->Counterstrike) und siehst deine stats? Also bei kleinen Spielen wie kp TicTacToe ist das recht einfach, aber wenn du ausgereifte Ego-Shooter mit Cheat-Engine durchsuchst kann das dauern..
    Achja und in den meißten Spielen kannst du mit autoit nix interaktiv anzeigen lassen! ;)

    Hmm wenn dus schaffst die api-calls der memory funktionen deines spiels abzufangen und in einer dynamischen dll zu modifizieren könntest dus schaffen... naja dann viel glück beim dll schreiben :D

    Einmal editiert, zuletzt von ChaosKeks (15. April 2009 um 18:58)

  • alten Wert in eine Variable packen
    neuen Wert in eine Variable packen
    beide vergleichen mit If /Then (gem. Hilfe)

    Lieben Gruß,
    Alina

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Geheime Information: ;)
    k3mrwmIBHejryPvylQSFieDF5f3VOnk6iLAVBGVhKQegrFuWr3iraNIblLweSW4WgqI0SrRbS7U5jI3sn50R4a15Cthu1bEr