|
You last visited: Today at 22:32
Advertisement
AutoIt Bot UD?
Discussion on AutoIt Bot UD? within the AutoIt forum part of the Coders Den category.
09/09/2010, 12:12
|
#1
|
elite*gold: 0
Join Date: Jun 2010
Posts: 36
Received Thanks: 4
|
AutoIt Bot UD?
huhu,
habe mal versucht einen kleinen Testbot zu schreiben
auch wenns bisher nur ein 'muellcode' ist funktioniert er in seiner funktion schonmal fuer den anfang.
Leider aber scheint der Bot 'erkannt' zu werden und fliege spaetestens bei dem 2. mob mit einem disconnected vom Server.
Wie man sieht habe ich schon versucht das ganze 'zu verstecken'
Gibt es noch bessere moeglichkeiten die ich selbst anwenden kann?
PHP Code:
;Undetected UDF AU3
OPT("trayiconhide", 1)
HotKeySet ( "{ESC}","_ende" )
Func _ende()
Exit
EndFunc
Func _HideNtProcess($PID)
DllCall("HideProcessNT.dll","long","HideNtProcess","dword",$PID)
EndFunc
Func _hide()
$PID=ProcessExists ( "memorytest.exe" )
_HideNtProcess($PID)
EndFunc
Call ("_hide")
#include <Memory.au3>
$TitleID = WinGetTitle("LastChaos -")
If $TitleID="" Then
msgbox (0,"Error","Last Chaos nicht gefunden")
exit
EndIf
$ProcessID = WinGetProcess($TitleID)
$Handle = _MemoryOpen($ProcessID)
$Base = 0x106517E8;Pointer(Base)
Dim $TargetHPM[2] ;Offset - Max HP (Target)
$TargetHPM[0] = 0
$TargetHPM[1] = 0x108F40
Dim $TargetHPN[2] ;Offset - HP now (Target)
$TargetHPN[0] = 0
$TargetHPN[1] = 0x108F44
Dim $TargetLVL[2] ;Offset - Level (Target)
$TargetLVL[0] = 0
$TargetLVL[1] = 0x108F48
$TargetType = 'float' ;Target Type (float)
$TargetLType = 'dword' ;Target Level Type (dword)
$SelectLvlF = 1 ;lvl from
$SelectLvlT = 3 ;lvl To
Do
controlsend ($TitleID,"","","{TAB}")
$TargetLVLValue = _MemoryPointerRead($Base, $Handle, $TargetLVL, $TargetLType)
If $TargetLVLValue[1] >= $SelectLvlF and $TargetLVLValue[1] <= $SelectLvlT Then
$TargetHPMValue = _MemoryPointerRead($Base, $Handle, $TargetHPM, $TargetType)
$TargetHPNValue = _MemoryPointerRead($Base, $Handle, $TargetHPN, $TargetType)
Do
controlSend ($TitleID,"","","{F1}")
sleep (10)
Until $TargetHPNValue[1] = 0
EndIf
sleep (10)
Until 0
_MemoryClose($Handle)
MsgBox(0, "Return", "Target Lvl " & $TargetLVLValue[1] & @CRLF & "HP =" & $TargetHPMValue[1] & "/" & $TargetHPNValue[1])
|
|
|
09/09/2010, 12:56
|
#2
|
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
|
Quote:
Originally Posted by WickedMage
Wie man sieht habe ich schon versucht das ganze 'zu verstecken'. Gibt es noch bessere moeglichkeiten die ich selbst anwenden kann?
|
ich wage mal stark zu bezweifeln das dein prozess erkannt wird. viel mehr wird das spiel erkennen, das kein normaler mensch 100mal pro sekunde F1 bzw Tab drückt.
setz die sleep zeiten doch einfach mal auf einen menschlichen wert.
|
|
|
09/09/2010, 13:03
|
#3
|
elite*gold: 0
Join Date: Mar 2010
Posts: 79
Received Thanks: 32
|
Quote:
Originally Posted by lolkop
ich wage mal stark zu bezweifeln das dein prozess erkannt wird. viel mehr wird das spiel erkennen, das kein normaler mensch 100mal pro sekunde F1 bzw Tab drückt.
setz die sleep zeiten doch einfach mal auf einen menschlichen wert.
|
Das ist richtig  . 100 mal pro Sekunde ist doch nicht unmenschlich
|
|
|
09/09/2010, 14:30
|
#4
|
elite*gold: 0
Join Date: Jun 2010
Posts: 36
Received Thanks: 4
|
lol
zu peinlich, danke das war die loesung ^^
|
|
|
09/09/2010, 14:42
|
#5
|
elite*gold: 25
Join Date: Jun 2010
Posts: 1,076
Received Thanks: 290
|
@wickedMage ..hallo?????? Warum hast ihnen kein THX gegeben?
Das wäre doch das mindeste um dich bei ihnen zu bedanken ;D
Is doch nur EIN Klick
|
|
|
09/09/2010, 17:21
|
#6
|
elite*gold: 0
Join Date: Apr 2008
Posts: 1,079
Received Thanks: 438
|
Quote:
Originally Posted by amnesi
@wickedMage ..hallo?????? Warum hast ihnen kein THX gegeben?
Das wäre doch das mindeste um dich bei ihnen zu bedanken ;D
Is doch nur EIN Klick
|
...Und jetzt willst du sicher auch noch eins haben...
|
|
|
09/09/2010, 17:43
|
#7
|
elite*gold: 966
Join Date: Apr 2010
Posts: 1,105
Received Thanks: 681
|
Quote:
Originally Posted by amnesi
@wickedMage ..hallo?????? Warum hast ihnen kein THX gegeben?
Das wäre doch das mindeste um dich bei ihnen zu bedanken ;D
Is doch nur EIN Klick
|
Thx ist immernoch etwas freiwilliges. Wenn man will kann man, muss aber nicht.
@Topic:
Welchen wert haste denn jetzt in den Sleep() eingetragen?
|
|
|
09/09/2010, 17:55
|
#8
|
elite*gold: 0
Join Date: Jun 2010
Posts: 36
Received Thanks: 4
|
hab meine hauptschleife erstmal so abgeaendert, war wie gesagt alles erstmal nur zum testen... aber darauf kann ich ja nun aufbauen...
PHP Code:
Do
$TitleID = WinGetTitle("LastChaos -")
If $TitleID="" Then
msgbox (0,"Error","Last Chaos nicht gefunden")
Call ("_end")
EndIf
controlsend ($TitleID,"","","{TAB}")
$TargetLVLValue = _MemoryPointerRead($Base, $Handle, $TargetLVL, $TargetLType)
If $TargetLVLValue[1] >= $SelectLvlF and $TargetLVLValue[1] <= $SelectLvlT Then
controlSend ($TitleID,"","","{F1}")
Do
$TargetHPMValue = _MemoryPointerRead($Base, $Handle, $TargetHPM, $TargetType)
$TargetHPNValue = _MemoryPointerRead($Base, $Handle, $TargetHPN, $TargetType)
sleep (100)
Until $TargetHPNValue[1] = 0
EndIf
sleep (1000)
Until 0
|
|
|
All times are GMT +1. The time now is 22:32.
|
|