[How To] AutoIt ImageSearch ( am Metin2 Beispiel )

12/15/2010 17:51 King_OF#46
Code:
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_UseX64=n
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#RequireAdmin

#include<ImageSearch.au3>
$input = InputBox("Galaxy Gate klicker","Wie oft soll geklickt werden?")
$time = InputBox("Galaxy Gate klicker","Wie lange soll der Bot zwischen jedem 2. Klick warten? Zeit in Millisekunden (1000 msek = 1 sek)")
MsgBox ( 0, "Info", "Das Programm wird mit Alt+G gestartet und mit Alt+B beendet.")
HotKeySet ( "!g", "start")
HotKeySet ( "!b", "beenden")
$x1=0
$y1=0
$x2=0
$y2=0

While 1
	sleep (1)
WEnd

Func start()
While 1
		For $i=1 to $input
		$result=_ImageSearch("GGButton.png",1,$x1,$y1,0)
		If $result=1 Then
			MouseClick ( "left", $x1, $y1)
			$result2=_ImageSearch("MultiButton.png",1,$x2,$y2,0)
				sleep ($time)		
			If $result2=1 Then
				MouseClick ( "left", $x2, $y2,0)
			EndIf
		EndIf
	Next
	WEnd
EndFunc
Func beenden ()
	exit 0
EndFunc
So sieht er inzwischen aus.. Habe es mal oben eingegeben, jedoch kommt immernoch dieselbe Fehlermeldung.
12/16/2010 14:12 kamarun#47
also ich hab ma die au3 und dll noch mal runtergeladen aber ich bekomme immer noch den fehler

>C:\Program Files (x86)\AutoIt3\SciTE\..\au3check.exe "C:\Users\teufel\Desktop\MonyBOT\BOT test.au3"
AutoIt3 Syntax Checker v1.54.8 Copyright (c) Tylo 2007

C:\Users\teufel\Desktop\MonyBOT\ImageSearch.au3(91 ,31) : WARNING: $fenster: possibly used before declaration.
$state = WinGetState($fenster,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
12/16/2010 17:32 omer36#48
öffne die iamgesearch.au3 und geh ganz unten, und lösch mal diesen teil:

PHP Code:
Func _MyWaitForImageSearch($findImage,$resultPosition,ByRef $xByRef $y,$tolerance)
    
#$waitSecs = $waitSecs * 1000
    #$startTime=TimerInit()
    
While 1
    $state 
WinGetState($fenster"")
    If 
NOT BitAnd($state8Then
        WinActivate
($fenster)
        
sleep(100)
        
$result=_ImageSearch($findImage,$resultPosition,$x$y,$tolerance)
        if 
$result 0 Then
            
return 1
        
EndIf
    EndIf
    
WEnd
    
return 0
EndFunc 
die imagesearch.au3 diei ch habe, hatt diesen teil nciht...
also dann müsste es ohne fehlermeldung gehen
12/17/2010 12:28 kamarun#49
echt mal danke soweit funktioniert des aufem desktop jetzt das wenn er des bild findet

wirklich danke es hat daran gelegen das ich des bisselle code raus nehmen muste..

aber jetzt hab ich das problem er soll des auch in metin2 anklicken

wie gesagt er macht des aufem desktop aber nicht im spiel

ich hab mir des money.tga direkt aus den packdateien von metin geholt

und habe es umgewandelt in ein bmp

wie gesagt er findet es aufem desktop aber nicht in metin
woran liegt das hast du da ne ahnung

des money.tga ist 32x32 und des bmp ist auch 32x32

aber das tga hat keinen hindergrund aber des bmp hat einen weisen hintergrund

kann das vieleicht daran liegen das er es in metin2 nicht findet
wenn ja mit welchem program kann ich die tga aus metin in eine bmp umwandeln das es auch die hintergrund transparez behält oder wie hast du die brief tga in ein bmp umgewandelt ich mache das mit paint.net aber beim umwandeln geht die hintergrund transparenz verloren

hast du da ne idee dazu

und noch mal danke für die hilfe echt
12/17/2010 15:25 omer36#50
nja bi imagesearch ist halt as problem, bzw die funktion an sich so:
das bild, was du angibst, wird als ganzes gesucht...
sprich: alles was auf dein bild ist (hintergrund schwarz/kleine weiße punkte oder sonnst was) muss auf dein desktop/bildschirm erscheinen, erst dann reagiert dein programm....

zb:

wenn ich das als programm nutze, wird es bei mir super klappen, aber bei keinem anderen sonnst, weil er nicht das selbe hintergrund hatt, und es nicht in dieser position ist (halb kreis oben im bild)
[Only registered and activated users can see links. Click Here To Register...]

mach ichs so:
[Only registered and activated users can see links. Click Here To Register...]

findet er nix, weil das "weiße" einfach nciht gefunden wird...

so müsste er es überall finden...
[Only registered and activated users can see links. Click Here To Register...]

musst halt dein bild klein halten und nur die aufälligen musstern nehmen...

ob und wie das mit der transparens geht, weiß ich auch cniht
12/17/2010 18:28 kamarun#51
ah genau ich weis was du meinst ich versuch des mal danke dir
12/19/2010 23:04 malysh#52
:) kann man schöne sachen mit sonem tool anstellen
thx haste
01/04/2011 23:15 QuarryBot#53
Man hat der ne sch*** stimme xD
nein spaß, deine stimme ist garnicht schlimm und wem interessiert schon die stimme wenn man hilfe brauch.

wollte nur ein danke aussprechen, weil ich hab lange gegoogelt aber nur müll TuT's und das war "endlich" mal ein ordentliches ^^
01/12/2011 01:45 Dradgeyo#54
Brauch ich zwar nicht^^
Thx kriegste aber trotzdem weils gescheit gemacht ist und net so trashig wie bestimmte andere Sachen die ich schon gesehen hab xD
02/27/2011 18:04 seppolos#55
Hi leute ich hab ein problem ich hab mir ein bot geschrieben für godgame Disco falls des jemand kennt. und da kommt bei mir fehler meldung vllt könnt mir des jemand debuggen weil ich komm net drauf wo der fehler liegt.
02/27/2011 18:46 omer36#56
PHP Code:
#include <ImageSearch.au3>

Global $fenster
Global $active 0

HotKeySet
("{F5}""_start")
HotKeySet("{F6}""_end")
$x1 0
$y1 
0
$x2 
0
$y2 
0

$firefox 
'firefox.exe'

If ProcessExists($firefoxThen
    MsgBox
(0"Bot""Firefox gefunden!")


    While 
1
        Sleep
(1)
        If 
$active 1 Then
            $result 
_ImageSearch("eimer.png"1$x1$y10)
            If 
$result 1 Then
                MouseClick
("LEFT"$x1$x2)
                
Sleep(500)
            EndIf
            
$result2 _ImageSearch("zitrone.png"1$x1$y10)
            If 
$result2 1 Then
                MouseClick
("LEFT"$x1$x2)
                
Sleep(500)
            EndIf
            
$result3 _ImageSearch("pinklady.png"1$x1$y10)
            If 
$result3 1 Then
                MouseClick
("LEFT"$x1$x2)
                
Sleep(500)
            EndIf
            
$result4 _ImageSearch("wisky.png"1$x1$y10)
            If 
$result4 1 Then
                MouseClick
("LEFT"$x1$x2)
                
Sleep(500)
            EndIf
            
$result5 _ImageSearch("eis.png"1$x1$y10)
            If 
$result5 1 Then
                MouseClick
("LEFT"$x1$x2)
                
Sleep(500)
            EndIf
            
$result6 _ImageSearch("grasshoper.png"1$x1$y10)
            If 
$result6 1 Then
                MouseClick
("LEFT"$x1$x2)
                
Sleep(500)
            EndIf
            
$result6 _ImageSearch("schliesen.png"1$x1$y10)
            If 
$result6 1 Then
                MouseClick
("LEFT"$x1$x2)
                
Sleep(500)

            EndIf
        EndIf
    
WEnd

Else
    
MsgBox(0"Bot""Firefox nicht gefunden!")
EndIf

Func _start()
    
$active 1
EndFunc

Func _end
()
    
$active 0
EndFunc 
02/27/2011 20:54 seppolos#57
ok dankeschön doch jetzt hab ich ein anderes problem in der "imagesearch.au3" ist folgender fehler.
also beim compilieren komt halt folgender fehler.
PHP Code:
G:\AutoIt3\Include\ImageSearch.au3 (130) : ==> Subscript used with non-Array variable.:
for 
$i 1 to $findImage[0]
for 
$i 1 to $findImageERROR 
hoffe du kannst mir da auch noch helfen
05/16/2011 02:11 SuiCiDePenguin#58
Ich weiss Alles Falsch wo ich es grad Poste aber hab keine Nerven mehr D:
__________________________________________________ _____________

Func Starten ()

While 1
$result=_ImageSearch("Anmelden.png",1,$x1,$y1,0)
If $result = 1 Then
Mouseclick ("LEFT",$x1,$y1)
sleep(500)
$result2=_ImageSearch("Anmelden2.png",1,$x1,$y1,0)
If $result2=1 Then
Mouseclick ("LEFT",$x2,$y2)
sleep(500)
$result3=_ImageSearch("Anmelden3.png",1,$x3,$y3,0)
If $result3=1 Then
Mouseclick ("LEFT",$x3,$y3)
Endif
Endif
EndIf
WEnd
EndFunc


Func Beenden ()
Exit 0
Endfunc
__________________________________________________ _____________________Es kommt immer eine Fehlermeldung und zwar Line 113 (file blablabla)
WEnd
Error : "Wend" statement with no matching "While" statement

Die frage wiso ich hab ja ein While am anfang ?! >.<

Need Help

Edit: Sry für DoppelPost
08/20/2011 14:52 xNeoNStyLeZz#59
.... Warum Klappen diese scheiß INCLUDE... NICHT!

[Only registered and activated users can see links. Click Here To Register...] (Grund wegen dem DL Ich habe ka wie ich Bilder Hochlade!)

guckt euch das an und sagt mal warum es nicht KLAPPT!
Eig alles richtig oder Nicht?!

Würd mich freuden wenn einer es machen würde!
@Menan Mach mal pls einen DL von deinem Bot

" Line 1 File"C:\Users\...\...IMG_SEARCH\ImageSearch.au3"):

#include<ImageSearch.au3>

Error: #include depth exeeded. Make sure There are no recusive
includes. "
08/26/2011 19:05 _Eckl#60
kann man sowas in visual c++ auch machen?
Wenn ja könnt mir einer ein Tutorial machen das würde sicher auch viele andere interessieren.