Idee -> GB /roll Bot (sinnvoll?)

01/20/2009 21:47 RobRockt#1
Hey!
Am kommenden WE ist ja das doppelte HB-Event!
So jetzt hab ich mal ne Frage, und zwar wäre es möglich einen Bot zu machen der bei den Heldenarenen startet und dann immer bewertender Kampf drückt und auf Gegner wartet.
Da ja an diesem Event zu 90% die Punkte mit /roll geholt werden (wer die kleinere Zahlt hat leavt) könnte man dann im allgemeinen Chat /roll von dem Bot schreiben lassen.
So jetzt zum spannenden Teil: Der Bot sollte so nach 20-25 Sekunden dann leaven und wieder von vorne starten, in der Hoffnung, dass der Bot höher "gerollt" hat als der Gegner und man 1 bzw am WE 2 Punkte auf den Kommandeurstitel bekommen hat =]
So könnte man über Nacht ziemlich viele Punkte holen!
01/20/2009 22:08 kknb#2
ja und mach doch sowas, sind doch nur paar zeilen.
01/20/2009 22:15 RobRockt#3
Quote:
Originally Posted by kknb View Post
ja und mach doch sowas, sind doch nur paar zeilen.
Leider hab ich davon 0 Plan :(
Und das noch zu lernen bis zum WE wird hart wegen Schule usw :(
Bzw wenn ich vll Ansätze habe könnte ichs versuchen :x
01/20/2009 22:18 kknb#4
naja wenn ich ahnung von heldenkämpfe hätte würde ichs machen o_O

ah habs schon geschnallt.

noch ne frage zu dem roll, wer hat denn soeine dumme regel da eingeführt?
bzw wo ist da der sinn?
01/20/2009 22:19 Hokler#5
Da brauchst du eigentlich nich viel lernen wen ich das jetzt richtig verstanden haben bracuh man dan nur folgende befehle:

MouseClick,
Send und
Sleep
01/20/2009 22:25 kknb#6
hab das eben mal mitn roll probiert, wird irgendwie nichts angezeigt im kampf^^
01/20/2009 22:51 Specter cason#7
da gibt jeder spieler /roll ein und wer die niedrigere Zahl gerollt hat leavt und der gegner bkeommt die 2punkte also eig nicht vile zu tun
01/20/2009 22:52 kknb#8
welche zahl wird in der herobattleszene gerolled^^?
01/20/2009 22:54 darthwitch#9
musst /roll 100 machen^^
01/20/2009 22:59 RobRockt#10
Quote:
Originally Posted by kknb View Post
welche zahl wird in der herobattleszene gerolled^^
Musst bei "Emotionen" ein Häkchen setzten im Chatfenster!
Dann gibst du /roll 100 dann steht da:
Blablabla würfelte XXX mit einem 100-seitigen Würfel.

Also nochmal die Schritte, die der Bot befolgen muss:

- auf "Heldenkampf" klicken
- auf "Bewertete automatische Gegnersuche" klicken
- auf "Beitreten" klicken
- warten bis man gegeneinander antritt
(paar Sekunden warten)
- "/roll 100" in allgemeinen Chat schreiben
- nach 20-30 Sekunden leaven bzw zurückreisen
01/20/2009 23:15 kknb#11
kk ich mach son ding morgen.
01/20/2009 23:23 RobRockt#12
Quote:
Originally Posted by kknb View Post
kk ich mach son ding morgen.
Super! Echt geil von dir!
01/21/2009 00:48 Painful Pete#13
Hier hab ich mal ganz ganz schnell was zusammen getippst:
Simpler gehts nicht, aber sollte seinen Zweck erfüllen... hats zumindest grad bei mir :D

PHP Code:
HotKeySet("{END}","_exitit")
HotKeySet("{PAUSE}", "_TogglePause")
Global 
$Paused
Global $mousespeed = 3


Func _exitit
()
exit 
0
EndFunc

Func _TogglePause
()
    
$Paused = NOT $Paused
    
While $Paused
        sleep
(100)
        
ToolTip('Script is "Paused"',0,0)
    
WEnd
    ToolTip
("Script is running")
        If 
Not WinActivate("Guild Wars") Then
            WinActivate
("Guild Wars")
        EndIf
        
Sleep(1000)
    
EndFunc
    
Global $client= "Guild Wars"
$i= 0

sleep
(Random(600,700))
WinActivate( "Guild Wars" )
Sleep(Random(2000,2200))

While 
1
    Opt
("Sendkeydelay", 25)
    
Opt("Sendkeydowndelay", 100)
    
ControlClick($client,"","","left", 1, 1144, 165)  ; Heldenkampf betreten
    sleep
(300)
    
ControlClick($client,"","","left", 1, 1060, 465) ; bewerteter Kampf beitreten
    sleep
(4000)
    
_checkloadscreen()
    
sleep(3000)
    
ControlSend($client,"","","{enter}")
    
sleep(300)
    
ControlSend($client,"","","roll?") ; oder was auch immer ihr fragen wollt bevor ihr loswürfelt
    sleep
(100)
    
ControlSend($client,"","","{enter}")
    
sleep(Random(2000,2300))
    
ControlSend($client,"","","-roll 100")
    
sleep(300)
    
ControlSend($client,"","","{enter}")
    
sleep(Random(26000,27000)) ; <------ Zeit die er wartet bis er aufgibt!
    
ControlSend($client,"","","-resign")
    
sleep(300)
    
ControlSend($client,"","","{enter}")
    
sleep(2000)
    
_checkloadscreen()
    
sleep(2000)
WEnd
    
    
    
Func _checkloadscreen
()
    
    
$stopper=0
    
While PixelGetColor(8, 40) <> 0x000000  ; Ein schwarzes Pixel beim Ladebildschirm oben
        ToolTip
("noch nicht im Ladebildschirm", 50,50)
        
sleep(1000)
    
Wend
    
    
    $stopper
=0
While    PixelGetColor(8, 40)= 0x000000   ; Ein schwarzes Pixel beim Ladebildschirm oben
    Sleep
(100)
    
ToolTip("immer noch nicht fertig -.-", 50,50)
WEnd
tooltip
("")
sleep(2000)

EndFunc 
Koordinaten müssten noch angepasst werden bei den Controlclicks.

Viel spaß damit und lustiges Punktesammeln :bandit:
01/21/2009 06:59 Azunai#14
Code:
- auf "Bewertete automatische Gegnersuche" klicken
^^
01/21/2009 12:01 Read Me#15
Quote:
Originally Posted by Painful Pete View Post
Hier hab ich mal ganz ganz schnell was zusammen getippst:
Simpler gehts nicht, aber sollte seinen Zweck erfüllen... hats zumindest grad bei mir :D

PHP Code:
HotKeySet("{END}","_exitit")
HotKeySet("{PAUSE}", "_TogglePause")
Global 
$Paused
Global $mousespeed = 3


Func _exitit
()
exit 
0
EndFunc

Func _TogglePause
()
    
$Paused = NOT $Paused
    
While $Paused
        sleep
(100)
        
ToolTip('Script is "Paused"',0,0)
    
WEnd
    ToolTip
("Script is running")
        If 
Not WinActivate("Guild Wars") Then
            WinActivate
("Guild Wars")
        EndIf
        
Sleep(1000)
    
EndFunc
    
Global $client= "Guild Wars"
$i= 0

sleep
(Random(600,700))
WinActivate( "Guild Wars" )
Sleep(Random(2000,2200))

While 
1
    Opt
("Sendkeydelay", 25)
    
Opt("Sendkeydowndelay", 100)
    
ControlClick($client,"","","left", 1, 1144, 165)  ; Heldenkampf betreten
    sleep
(300)
    
ControlClick($client,"","","left", 1, 1060, 465) ; unbewerteter Kapf beitreten
    sleep
(4000)
    
_checkloadscreen()
    
sleep(3000)
    
ControlSend($client,"","","{enter}")
    
sleep(300)
    
ControlSend($client,"","","roll?") ; oder was auch immer ihr fragen wollt bevor ihr loswürfelt
    sleep
(100)
    
ControlSend($client,"","","{enter}")
    
sleep(Random(2000,2300))
    
ControlSend($client,"","","-roll 100")
    
sleep(300)
    
ControlSend($client,"","","{enter}")
    
sleep(Random(26000,27000)) ; <------ Zeit die er wartet bis er aufgibt!
    
ControlSend($client,"","","-resign")
    
sleep(300)
    
ControlSend($client,"","","{enter}")
    
sleep(2000)
    
_checkloadscreen()
    
sleep(2000)
WEnd
    
    
    
Func _checkloadscreen
()
    
    
$stopper=0
    
While PixelGetColor(8, 40) <> 0x000000  ; Ein schwarzes Pixel beim Ladebildschirm oben
        ToolTip
("noch nicht im Ladebildschirm", 50,50)
        
sleep(1000)
    
Wend
    
    
    $stopper
=0
While    PixelGetColor(8, 40)= 0x000000   ; Ein schwarzes Pixel beim Ladebildschirm oben
    Sleep
(100)
    
ToolTip("immer noch nicht fertig -.-", 50,50)
WEnd
tooltip
("")
sleep(2000)

EndFunc 
Koordinaten müssten noch angepasst werden bei den Controlclicks.

Viel spaß damit und lustiges Punktesammeln :bandit:
1. automatische bewertete Gegnersuche
2. "-roll 100"+Enter ODER Enter+"roll 100"+Enter
^^