|
You last visited: Today at 01:17
Advertisement
AutoIt Script beendet sich sofort
Discussion on AutoIt Script beendet sich sofort within the AutoIt forum part of the Coders Den category.
05/01/2015, 01:08
|
#1
|
elite*gold: 0
Join Date: Oct 2009
Posts: 63
Received Thanks: 9
|
AutoIt Script beendet sich sofort
Hi Community,
ich bin dabei mir einen PixelBot zu schreiben und es sieht auch recht soliede aus, nur habe ich das Problem, dass wenn ich die AutoIt Datei starte, sie sich sofort wieder beendet.
Mein Script sieht wie folgt aus:
Code:
HotKeySet("{F2}", "Search")
HotKeySet("{ESC}", "ende")
Func Search()
While 1
$BB = PixelSearch (7, 64, 1903, 1022, 0xFFFFFD)
If IsArray($BB) Then
MouseClick("Left", $BB Random[1,5], $BB Random[1,5], 1, Random(3,7))
Sleep(Random(8000,9000))
Else
MouseClick("Left", Random(1721, 1897), Random(1013, 910), 1, Random(3,7))
If IsArray($BB) Then
MouseClick("Left", $BB Random[1,5], $BB Random[1,5], 1, Random(3,7))
EndIf
EndIf
WEnd
EndFunc
Func ende()
Exit
EndFunc
Wenn der Bot mit F2 gestartet wird, soll nach einem bestimmten Pixel gesucht werden.
Findet er diesen, soll er in einem zufälligen Radius zu diesem Pixel einen Klick machen.
Findet er diesen Pixel nicht, soll er durch einen Klick auf der Karte (zum fortbewegen im Spiel) sich bewegen und während der Bewegung bereits suchen - will da ungern eine Sleep Funktion einbauen, da er dann an den bestimmten Pixel vorbei läuft.
Hat er während der Suche/Bewegung den Pixel gefunden, soll er ihn wie oben anklicken und die Schleife von neuem beginnen.
Hoffentlich könnt Ihr mir helfen.
MfG
|
|
|
05/01/2015, 01:30
|
#2
|
elite*gold: 138
Join Date: Apr 2012
Posts: 3,494
Received Thanks: 1,769
|
Dein Script beendet sich wieder sofort, weil es deinen Code abgearbeitet hat und du keine Schleife hast, in der es sozusagen hängenbleibt. Füge nach deinen HotKeySets eine Endlosschleife hinzu. Am besten mit einem Sleep, damit deine CPU nicht unnötig belastet wird:
PHP Code:
While Sleep(200) WEnd
|
|
|
05/01/2015, 01:51
|
#3
|
elite*gold: 0
Join Date: Oct 2009
Posts: 63
Received Thanks: 9
|
Ich habe eine While Schleife doch gegeben, die sich im Grunde immer wiederholen müsste, oder meinst du etwas anderes?
|
|
|
05/01/2015, 02:01
|
#4
|
elite*gold: 138
Join Date: Apr 2012
Posts: 3,494
Received Thanks: 1,769
|
Quote:
Originally Posted by kollergen
Ich habe eine While Schleife doch gegeben, die sich im Grunde immer wiederholen müsste, oder meinst du etwas anderes?
|
Ja, du hast eine While-Schleife. Aber die ist in einer Funktion, die nur durch einen HotKey ausgelöst wird. Die Funktionen Search() und ende() hast du definiert, jedoch werden sie niemals aufgerufen (außer mit deinem HotKey). Und bis du einen HotKey drückst, muss dein Script irgendwo "pausieren" und dazu brauchst du eine While-Schleife außerhalb der Funktion, die beim Ausführen des Scripts ausgelöst wird und dein Bot somit diese so oft durchläuft bis du per HotKey eine Funktion aufrufst
|
|
|
05/01/2015, 02:14
|
#5
|
elite*gold: 0
Join Date: Oct 2009
Posts: 63
Received Thanks: 9
|
Vielen Dank
Das Problem ist schon mal behoben.
Kannst du mir eventuell noch einmal helfen?
Ich würde gerne eine Random Funktion einbauen, wenn er einen Pixel gefunden hat, damit die Maus nicht immer auf den selben Pixel klickt und der Bot somit schwerer zu erkennen ist.
Ist das irgendwie möglich, dass wenn der Pixel gefunden wurde, in einem bestimmten zufälligen Umfeld von diesem Pixel der Mausklick ausgeübt wird?
|
|
|
05/01/2015, 02:18
|
#6
|
elite*gold: 138
Join Date: Apr 2012
Posts: 3,494
Received Thanks: 1,769
|
Quote:
Originally Posted by kollergen
Vielen Dank
Das Problem ist schon mal behoben.
Kannst du mir eventuell noch einmal helfen?
Ich würde gerne eine Random Funktion einbauen, wenn er einen Pixel gefunden hat, damit die Maus nicht immer auf den selben Pixel klickt und der Bot somit schwerer zu erkennen ist.
Ist das irgendwie möglich, dass wenn der Pixel gefunden wurde, in einem bestimmten zufälligen Umfeld von diesem Pixel der Mausklick ausgeübt wird?
|
Google ist dein Freund
|
|
|
05/01/2015, 02:48
|
#7
|
elite*gold: 0
Join Date: Oct 2009
Posts: 63
Received Thanks: 9
|
Auf diese Seite bin ich auch schon gestoßen, nur bringt sie mich eher zur Verzweifelung als das sie mir weiterhelfen könnte.
Ich habe den Bot nun ein wenig umgeschrieben:
Quote:
HotKeySet("{F2}", "Search")
HotKeySet("{ESC}", "ende")
$iCounter = 1
While 1
Sleep(100)
While $iCounter <= 1
MsgBox (64, "Tastenbelegung", "F2: Sammeln beginnen" & @CRLF & "ESC: Script beenden")
$iCounter +=1
WEnd
WEnd
Func Search()
While 1
$BB = PixelSearch (7, 64, 1903, 1022, 0xFFFFFD)
If IsArray($BB) Then
MouseClick("Left", $BB[0], $BB[1], 1, Random(3,7))
Sleep(Random(3000,4000))
Else
Sleep (Random (2000, 4000))
MouseClick("Left", Random(1720, 1896), Random(908, 1012), 1, Random(3,7))
Sleep (Random (3000, 5000))
If IsArray($BB) Then
MouseClick("Left", $BB[0], $BB[1], 1, Random(3,7))
Sleep (Random (3000, 5000))
EndIf If IsArray($BB) Then
MouseClick("Left", $BB[0], $BB[1], 1, Random(3,7))
Sleep (Random (3000, 5000))
EndIf
EndIf
WEnd
EndFunc
Func ende()
Exit
EndFunc
|
Nun wird 3mal auf dem Weg zum angeklickten Punkt auf der Karte "gescannt" ob der Pixel zu finden ist.
Nur die Random Funktion bekomme ich nicht hin.
EDIT: Hab es doch hinbekommen
Vielen vielen Dank für deine Hilfe zur so später Stunde.
Kann abgeschlossen werden.
|
|
|
05/01/2015, 14:43
|
#8
|
elite*gold: 724
Join Date: Mar 2011
Posts: 10,479
Received Thanks: 3,318
|
#closed
|
|
|
 |
Similar Threads
|
Script beendet sich nach abarbeitung selbst
02/10/2013 - AutoIt - 2 Replies
Hallo,
Mein Script soll mit der Taste "F9" starten und mit der Taste "F10" anhalten.
Jetzt ist das Problem das der Script sich nach Abarbeitung automatisch schließt (mal meine Vermutung). Wenn ich den Script ausführe passier rein gar nichts. Es erscheint auch kein Symbol in der Trayleiste.
Global $rs = False
HotKeySet ("{F9}", "start" )
HotKeySet ("{F10}", "stop" )
|
Hilfe - Fiesta beendet sich sofort
06/03/2012 - Fiesta Online - 3 Replies
Tagchen,
wollte heute wieder Fiesta spielen, jedoch startet es einfach nicht.
Muss seit gestern auf meinem lahmen Laptop spielen, und da es etwas in Fiesta gelaggt hat, habe ich ein paar Programme deinstalliert. Leider die falschen...
Nun ja, heute habe ich Fiesta normal gestartet, jedoch wurde der Ladebildschirm einmal weiß für einen Bruchteil einer Sekunde, und dann schließt sich Fiesta wieder.
Habe es ziemlich oft versucht, jedoch geht es nicht.
Google habe ich auch schon befragt,...
|
Clien beendet sich sofort...
10/05/2008 - Metin2 Private Server - 14 Replies
hey,
mit der sufu hab grad nix gefunden...abre wenn ich den client von PServer starten will, komm für vll ne halbe sekubnde der bereich, wo der server und die channel stehen und dann beendet er sich ohne fehlermeldung usw...
gruß
|
All times are GMT +1. The time now is 01:17.
|
|