AutoIt PixelSearch

08/19/2010 14:14 BigSmokePL#1
Hallo,

kann mir jemand erklären, wie PixelSearch funktioniert?
Ich hab zwar schon auf mehrere Seiten was dazu gesehen...
[Only registered and activated users can see links. Click Here To Register...]

... aber ich versteh das immer noch nicht.

Ich hab den RGB Wert 210,133,85 und möchte, dass wenn ich die Taste UP drücke, dass sich die Maus an diese Stelle bewegt.
Aber 1. hab ich keine Ahnung wie ich diesen RGB einfügen soll und 2. bewegt sich dann die Maus alleine an diese Stelle?

Kann ich dann noch irgendwie einstellen, dass irgendwie einen Bereich auswählen soll, wo möglichst viele dieser Pixel zu finden sind?

Was wenn ich nur ein Teil des Bildschirms (in der Mitte) in die Suche einbezihen will?


Code:
HotKeySet("{down}", "_exit")
HotKeySet("{up}", "_search")

Func _search()
PixelSearch ( 0, 0, 1280, 80021085, 5 )

EndFunc

Func _exit()
	exit
EndFunc


While 1
	Sleep (200)
WEnd
08/19/2010 14:19 omer36#2
PHP Code:
HotKeySet("{ESC}""_exit")
HotKeySet("{F1}""_start")

Func _start()
While 
1
    $B 
PixelSearch(4162529195860x039A3B)
    If 
IsArray($B) = True Then
        MouseMove
($B[0], $B[1], 1)
        
MouseClick("left")
    EndIf
WEnd
EndFunc


Func _exit
()
    Exit
EndFunc

While 1
Sleep
("200")
WEnd 
hier ein bsp.
hier wird in im bereich von 416, 252 bis 919, 586 die farbe 0x039A3B suchen.
wenn es gefunden wird die maus dahin bewegt und dann raufgedrückt.
08/19/2010 14:40 BigSmokePL#3
Quote:
hier wird in im bereich von 416, 252 bis 919, 586 die farbe 0x039A3B suchen.
Achso, jetzt versteh ich was die mit links, recht, buttom... meinen

Also in einen Rechteck von 416x252 bis 919x586



Also so sieht jetzt mein Code aus: (AimBot^^ für ein Bildschrim mit 1280x800))

Code:
HotKeySet("{down}", "_exit")
HotKeySet("{up}", "_start")

Func _start()
While 1
    $B = PixelSearch(322, 134, 955, 523, 0xE5E5E4)
    If IsArray($B) = True Then
        MouseMove($B[0], $B[1], 1)
        MouseClick("left")
		MouseClick("right")
    EndIf
WEnd
EndFunc


Func _exit()
    Exit
EndFunc

While 1
Sleep("200")
WEnd
Und juhu er funktioniert xD ([Only registered and activated users can see links. Click Here To Register...])
Ich muss noch was machen, damit er nicht immerdanebenschießt, aber da wird mir schon was einfallen :D
08/19/2010 15:15 omer36#4
hehe jut jut ;D
du kannst auch so machen, wenn er immer nur "knapp" trifft:

PHP Code:
MouseMove($B[0]+15$B[1]+101
musst so halt bischen testen bis er genau drauf ist... ^^
08/19/2010 17:18 _Roman_#5
Ehm.. Kleine Frage ^^
Also ich versteh das nicht soo ganz xD
Was bedeutet das: 0xE5E5E4 bzw. ich glaube, dass es eine Farbe ist, aber wie findet man die heraus xD
Was bedeutet das: [0], $B[1], 1), $B ist die Variable aber warum das in den [ ]
08/19/2010 17:31 Shadow992#6
Quote:
Originally Posted by _Roman_ View Post
Ehm.. Kleine Frage ^^
Also ich versteh das nicht soo ganz xD
Was bedeutet das: 0xE5E5E4 bzw. ich glaube, dass es eine Farbe ist, aber wie findet man die heraus xD
Was bedeutet das: [0], $B[1], 1), $B ist die Variable aber warum das in den [ ]
Das $B[0] ist ein Array, am besten du schaust dir nocheinmal die Grundlagen an:
[Only registered and activated users can see links. Click Here To Register...]
08/19/2010 17:43 _Roman_#7
Ok, danke für den Link ^^ Hab nur die Grundlagen von I - IV oder so angesehen ^^
08/19/2010 17:55 omer36#8
und die farbe bekommst du mit dem au3infotool herraus, was in dem install-ordner von autoit ist.
oder mit mein infotool, schau mal in meiner sig :p
08/19/2010 18:15 _Roman_#9
Ok danke x3
Werde mal gucken, nachdem ich den Guide durchgelesen hab, den Shadow992 reingeschrieben hat, ob ich es auch schaffe einen AimBot für ein simples Game zu machen xD

Edit: Und was bedeuten diese +15 und +10 hier
Quote:
MouseMove($B[0]+15, $B[1]+10, 1)
08/20/2010 07:35 t1lt3rr0r#10
$B[0] und $B[1] stehen ja für eine Koordinate auf dem Bildschirm, z.B. 400/200.
Wenn du nun $B[0]+15 und $B[1]+10 schreibst veränderst du die Koordinate um 15 nach rechts und 10 nach unten.(Bei minus genau andersrum)
Also bewegt sich die Maus nicht auf 400/200 sondern auf 415/210.

Bezogen auf dein Problem das der Bot nicht immer deine Ziele trifft: Da ich vermute das dein Bot den gesuchten Pixel findet aber dort nicht der Treffbereich vom Ziel, veränderst du mit den +x und +y einfach den Punkt wo er nach finden des Pixels, mit der Maus sich hinbewegen soll.

Hoffe das stimmt so^^ Ist ja immerhin mein erster Post ;)
08/20/2010 14:40 _Roman_#11
Quote:
$B = PixelSearch(322, 134, 955, 523, 0xE5E5E4)
Danke x3 Das heißt also das z.B. bei 322 und 134 mit $B[0]+15 und $B[1]+10 dann 337 und 144 wird oder ? xD
08/20/2010 15:14 omer36#12
nja... erstmal, weisst du wie man PixelSearch benutz?
$B = PixelSearch(322, 134, 955, 523, 0xE5E5E4)
es sucht in einem vorgegebenen bereich nach der farbe,
indem fall von "322,134" bis "955,523" nach der farbe "0xE5E5E4".

so. wenn es gefunden hatt bewegt sich die maus zu der farbe.
MouseMove($B[0], $B[1], 1) .
wenn du jetz noch das machst:
MouseMove($B[0]+15, $B[1]+10, 1)
bewegt sich die maus automatisch 15nach rechts und 10nach unten VON der farbe.

kapische? :D
08/20/2010 15:40 _Roman_#13
Hm... xD Dummheit ftw. xD
Also bewegt sich das 15 nach rechts und 10 nach unten von der Farbe aus ?
08/20/2010 16:22 omer36#14
ja... :D
08/20/2010 16:29 _Roman_#15
Oook xD
Und was ist wenn sich die Farbe blitzschnell wieder ändert ?
Dann wird danebengetroffen oder ?