[AutoIT]NosTale MinGame Bot

03/02/2013 18:10 dipsi008#1
Hi Leute,
die, die NosTale spielen/gespielt haben wissen worum es hier geht.
Also ich hab vor paar Tagen mit NosTale angefangen und wollte mal Minigame Bots scripten. Ich hab bist jetzt:

Steinbruch Bot (funkt. perfekt):

Sägewärk Bot (bei unteren laufband funk. das noch nicht perfekt, mach das später):


Vielleicht habt Ihr's ja bemerkt, vielleicht auch nicht. Ich scriptete die nur mit Pixelsearch. Jetzt hab ich das Problem bei Fischteich Bot. Da find ich das etwas schwieriger.

Fischteich Bot:

Positionen + Farbe von Fischteich
Der sollte erkennen wann der Fisch anbeißt und wenn der anbeißt z. B. Left Taste 1,5 Sek. gedrückt halten.

Wenn jemand versteht was ich meine, könnte bitte der/die jenige mir bitte helfen? Oder habt ihr Tipps für mich die brauchen werde? s:
Wäre sehr dankbar wenn mir jemand helfen könnte.
03/02/2013 19:35 omer36#2
Quote:
Der sollte erkennen wann der Fisch anbeißt und wenn der anbeißt z. B. Left Taste 1,5 Sek. gedrückt halten.
Send("{LEFT down}")
sleep(1500)
Send("{LEFT up}")

(bei mir funktioniert dieses 'gedrückt halten' irgendwie nie, aber laut der hilfe/google
sollte das klappen)
03/02/2013 19:50 dipsi008#3
Ja ich weiß das geht nicht.
Hab das anfangs auch ausprobiert..
03/03/2013 09:25 FacePalmMan#4
Quote:
Originally Posted by omer36 View Post
Send("{LEFT down}")
sleep(1500)
Send("{LEFT up}")

(bei mir funktioniert dieses 'gedrückt halten' irgendwie nie, aber laut der hilfe/google
sollte das klappen)
:facepalm: Left bedeutet für autoit linke pfeiltaste und nicht linke maustaste :facepalm:
aber ist auch nicht so schlimm! fehler passieren jedem mal!

das was ich eher verwenden würde:
Code:
MouseDown("Left")
Sleep(1500)
MouseUp("Left")
03/03/2013 11:28 qkuh#5
Quote:
Originally Posted by FacePalmMan View Post
:facepalm: Left bedeutet für autoit linke pfeiltaste und nicht linke maustaste :facepalm:
aber ist auch nicht so schlimm! fehler passieren jedem mal!

das was ich eher verwenden würde:
Code:
MouseDown("Left")
Sleep(1500)
MouseUp("Left")
Es gibt hier echt einige, die nicht in der Lage dazu sind richtig zu lesen...
Er hat doch gar nicht von einer Maustaste gesprochen :facepalm:
03/03/2013 11:31 omer36#6
Quote:
Originally Posted by FacePalmMan View Post
:facepalm: Left bedeutet für autoit linke pfeiltaste und nicht linke maustaste :facepalm:
aber ist auch nicht so schlimm! fehler passieren jedem mal!

das was ich eher verwenden würde:
Code:
MouseDown("Left")
Sleep(1500)
MouseUp("Left")
das ist mir schon klar, dass das die pfeiltasten sind.
schau dir doch mal seine scripte an, dann wirst du merken, dass es keinen sinn ergeben würde da die maus mit einzubringen
03/03/2013 11:46 lolkop#7
Quote:
Originally Posted by omer36 View Post
Send("{LEFT down}")
sleep(1500)
Send("{LEFT up}")

(bei mir funktioniert dieses 'gedrückt halten' irgendwie nie, aber laut der hilfe/google
sollte das klappen)
Alternativ kann man aber immer mit den Optionen jeweils das keyDownDelay setzen. Das sollte dann auch mit wirklich jeder Anwendung funktionieren.
03/06/2013 20:44 dipsi008#8
Quote:
Originally Posted by lolkop View Post
Alternativ kann man aber immer mit den Optionen jeweils das keyDownDelay setzen. Das sollte dann auch mit wirklich jeder Anwendung funktionieren.
hab keyDownDelay auch probiert da kommt:
..unknow func. name..
keyDownDelay("{left}")
^ ERROR

ps: hab in syntax gesucht und ich fand wegen delay, etwas, aber bekomme immer noch error..
SendKeyDelay
SendKeyDownDelay
AutoItSetOption("option" [,param] )
Opt("SenKeyDelay", 5) ;5 milliseconds
Opt("SendKeyDownDelay", 1) ;1 millisecond
das sind paar befehle aus syntax vielleicht versteht ihr das und könnt mir das dann auch erklären. :)
03/06/2013 21:11 omer36#9
Hilfe:
SendKeyDelay Alters the length of the brief pause in between sent keystrokes. A value of 0 removes the delay completely.
Time in milliseconds to pause (default=5).

also die abstände, zwischen den einzelnen tastenschlägen.

SendKeyDownDelay Alters the length of time a key is held down before being released during a keystroke. For applications that take a while to register keypresses you may need to raise this value from the default. A value of 0 removes the delay completely.
Time in milliseconds to pause (default=5).

wie lange die tasten gedrückt gehalten werden sollen...#

also
Opt("SendKeyDownDelay", 1000)
Send("a")

sollte "a" für 1 sec. gedrückt halten...
(klappt bei mir komischer weise auch nicht)
03/06/2013 21:29 lolkop#10
Quote:
Originally Posted by omer36 View Post
sollte "a" für 1 sec. gedrückt halten...
(klappt bei mir komischer weise auch nicht)
das sollte definitiv funktionieren. jedoch muss klar sein, das 'a' hier dennoch nur EINMAL gesendet wird. betrachtet man die keystates, so ist 'a' aber dennoch über den zeitraum im "down"-status... genau das war es doch was der te bewirken wollte?
03/06/2013 21:30 dipsi008#11
egal danke für schnellle antwort. ich geh für heute dann mal schlafen.bt das

ps: wenn ihr ein befehl dazu findet schreibt dieses dann bitte hier rein. danke