Gw Bot schreiben Risiken ?

10/19/2010 19:59 ddl#16
Naja ohne mehr Source kann ich dir auch nicht mehr sagen.
10/19/2010 20:16 TurboGolom#17
Jap nur sehr viel mehr gibt es an dem Script net ich poste ihn trotzdem mal
PHP Code:
#include-once
#include "tt6.au3" 

WinWaitActive ("Guild Wars")


Func GoOut()
prepmoveto()
Sleep (3000)
If 
Checkarea(-1515220352Then 
MoveTo 
(114136, -20614
Sleep (2000)
MoveTo(113385, -20808)
MoveTo(113348, -21814)
MoveTo(112607, -22570)
MoveTo(111191, -22999)
MoveTo(110649, -23620)
MoveTo(110066, -23945)
MoveTo(19565, -23401)
MoveTo(19126, -22714)
MoveTo(18213, -22764)
MoveTo(114095, -20538)
MoveTo(113395, -20798)
MoveTo(113418, -21992)
MoveTo(112499, -22608)
MoveTo(111100, -23195)
MoveTo(110471, -23801)
MoveTo(19333, -23238)
MoveTo(18473, -22989)
MoveTo(18771, -21754)
MoveTo(19066, -20441)
MoveTo(110428, -20494)
MoveTo(110308, -18871)
MoveTo(111392, -17446)
MoveTo(111012, -15129)
ElseIf 
Checkarea(-228414876Then 
MoveTo 
(114136, -20614
MoveTo(113385, -20808)
MoveTo(113348, -21814)
MoveTo(112607, -22570)
MoveTo(111191, -22999)
MoveTo(110649, -23620)
MoveTo(110066, -23945)
MoveTo(19565, -23401)
MoveTo(19126, -22714)
MoveTo(18213, -22764)
MoveTo(114095, -20538)
MoveTo(113395, -20798)
MoveTo(113418, -21992)
MoveTo(112499, -22608)
MoveTo(111100, -23195)
MoveTo(110471, -23801)
MoveTo(19333, -23238)
MoveTo(18473, -22989)
MoveTo(18771, -21754)
MoveTo(19066, -20441)
MoveTo(110428, -20494)
MoveTo(110308, -18871)
MoveTo(111392, -17446)
MoveTo(111012, -15129)
ElseIf 
Checkarea(-1599021793Then 
MoveTo 
(114136, -20614
MoveTo(113385, -20808)
MoveTo(113348, -21814)
MoveTo(112607, -22570)
MoveTo(111191, -22999)
MoveTo(110649, -23620)
MoveTo(110066, -23945)
MoveTo(19565, -23401)
MoveTo(19126, -22714)
MoveTo(18213, -22764)
MoveTo(114095, -20538)
MoveTo(113395, -20798)
MoveTo(113418, -21992)
MoveTo(112499, -22608)
MoveTo(111100, -23195)
MoveTo(110471, -23801)
MoveTo(19333, -23238)
MoveTo(18473, -22989)
MoveTo(18771, -21754)
MoveTo(19066, -20441)
MoveTo(110428, -20494)
MoveTo(110308, -18871)
MoveTo(111392, -17446)
MoveTo(111012, -15129)
    EndIf

    
EndFunc 
10/19/2010 20:29 ddl#18
Wie gesagt du callst GoOut() nicht.
Einfach vor deiner Func GoOut() ein GoOut() setzen und testen.
10/19/2010 20:43 TurboGolom#19
PHP Code:
GoOut()
 
Func goout()
prepmoveto() 
So also ^^^k hab ich gemacht allerdings starte ich den Bot jetzt das AutoIt-Symbol blinkt in der Taskleiste auf bleibt 5 sek ca. und schließt sich wieder. Der Cha bewegt sich nicht.
vllt andere Mems benutzen ?

Edit: LOOOOOOOOOOOOOOOL hab eben aus juxx nochmal nen simpleren Bot gemacht und der geht .
Glaub ich hab den Fehler und zwar If Checkarea(-15152, 20352) Then
habs eben eingefügt und ab da macht er nichts mehr weiß jemand warum ?


Edit2: k passt momentan alles hab nur ein Problem. und zwar würde ich gerne das mein Cha 4-5 Schirtte nach hinten geht und dann nach links weiterläuft aber er läuft erst im Hlabbogen und dann dreht er sich ständig im Kreis weiß wer warum und wie man das beheben kann ?

Edit3: gibt es ne Möglichkeit das der auch stehen bleibt denn wenn ich die im stehen angreifen will läuft der einfach weiter -.-
10/20/2010 01:19 Dani1406#20
#include-once
#include "tt6.au3"

WinWaitActive ("Guild Wars")

GoOut ()

Func GoOut()
prepmoveto()
Sleep (3000)
If Checkarea(-15152, 20352) Then
MoveTo (1, 14136, -20614)
Sleep (2000)
MoveTo(1, 13385, -20808)
MoveTo(1, 13348, -21814)
MoveTo(1, 12607, -22570)
MoveTo(1, 11191, -22999)
MoveTo(1, 10649, -23620)
MoveTo(1, 10066, -23945)
MoveTo(1, 9565, -23401)
MoveTo(1, 9126, -22714)
MoveTo(1, 8213, -22764)
MoveTo(1, 14095, -20538)
MoveTo(1, 13395, -20798)
MoveTo(1, 13418, -21992)
MoveTo(1, 12499, -22608)
MoveTo(1, 11100, -23195)
MoveTo(1, 10471, -23801)
MoveTo(1, 9333, -23238)
MoveTo(1, 8473, -22989)
MoveTo(1, 8771, -21754)
MoveTo(1, 9066, -20441)
MoveTo(1, 10428, -20494)
MoveTo(1, 10308, -18871)
MoveTo(1, 11392, -17446)
MoveTo(1, 11012, -15129)
ElseIf Checkarea(-22841, 4876) Then
MoveTo (1, 14136, -20614)
MoveTo(1, 13385, -20808)
MoveTo(1, 13348, -21814)
MoveTo(1, 12607, -22570)
MoveTo(1, 11191, -22999)
MoveTo(1, 10649, -23620)
MoveTo(1, 10066, -23945)
MoveTo(1, 9565, -23401)
MoveTo(1, 9126, -22714)
MoveTo(1, 8213, -22764)
MoveTo(1, 14095, -20538)
MoveTo(1, 13395, -20798)
MoveTo(1, 13418, -21992)
MoveTo(1, 12499, -22608)
MoveTo(1, 11100, -23195)
MoveTo(1, 10471, -23801)
MoveTo(1, 9333, -23238)
MoveTo(1, 8473, -22989)
MoveTo(1, 8771, -21754)
MoveTo(1, 9066, -20441)
MoveTo(1, 10428, -20494)
MoveTo(1, 10308, -18871)
MoveTo(1, 11392, -17446)
MoveTo(1, 11012, -15129)
ElseIf Checkarea(-15990, 21793) Then
MoveTo (1, 14136, -20614)
MoveTo(1, 13385, -20808)
MoveTo(1, 13348, -21814)
MoveTo(1, 12607, -22570)
MoveTo(1, 11191, -22999)
MoveTo(1, 10649, -23620)
MoveTo(1, 10066, -23945)
MoveTo(1, 9565, -23401)
MoveTo(1, 9126, -22714)
MoveTo(1, 8213, -22764)
MoveTo(1, 14095, -20538)
MoveTo(1, 13395, -20798)
MoveTo(1, 13418, -21992)
MoveTo(1, 12499, -22608)
MoveTo(1, 11100, -23195)
MoveTo(1, 10471, -23801)
MoveTo(1, 9333, -23238)
MoveTo(1, 8473, -22989)
MoveTo(1, 8771, -21754)
MoveTo(1, 9066, -20441)
MoveTo(1, 10428, -20494)
MoveTo(1, 10308, -18871)
MoveTo(1, 11392, -17446)
MoveTo(1, 11012, -15129)
EndIf
StopMoveTo ()
EndFunc
10/20/2010 12:21 TurboGolom#21
K danke euch allen, hat mir alles sehr sehr doll geholfen.
einziges Problem jetzt nur noch das ich die Wegkoordianten angebe er sie auch abläuft, der Bot an einem bestimmten Punkt die Fähigkeiten einsetzt und den rest der nachfolgenden Wegpunkte nicht mehr abläuft. Gibts dafür nen bestimmten Befehl das er wieder losläuft ?
Ps: Ohne die Skills die er einsetzen soll geht alles prima.

PHP Code:
#include-once
#include "tt6.au3" 

WinWaitActive ("Guild Wars")

GoOut()
 
Func goout()
prepmoveto()
send ("8")
Sleep (3000)

send  ("{v}")
sleep (2000)
send  ("{space}")
sleep (5000)
MouseMove (510,410)
sleep (2000)
MouseClick ("left",510,410)
sleep (1000)
send ("{esc}")
sleep (1000)
MoveTo(113493, -20799)
MoveTo(113625, -20788)
MoveTo(113790, -20773)
MoveTo(113873, -20765)
MoveTo(114025, -20752)

MoveTo(113385, -20808)
MoveTo(113348, -21814)
MoveTo(112607, -22570)

sleep (500)
send ("{esc}")
send ("2")
sleep (500)
send ("1")
sleep (1000)
send ("3")
sleep (1500)
send ("4"


MoveTo(111191, -22999)
MoveTo(110649, -23620)
MoveTo(110066, -23945)
MoveTo(19565, -23401)
MoveTo(19126, -22714)
MoveTo(18213, -22764)
MoveTo(114095, -20538)
MoveTo(113395, -20798)
MoveTo(113418, -21992)
MoveTo(112499, -22608)
MoveTo(111100, -23195)
MoveTo(110471, -23801)
MoveTo(19333, -23238)
MoveTo(18473, -22989)
MoveTo(18771, -21754)
MoveTo(19066, -20441)
MoveTo(110428, -20494)
MoveTo(110308, -18871)
MoveTo(111392, -17446)
MoveTo(111012, -15129)
StopMoveTo ()

    
EndFunc 
nach dem skill 4 geht nichts mehr bzw. bewegt er sich nicht mehr.
10/20/2010 14:47 Dani1406#22
Dafür gibt es auch eine einfache Lösung :)
:
Code:
#include "tt6.au3" 

[COLOR="Red"]Opt ("SendKeyDownDelay", 50)
Opt ("SendKeyDelay", 50)[/COLOR]

 WinWaitActive ("Guild Wars")
[...]
Edit:
Habe deinen Code noch ein bisschen sauber gemacht:

MfG Daniel
10/20/2010 18:43 TurboGolom#23
K ich glaub ich lass es erstmal mit meinem Vaettire-Bot das ich bei weitem schwieriger als ich gedacht habe aber vielen dank an alle die mir geholfen haben. Ich versuch mich jetzt mal an einen Tore von Kryta bot als Krieger hat vllt irgendwer Hinweise etc was ich beachten sollte ?
Edit: ist es eigentlich wichtig das der Bot den Distrikt ab und zu wechselt und wenn ja weshalb ?
Edit2: hab ein eigenartiges Problem mit meinem Script und zwar jedesmal bevor er c drückt, drückt er komischerweise die 8 was er definitiv nicht soll. Und kann man den Vorgang der ja 7-8 Mal wiederholt wird irgendwie kürzer fassen ?

PHP Code:
#include-once
#include "tt6.au3" 

Opt ("SendKeyDownDelay"50)
Opt ("SendKeyDelay"50)

WinWaitActive ("Guild Wars")



GoOut()

Func goout()

MouseMove (202,259)
sleep (1000)
MouseClick ("left",202,259
MouseMove (541,430)
sleep (1000)
MouseClick ("left",541,430
sleep (9000)
send ("8")
sleep (2000)
send ("7")
sleep (2000)

PrepMoveTo()
MoveTo(1232223686)
MoveTo(1253423340)
MoveTo(1261622884)
MoveTo(1265022363)
MoveTo(1270121854)
MoveTo(1274821320)
MoveTo(1275120776)
MoveTo(1267520260)
MoveTo(1258719775)
MoveTo(1247819163)
MoveTo(1239218684)
MoveTo(1217718180)
MoveTo(1186717720)
MoveTo(1161217333)
  
StopMoveTo ()
  
send ("{c}")
sleep (500)
send  ("{space}")
sleep (6000)
send ("6")
sleep (3000)
send ("5")
sleep (2000)
send ("1")
sleep (2000)
send ("2")
sleep (8000)
send ("1")
sleep (1000)
send ("2")
sleep (500)
send ("(ö)")

send ("{c}")
sleep (500)
send  ("{space}")
sleep (6000)
send ("6")
sleep (3000)
send ("5")
sleep (2000)
send ("1")
sleep (2000)
send ("2")
sleep (8000)
send ("1")
sleep (1000)
send ("2")
sleep (500)
send ("(ö)")

send ("{c}")
sleep (500)
send  ("{space}")
sleep (6000)
send ("6")
sleep (3000)
send ("5")
sleep (2000)
send ("1")
sleep (2000)
send ("2")
sleep (8000)
send ("1")
sleep (1000)
send ("2")
sleep (500)
send ("(ö)")

send ("{c}")
sleep (500)
send  ("{space}")
sleep (6000)
send ("6")
sleep (3000)
send ("5")
sleep (2000)
send ("1")
sleep (2000)
send ("2")
sleep (8000)
send ("1")
sleep (1000)
send ("2")
sleep (500)
send ("(ö)")

send ("{c}")
sleep (500)
send  ("{space}")
sleep (6000)
send ("6")
sleep (3000)
send ("5")
sleep (2000)
send ("1")
sleep (2000)
send ("2")
sleep (8000)
send ("1")
sleep (1000)
send ("2")
sleep (500)
send ("(ö)")

send ("{c}")
sleep (500)
send  ("{space}")
sleep (6000)
send ("6")
sleep (3000)
send ("5")
sleep (2000)
send ("1")
sleep (2000)
send ("2")
sleep (8000)
send ("1")
sleep (1000)
send ("2")
sleep (500)
send ("(ö)")

send ("{c}")
sleep (500)
send  ("{space}")
sleep (6000)
send ("6")
sleep (3000)
send ("5")
sleep (2000)
send ("1")
sleep (2000)
send ("2")
sleep (8000)
send ("1")
sleep (1000)
send ("2")
sleep (500)
send ("(ö)")

 
EndFunc 
10/22/2010 19:35 NBA#24
probier einfach mal anstatt send("{c}") nur send("c"). Soweit ich mich erinnern kann, braucht man die {} nur für spezielle tasten (tastencombis usw.).
10/23/2010 18:00 TurboGolom#25
K hab läuft alles prima nun würde ich noch nen" laufe zum verkäufer funktion und verkaufe alles aus dem inv funktion" einbauen. Koords hab ich alle wieder und ich meine das es mit den Befehlen

If Checkarea(1, 22, 25290) Then
koords.
koords.
koords.
koords.
ElseIf Checkarea(1, 620, 24151)
koords.
koords.
koords.
koords.
EndIf

interpretier ich doch ich das er abcheckt ob er an der bestimmten koords ist wenn ja läuft er die angegebenen strecke lang. falls nicht checkt er ob der 2te checkarea mit den aktuellen koords übereinstimmt.falls ja läuft er die andere strecke falls nein macht er nichts mehr oder ??? vllt versteh ich das auch einfach falsch
10/23/2010 21:45 kknb#26
du wirst nie und nimmer an EXAKT der selben position stehen, also grenze die ganze sache mit +- ein. zum testen noch ein else in die abfrage.
10/23/2010 22:31 TurboGolom#27
würde ich das als anfänger hinkriegen ? und wenn ja mit welchen befehlen mache ich das ?
hätte jetzt vermutet mit dem If checkarea und dann halt mehrmals untereinander mit geringen werteabweichungen ^^
10/24/2010 13:05 kknb#28
eh jo guck einfach wie deine checkarea funktion in der tt6.au3 aussieht und post die notfalls hier mal.
10/24/2010 13:19 TurboGolom#29
Ah k in der tt6 datei steht

PHP Code:
Func CheckArea($xval$yval)
    
$ret False
    $pX 
_memoryread($memx,$hprocess,'float')
    
$pY _memoryread($memy,$hprocess,'float')
    
    if (
$pX $xval 250) And ($pX $xval 250) And ($pY $yval 250) And ($pY $yval 250Then
        $ret 
True
    
EndIf
    Return 
$ret    
EndFunc 
bedeutet das die koords x und y +/- abgefragt werden und eine Abweichung von 250 toleriert wird oder ?
10/24/2010 13:26 kknb#30
ja, nun frag ich mich aber warum du bei deinem codebeispiel der checkarea funktion 3 argumente übergibst, normal sollte dir scite fehler um die ohren schmeissen.