Im Zuge des etwas nervigen Battlenet Schluckauf`s mal ein kleines AutoIt Script was euren PC den Login automatisch erledigen lässt. So kann man das Script unbeaufsichtigt den Login vollziehen lassen während man z.B. die Chance nutzt die Wohnung etwas aufzuräumen ;) Benötigt wird dazu AutoIt, was als Windows Tool einfach installiert werden kann. Danach können die angelegten .au3 Script Files gestartet werden. Das Script einfach per Copy & Paste in eine neue datei z.B. diablo.au3 speichern und ausführen. Sobald das Diablo III Fenster aktiv ist kann man mit den Tasten PGUP (Page Up, Bild Hoch) und PGDWN (Page Down, Bild runter) den Autologon aktivieren. Ist er aktiviert wird er den Login in einer schleife solange versuchen bis man PGDN drückt. Bitte noch daran denken in Zeile #1 euer Password einzugeben.
; Diablo 3 Autologin Script by www.solariz.De
; Enhanced Version 2.0 not using ENTER instead clicking the button
; because enter can cause posting your password into chat after login !
; So please do not use any simple ENTER Scripts.
;
; http://solariz.de/de/diablo_3_autologin_script.htm
; *** ENTER YOUR PASSWORD:
$password = "enter-your-password"
$WaitDuration = 6 ; Wait X Seconds after each try,
; do not put this to low because it can cancel a actual
; working login so be careful and do not go belog 5 Seconds!
;***** No need to change anything below this
MsgBox(1, "Diablo 3 Autologin", "Read www.solariz.de for more information Start D3 leave it fullscreen and press PAGE UP to start the Auto Process. If you want to end it just press PAGE DOWN.", 10)
Global $pwd_x = 0;
Global $pwd_y = 0;
Global $btn_x = 0;
Global $btn_y = 0;
Global $procName = "Diablo III"
HotKeySet("{PGDN}", "Stop") ;script can be stopped by pressing PG Down
HotKeySet("{PGUP}", "Try") ;script can be started by pressing PG Up
Opt("SendKeyDelay",Random(80,250));
$go = True
$try = False
$sleepDuration = 500
While $go
if($try) Then
if( WinActive($procName) ) Then
$state = WinGetState($procName, "")
; Is the "minimized" value set?
If BitAND($state, 16) Then
;MsgBox(0, "Example", "Window is minimized")
WinSetState($procName,"", @SW_SHOW)
WinActivate($procName)
sleep($sleepDuration)
EndIf
WinWaitActive($procName)
Local $size = WinGetPos($procName)
sleep($sleepDuration)
if($size[2] == 1920 AND $size[3] == 1080) Then
; Resolution 1920 x 1080
$pwd_x = 923;
$pwd_y = 706;
$btn_x = 950;
$btn_y = 852;
ElseIf($size[2] == 1600 AND $size[3] == 1200) Then
; Resolution 1600 x 1200
$pwd_x = 738;
$pwd_y = 780;
$btn_x = 740;
$btn_y = 948;
ElseIf($size[2] == 1600 AND $size[3] == 900) Then
; Resolution 1600 x 900
$pwd_x = 740;
$pwd_y = 493;
$btn_x = 748;
$btn_y = 707;
ElseIf($size[2] == 1440 AND $size[3] == 900) Then
; Resolution 1440 x 900
$pwd_x = 682;
$pwd_y = 588;
$btn_x = 708;
$btn_y = 712;
ElseIf($size[2] == 1366 AND $size[3] == 768) Then
; Resolution 1366 x 768
$pwd_x = 657;
$pwd_y = 499;
$btn_x = 677;
$btn_y = 606;
ElseIf($size[2] == 1280 AND $size[3] == 1024) Then
; Resolution 1280 x 1024
$pwd_x = 635;
$pwd_y = 666;
$btn_x = 632;
$btn_y = 808;
ElseIf($size[2] == 1280 AND $size[3] == 768) Then
; Resolution 1280 x 768
$pwd_x = 640;
$pwd_y = 504;
$btn_x = 627;
$btn_y = 605;
EndIf
; Resolution part over, now doing the login:
if($pwd_x > 0 AND $pwd_y > 0 AND $btn_x > 0 AND $btn_y > 0) Then
MouseMove( Random($pwd_x-10,$pwd_x+10,1),Random($pwd_y-5,$pwd_y+5,1), Random(1,30));
MouseClick("left");
Sleep($sleepDuration)
Send ($password)
MouseMove( Random($btn_x-10,$btn_x+10,1),Random($btn_y-5,$btn_y+5,1), Random(1,30));
MouseClick("left");
Sleep($WaitDuration*1000)
MouseMove( $pwd_x,$pwd_y-($size[3]/100*6.5), Random(10,30));
MouseClick("left");
Sleep($sleepDuration)
Else
MsgBox(0, "Error","Your Screen Resolution seems not supported.");
Exit
EndIf
EndIf
EndIf
WEnd
Func Stop() ;to allow the script to stop
MsgBox(1, "Diablo 3 Autologin", "I`m out - have fun in D3")
Exit
EndFunc
Func Try()
$try = True
EndFunc