Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 23:47

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



AutoIT Pointer von CE

Discussion on AutoIT Pointer von CE within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Oct 2013
Posts: 10
Received Thanks: 1
Post AutoIT Pointer von CE

Servus epvp,

Ich bin dabei einen Speedhack für Metin2 p-server zu erstellen verzweifle aber
Ich hab mich hier im Forum erkundigt un diesen Code gefunden

Code:
#RequireAdmin
#include-once
SetPrivilege("SeDebugPrivilege", 1)

$pid = WinGetProcess("METIN2")
$openmem = _MemoryOpen($pid)
$baseadress = _MemoryModuleGetBaseAddress($pid,"rub.exe") ;rub.exe ist der Name des starters

;$pid ist der Prozess

    $testoffset1 = "2A8" 
    $testoffset2 = "5BA" 
    $testoffset3 = "003D0A6C"

;hier die offsets + die adresse


Global $AOffset[3]
$AOffset[0] = 0
$AOffset[1] = Dec($testoffset1)
$AOffset[2] = Dec($testoffset2)
$Aaddress = "0x" & Hex($baseadress + Dec($testoffset3))



$Amemread = _MemoryPointerRead($Aaddress, $openmem, $AOffset, "byte[2]")

;memory read funktion welche wir nicht umbedingt brauchen trotzdem möchte ich euch zeigen wie diese angewandt wird. Der wert der daraus kommt ist ein array ;dabei ist [1] der wert den wir brauchen.


$Awert = _ReturnMemoryValue($Amemread[1])
$Awert = Dec($Awert)

;Der ausgelesene Wert ist noch in hex und in der falschen reihenfolge. die Funktion behebt dies.

Func _ReturnMemoryValue($sAdresse)

    $sNewAdresse = ""
    $sAdresse = StringTrimLeft($sAdresse, 2)
    For $i = StringLen($sAdresse) - 1 To 0 Step -2
        $sNewAdresse &= StringMid($sAdresse, $i, 2)
    Next
    Return $sNewAdresse
EndFunc   ;==>_ReturnMemoryValue

;Und hier unten sehen wir, dass er dauerhaft den wert 16256 schreibt.

while 1
 _MemoryPointerWrite($Aaddress, $openmem, $AOffset, "16556", "dword")
wend


das Problem ist er bringt mir immer eine Fehlermeldung.Habe schon gegoogelt aber nichts brauchbares gefunden.

hier mal ein Ausschnitt von den Offsets und den Pointern:
Bild im Anhang !!!!





diese Errors bzw. Fehlermeldungen kommen:

C:\Users\Admin\Desktop\AutoIt v3 Script (neu).au3(3,35) : ERROR: SetPrivilege(): undefined function.
SetPrivilege("SeDebugPrivilege", 1)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
C:\Users\Admin\Desktop\AutoIt v3 Script (neu).au3(6,28) : ERROR: _MemoryOpen(): undefined function.
$openmem = _MemoryOpen($pid)
~~~~~~~~~~~~~~~~~~~~~~~~~~~^
C:\Users\Admin\Desktop\AutoIt v3 Script (neu).au3(7,57) : ERROR: _MemoryModuleGetBaseAddress(): undefined function.
$baseadress = _MemoryModuleGetBaseAddress($pid,"rub.exe")
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~^
C:\Users\Admin\Desktop\AutoIt v3 Script (neu).au3(26,72) : ERROR: _MemoryPointerRead(): undefined function.
$Amemread = _MemoryPointerRead($Aaddress, $openmem, $AOffset, "byte[2]")
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~^
C:\Users\Admin\Desktop\AutoIt v3 Script (neu).au3(49,69) : ERROR: _MemoryPointerWrite(): undefined function.
_MemoryPointerWrite($Aaddress, $openmem, $AOffset, "16556", "dword")
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~^
C:\Users\Admin\Desktop\AutoIt v3 Script (neu).au3 - 5 error(s), 0 warning(s)



Hoffe mir kann das jemand an meinem konkreten Beispiel erklären.
Das ist mein erster Beitrag auf epvp also wenn ich was falsch gemacht habe bitteverbessern
Danke im Voraus
Attached Images
File Type: jpg Unbenannt2.jpg (7.8 KB, 12 views)
Bubba321 is offline  
Old 10/06/2013, 18:49   #2

 
RezChams's Avatar
 
elite*gold: 0
Join Date: Mar 2009
Posts: 24,265
Received Thanks: 15,362
Arrow elite*gold Trading -> AutoIt

#moved
RezChams is offline  
Thanks
1 User
Old 10/06/2013, 19:11   #3

 
elite*gold: 64
Join Date: May 2011
Posts: 1,229
Received Thanks: 854
Du brauchst Pointer.au3 als Include.

BladeTiger12 is offline  
Thanks
1 User
Old 10/06/2013, 19:28   #4
 
Logtetsch's Avatar
 
elite*gold: 192
Join Date: May 2009
Posts: 2,227
Received Thanks: 3,262
Code:
#include-once
Ob das gut geht, mag ich zu bezweifeln
Logtetsch is offline  
Thanks
2 Users
Old 10/06/2013, 22:51   #5
 
elite*gold: 0
Join Date: Oct 2013
Posts: 10
Received Thanks: 1
Erstmal danke für die schnellen Antworten und das moven.
Ich hatte mir auch schon die pointer.au3 heruntergeladen aber hat auch nicht funktioniert. Muss ich die irgendwie in Programm mit einbinden außer #include <pointer.au3> ?
Bubba321 is offline  
Old 10/06/2013, 23:08   #6
 
alpines's Avatar
 
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 815
Du musst die Pointer.au3 in den Include Ordner von AutoIt packen und das nutzen:
#include <Pointer.au3>

oder ins Verzeichnis wo das Script ist und das benutzen:
#include "Pointer.au3"
alpines is offline  
Thanks
1 User
Old 10/06/2013, 23:20   #7
 
elite*gold: 0
Join Date: Aug 2013
Posts: 321
Received Thanks: 258
Das steht doch nicht bekannte Funktion ..dann sucht man eig. Erstmal die Funktion auch in den Includes ;> Pointer.au3 in Include Ordner und dann oben
Code:
#include<Pointer.au3>
Die Funktionen sind ja in der Pointer.au3 ..also musst du sie mit reinnehmen.
Sh1Rum is offline  
Old 10/07/2013, 01:13   #8

 
elite*gold: 64
Join Date: May 2011
Posts: 1,229
Received Thanks: 854
Ich verstehe es trotzdem nicht.
Du bist neu in AutoIt.
Kannst nicht mal Includes einbinden.
Der Code ist gefunden, kennst davon kein Stück....
Wie willst du denn bitte ein Speedhack schreiben ohne kenntnisse
wie das Abläuft u.s.w.

B.z.w wie kommst du darauf das AutoIt einfach so bei Metin2
Werte in der Memory ändern kann o.o?
BladeTiger12 is offline  
Old 10/07/2013, 01:23   #9
 
c0w's Avatar
 
elite*gold: 3653
The Black Market: 378/0/0
Join Date: Aug 2008
Posts: 30,854
Received Thanks: 529
warum sollte autoit das nicht können? :O
c0w is offline  
Old 10/07/2013, 01:37   #10

 
elite*gold: 64
Join Date: May 2011
Posts: 1,229
Received Thanks: 854
Habe es schonmal bei Metin2 mit AutoIt probiert.
Irgendwie ging das garnicht.
Metin2 wollte einfach nicht die Werte verändern o.o.

Das einzigste was geklappt hat war dann eine c++ Dll in .mix
umbenennen und in den Metin2 Ordner zulegen. Das hat dann geklappt.
BladeTiger12 is offline  
Old 10/07/2013, 01:53   #11
 
c0w's Avatar
 
elite*gold: 3653
The Black Market: 378/0/0
Join Date: Aug 2008
Posts: 30,854
Received Thanks: 529
hackshield? da würds dir mit anderen sprachen aber wahrscheinlich ähnlich gehen
c0w is offline  
Thanks
1 User
Old 10/07/2013, 09:51   #12
 
elite*gold: 0
Join Date: Oct 2013
Posts: 10
Received Thanks: 1
Danke , ich hatte vorher schon #include <Pointer.au3> da stehen und es hat nicht funktioniert , für alle die meinen ich kenne den include nicht. Ich wussste nur nicht, dass man die pointer Datei auch in den Ordner kopieren muss. Danke sehr hilfreich

Danke , ich hatte vorher schon #include <Pointer.au3> da stehen und es hat nicht funktioniert , für alle die meinen ich kenne den include nicht. Ich wussste nur nicht, dass man die pointer Datei auch in den Ordner kopieren muss. Danke sehr hilfreich.

Funktioniert aber leider immer noch nicht

$baseadress = _MemoryModuleGetBaseAddress($pid,"rub.exe")

meldet er als Fehler, kann da vllt. einer weiterhelfen ?
Bubba321 is offline  
Old 10/07/2013, 12:46   #13
 
alpines's Avatar
 
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 815
Wäre mal nicht schlecht den Fehler hier zu posten.
So wie ich das entnehmen kann fehlt die Funktion in der UDF (was ich aber nicht glaube, wenns stimmt dann lad dir mal die NomadMemory.au3 runter).
Die hab ich dir in den Anhang gepackt, ist mir ein Rätsel warum man Scripte unbedingt archivieren muss.
Attached Files
File Type: zip NomadMemory.zip (2.9 KB, 7 views)
alpines is offline  
Thanks
1 User
Old 10/07/2013, 15:25   #14
 
elite*gold: 0
Join Date: Oct 2013
Posts: 10
Received Thanks: 1
Nein funktioniert leider auch nicht hier mal den Fehler vllt. könnt ihr damit etwas anfangen

C:\Users\Admin\Desktop\AutoIt v3 Script (neu).au3(7,57) : ERROR: _MemoryModuleGetBaseAddress(): undefined function.
$baseadress = _MemoryModuleGetBaseAddress($pid,'rub.exe')
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~^
C:\Users\Admin\Desktop\AutoIt v3 Script (neu).au3 - 1 error(s), 0 warning(s)
!>15:24:40 AU3Check ended. Press F4 to jump to next error.rc:2
>Exit code: 2 Time: 0.331
Bubba321 is offline  
Old 10/07/2013, 15:30   #15
 
alpines's Avatar
 
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 815
Hier ist die Funktion, hab die NomadMemory ohne die Funktion hochgeladen aber pack das hier einfach in NomadMemory.au3 und es sollte klappen:
Code:
Func _MemoryModuleGetBaseAddress($iPID, $sModule)
    If Not ProcessExists($iPID) Then Return SetError(1, 0, 0)

    If Not IsString($sModule) Then Return SetError(2, 0, 0)

    Local   $PSAPI = DllOpen("psapi.dll")

    ;Get Process Handle
    Local   $hProcess
    Local   $PERMISSION = BitOR(0x0002, 0x0400, 0x0008, 0x0010, 0x0020) ; CREATE_THREAD, QUERY_INFORMATION, VM_OPERATION, VM_READ, VM_WRITE

    If $iPID > 0 Then
        Local $hProcess = DllCall("kernel32.dll", "ptr", "OpenProcess", "dword", $PERMISSION, "int", 0, "dword", $iPID)
        If $hProcess[0] Then
            $hProcess = $hProcess[0]
        EndIf
    EndIf

    ;EnumProcessModules
    Local   $Modules = DllStructCreate("ptr[1024]")
    Local   $aCall = DllCall($PSAPI, "int", "EnumProcessModules", "ptr", $hProcess, "ptr", DllStructGetPtr($Modules), "dword", DllStructGetSize($Modules), "dword*", 0)
    If $aCall[4] > 0 Then
        Local   $iModnum = $aCall[4] / 4
        Local   $aTemp
        For $i = 1 To $iModnum
            $aTemp =  DllCall($PSAPI, "dword", "GetModuleBaseNameW", "ptr", $hProcess, "ptr", Ptr(DllStructGetData($Modules, 1, $i)), "wstr", "", "dword", 260)
            If $aTemp[3] = $sModule Then
                DllClose($PSAPI)
                Return Ptr(DllStructGetData($Modules, 1, $i))
            EndIf
        Next
    EndIf

    DllClose($PSAPI)
    Return SetError(-1, 0, 0)

EndFunc
alpines is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
Autoit Pointer
01/30/2011 - AutoIt - 0 Replies
Hallo, ich brauche eure Hilfe. Ich will mir einen eigenen Dss switcher für das Spiel Metin2 machen, soweit habe ich alles. Habe mit MouseMove etc gearbeitet also so noob sachen ^^ . BIs dahin klappt alles gut nur jetzt will ich das wenn eine Waffe z.B. 30 dss hat (einen bonus vond er waffe) das er dann anhält aber wie stelle ich das am besten an habe da an Pointer gedacht, aber ich blick des nicht richtig. Wäre lieb wenn ihr mir helfen könntet. Danke
Pointer für Autoit
12/07/2009 - AutoIt - 7 Replies
Hallöchen bitte schlagt mich nicht bin schon alle möglichen tuts durchgegangen doch ich raff es einfach nicht. http://img686.imageshack.us/img686/4291/unbenannt 1i.th.jpg das hier ist mein Pointer doch wie schreib ich ihn nun in mein bot? Hab keine Lust ihn immer rein zu schreib. Wie gesagt bin schon ca 1 Woche daran und ich verzweifel langsam da ich nie ein gescheites Beispiel finde... Hoffe einer kann mir helfen.



All times are GMT +1. The time now is 23:49.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.