Trove Multi-Account-Login 1.41 [Small Fix + Changes]
This uses an auto-Trove window resizer to fill the screen (above the taskbar) for each setting (1-12 accounts at a time). You will have to wait for all Trove windows to be resized before pressing any keys or errors may occur.
Warning: If you continue using wrong passwords and try to login your IP may be blocked, to fix this you can contact support. Make sure your emails and passwords are right! If the AHK script seems to type them wrong, increase the delays.
I advise you to use a password for these accounts that you use for NOTHING else as they are stored in an insecure text file, just make sure that the passwords don't contain a %.
To run this script you need AutoHotkey: https://autohotkey.com/
- Only Tested on Windows 10 with Steam Version of Trove
How-To-Use!
1. Create an AHK file and paste the code in.
2. Run the AHK file to save emails and passwords to a text file
3. Re-run the AHK file when the Glyph menu is active (may need to run as admin), any account logged into the launcher will be logged out
4. Wait, Trove will open as the last saved resolution.
Names of important variables:
Current Issues:
ChangeLog:
----------------------------------------------------------------------------------------------------------
OLD VERSIONS:
(For archiving and learning)
V1.0
v1.1
V1.2
V1.3
----------------------------------------------------------------------------------------------------------
TEST FILES:
(For archiving and learning)
Get current active window and place it at coords x,y and width, height.
Taking strings from file in an ordered layout to append into variable:
Co-ordinates for 12-1 windows of trove to fill the screen:
Warning: If you continue using wrong passwords and try to login your IP may be blocked, to fix this you can contact support. Make sure your emails and passwords are right! If the AHK script seems to type them wrong, increase the delays.
I advise you to use a password for these accounts that you use for NOTHING else as they are stored in an insecure text file, just make sure that the passwords don't contain a %.
V1.41
Code:
/*
Comment section:
- Made by BLURREDDOGE(https://www.mpgh.net/forum/member.php?u=2877154) at https://www.mpgh.net!
Copyright 2018, Luke Roper, All rights reserved.
- https://www.gov.uk/copyright
*/
; Global vars for user optimization
Global normal_sleep
normal_sleep := 100
Global delay_time_in_ms
delay_time_in_ms := 10
Global wait_for_login
wait_for_login := 1700
Global wait_for_trove_to_open
wait_for_trove_to_open := 5000
if FileExist("database.txt")
{
Array := []
breakline = `n
Loop, Read, database.txt
{
Array.Push(A_LoopReadLine)
}
for index, element in Array
{
oof := Mod(index, 2)
if oof = 0
{
Passwords := element . breakline
if index = 2
{
Global Password_One
Password_One := element
}
if index = 4
{
Global Password_Two
Password_Two := element
}
if index = 6
{
Global Password_Three
Password_Three := element
}
if index = 8
{
Global Password_Four
Password_Four := element
}
if index = 10
{
Global Password_Five
Password_Five := element
}
if index = 12
{
Global Password_Six
Password_Six := element
}
if index = 14
{
Global Password_Seven
Password_Seven := element
}
if index = 16
{
Global Password_Eight
Password_Eight := element
}
if index = 18
{
Global Password_Nine
Password_Nine := element
}
if index = 20
{
Global Password_Ten
Password_Ten := element
}
if index = 22
{
Global Password_Eleven
Password_Eleven := element
}
if index = 24
{
Global Password_Twelve
Password_Twelve := element
}
}
else
{
Emails := element . breakline
if index = 1
{
Global Email_One
Email_One := element
}
if index = 3
{
Global Email_Two
Email_Two := element
}
if index = 5
{
Global Email_Three
Email_Three := element
}
if index = 7
{
Global Email_Four
Email_Four := element
}
if index = 9
{
Global Email_Five
Email_Five := element
}
if index = 11
{
Global Email_Six
Email_Six := element
}
if index = 13
{
Global Email_Seven
Email_Seven := element
}
if index = 15
{
Global Email_Eight
Email_Eight := element
}
if index = 17
{
Global Email_Nine
Email_Nine := element
}
if index = 19
{
Global Email_Ten
Email_Ten := element
}
if index = 21
{
Global Email_Eleven
Email_Eleven := element
}
if index = 23
{
Global Email_Twelve
Email_Twelve := element
}
}
}
SetTitleMatchMode, 2
SetControlDelay -1
SetKeyDelay, %delay_time_in_ms%, 5
MsgBox,
(
Emails entered:
1: %Email_One%
2: %Email_Two%
3: %Email_Three%
4: %Email_Four%
5: %Email_Five%
6: %Email_Six%
7: %Email_Seven%
8: %Email_Eight%
9: %Email_Nine%
10: %Email_Ten%
11: %Email_Eleven%
12: %Email_Twelve%
)
window_setup() ;the logging in part
ExitApp
}
IfNotExist, database.txt
{
Gui, New,, GUI
Gui, Color, A9A9A9 ;hex for dark grey
;Gui Group 1
Gui, Add, groupbox, x10 y5 w180 h105
Gui, Add, Text, x15 y15, Email 1:
Gui, Add, Edit, w170 vEmail_One
Gui, Add, Text, x15 y65, Password 1:
Gui, Add, Edit, w170 Password vPassword_One
;Gui Group 7
Gui, Add, groupbox, x200 y5 w180 h105
Gui, Add, Text, x205 y15, Email 7:
Gui, Add, Edit, w170 vEmail_Seven
Gui, Add, Text, x205 y65, Password 7:
Gui, Add, Edit, w170 Password vPassword_Seven
;Gui Group 2
Gui,add, groupbox, x10 y110 w180 h105
Gui, Add, Text, x15 y120, Email 2:
Gui, Add, Edit, w170 vEmail_Two
Gui, Add, Text, x15 y170, Password 2:
Gui, Add, Edit, w170 Password vPassword_Two
;Gui Group 8
Gui, Add, groupbox, x200 y110 w180 h105
Gui, Add, Text, x205 y120, Email 8:
Gui, Add, Edit, w170 vEmail_Eight
Gui, Add, Text, x205 y170, Password 8:
Gui, Add, Edit, w170 Password vPassword_Eight
;Gui Group 3
Gui,add, groupbox, x10 y215 w180 h105
Gui, Add, Text, x15 y225, Email 3:
Gui, Add, Edit, w170 vEmail_Three
Gui, Add, Text, x15 y275, Password 3:
Gui, Add, Edit, w170 Password vPassword_Three
;Gui Group 9
Gui, Add, groupbox, x200 y215 w180 h105
Gui, Add, Text, x205 y225, Email 9:
Gui, Add, Edit, w170 vEmail_Nine
Gui, Add, Text, x205 y275, Password 9:
Gui, Add, Edit, w170 Password vPassword_Nine
;Gui Group 4
Gui,add, groupbox, x10 y320 w180 h105
Gui, Add, Text, x15 y330, Email 4:
Gui, Add, Edit, w170 vEmail_Four
Gui, Add, Text, x15 y380, Password 4:
Gui, Add, Edit, w170 Password vPassword_Four
;Gui Group 10
Gui, Add, groupbox, x200 y320 w180 h105
Gui, Add, Text, x205 y330, Email 10:
Gui, Add, Edit, w170 vEmail_Ten
Gui, Add, Text, x205 y380, Password 10:
Gui, Add, Edit, w170 Password vPassword_Ten
;Gui Group 5
Gui,add, groupbox, x10 y425 w180 h105
Gui, Add, Text, x15 y435, Email 5:
Gui, Add, Edit, w170 vEmail_Five
Gui, Add, Text, x15 y485, Password 5:
Gui, Add, Edit, w170 Password vPassword_Five
;Gui Group 11
Gui, Add, groupbox, x200 y425 w180 h105
Gui, Add, Text, x205 y435, Email 11:
Gui, Add, Edit, w170 vEmail_Eleven
Gui, Add, Text, x205 y485, Password 11:
Gui, Add, Edit, w170 Password vPassword_Eleven
;Gui Group 6
Gui,add, groupbox, x10 y530 w180 h105
Gui, Add, Text, x15 y540, Email 6:
Gui, Add, Edit, w170 vEmail_Six
Gui, Add, Text, x15 y590, Password 6:
Gui, Add, Edit, w170 Password vPassword_Six
;Gui Group 12
Gui, Add, groupbox, x200 y530 w180 h135
Gui, Add, Text, x205 y540, Email 12:
Gui, Add, Edit, w170 vEmail_Twelve
Gui, Add, Text, x205 y590, Password 12:
Gui, Add, Edit, w170 Password vPassword_Twelve
Gui, Add, Button, Default gOK, Save Emails/Passwords to use
Gui, Show, w395 h675
return
OK:
Gui, Submit
Gui, Destroy
MsgBox,
(
First Email: %Email_One%
First Password: %Password_One%
Second Email: %Email_Two%
Second Password: %Password_Two%
Third Email: %Email_Three%
Third Password: %Password_Three%
Fourth Email: %Email_Four%
Fourth Password: %Password_Four%
Fith Email: %Email_Five%
Fith Password: %Password_Five%
Sixth Email: %Email_Six%
Sixth Password: %Password_Six%
Seventh Email: %Email_Seven%
Seventh Password: %Password_Seven%
Eighth Email: %Email_Eight%
Eigth Password: %Password_Eight%
Ninth Email: %Email_Nine%
Ninth Password: %Password_Nine%
Tenth Email: %Email_Ten%
Tenth Password: %Password_Ten%
Eleventh Email: %Email_Eleven%
Eleventh Password: %Password_Eleven%
Twelth Email: %Email_Twelve%
Twelth Password: %Password_Twelve%
)
;Writes emails+ps to file
;#####################################################################
; Writing variables to file
;#####################################################################
If (!Email_One)
ExitApp
FileAppend, %Email_One%`n, database.txt
FileAppend, %Password_One%`n, database.txt
If (!Email_Two)
ExitApp
FileAppend, %Email_Two%`n, database.txt
FileAppend, %Password_Two%`n, database.txt
If (!Email_Three)
ExitApp
FileAppend, %Email_Three%`n, database.txt
FileAppend, %Password_Three%`n, database.txt
If (!Email_Four)
ExitApp
FileAppend, %Email_Four%`n, database.txt
FileAppend, %Password_Four%`n, database.txt
If (!Email_Four)
ExitApp
FileAppend, %Email_Five%`n, database.txt
FileAppend, %Password_Five%`n, database.txt
If (!Email_Six)
ExitApp
FileAppend, %Email_Six%`n, database.txt
FileAppend, %Password_Six%`n, database.txt
If (!Email_Seven)
ExitApp
FileAppend, %Email_Seven%`n, database.txt
FileAppend, %Password_Seven%`n, database.txt
If (!Email_Eight)
ExitApp
FileAppend, %Email_Eight%`n, database.txt
FileAppend, %Password_Eight%`n, database.txt
If (!Email_Nine)
ExitApp
FileAppend, %Email_Nine%`n, database.txt
FileAppend, %Password_Nine%`n, database.txt
If (!Email_Ten)
ExitApp
FileAppend, %Email_Ten%`n, database.txt
FileAppend, %Password_Ten%`n, database.txt
If (!Email_Eleven)
ExitApp
FileAppend, %Email_Eleven%`n, database.txt
FileAppend, %Password_Eleven%`n, database.txt
If (!Email_Twelve)
ExitApp
FileAppend, %Email_Twelve%`n, database.txt
FileAppend, %Password_Twelve%`n, database.txt
ExitApp
}
window_setup()
{
runnum = 1
if Email_Twelve
{
if (runnum = 1)
{
open_login()
login_account(1)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 0, 495, 355 ;1ST LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 2)
{
open_login()
login_account(2)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 473, 0, 495, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 3)
{
open_login()
login_account(3)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 953, 0, 495, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 4)
{
open_login()
login_account(4)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 1433, 0, 495, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 5)
{
open_login()
login_account(5)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 345, 495, 355 ;2ND LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 6)
{
open_login()
login_account(6)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 473, 345, 495, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 7)
{
open_login()
login_account(7)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 953, 345, 495, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 8)
{
open_login()
login_account(8)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 1433, 345, 495, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 9)
{
open_login()
login_account(9)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 690, 495, 355 ;3RD LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 10)
{
open_login()
login_account(10)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 473, 690, 485, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 11)
{
open_login()
login_account(11)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 953, 690, 485, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 12)
{
open_login()
login_account(12)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 1443, 690, 485, 355
runnum += 1
Sleep, %normal_sleep%
}
has_twelve_been_run = 1
}
if Email_Eleven
{
if (!has_twelve_been_run)
{
if (runnum = 1)
{
open_login()
login_account(1)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 0, 495, 355 ;1ST LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 2)
{
open_login()
login_account(2)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 473, 0, 495, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 3)
{
open_login()
login_account(3)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 953, 0, 495, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 4)
{
open_login()
login_account(4)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 1433, 0, 495, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 5)
{
open_login()
login_account(5)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 345, 495, 355 ;2ND LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 6)
{
open_login()
login_account(6)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 473, 345, 495, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 7)
{
open_login()
login_account(7)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 953, 345, 495, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 8)
{
open_login()
login_account(8)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 1433, 345, 495, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 9)
{
open_login()
login_account(9)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 690, 495, 355 ;3RD LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 10)
{
open_login()
login_account(10)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 473, 690, 485, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 11)
{
open_login()
login_account(11)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 944, 690, 983, 355 ;Longer than usual
runnum += 1
Sleep, %normal_sleep%
}
has_eleven_been_run = 1
}
}
if Email_Ten
{
if (!has_eleven_been_run)
{
if (runnum = 1)
{
open_login()
login_account(1)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 0, 495, 355 ;1ST LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 2)
{
open_login()
login_account(2)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 473, 0, 495, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 3)
{
open_login()
login_account(3)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 953, 0, 495, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 4)
{
open_login()
login_account(4)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 1433, 0, 495, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 5)
{
open_login()
login_account(5)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 345, 495, 355 ;2ND LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 6)
{
open_login()
login_account(6)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 473, 345, 495, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 7)
{
open_login()
login_account(7)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 953, 345, 495, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 8)
{
open_login()
login_account(8)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 1433, 345, 495, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 9)
{
open_login()
login_account(9)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 690, 970, 355 ;3RD LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 10)
{
open_login()
login_account(10)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 948, 690, 979, 355 ;Longer than usual
runnum += 1
Sleep, %normal_sleep%
}
has_ten_been_run = 1
}
}
if Email_Nine
{
if (!has_ten_been_run)
{
if (runnum = 1)
{
open_login()
login_account(1)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 0, 655, 355 ;1ST LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 2)
{
open_login()
login_account(2)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 633, 0, 655, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 3)
{
open_login()
login_account(3)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 1273, 0, 655, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 4)
{
open_login()
login_account(4)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 347, 655, 355 ;2ND LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 5)
{
open_login()
login_account(5)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 633, 347, 655, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 6)
{
open_login()
login_account(6)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 1273, 347, 655, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 7)
{
open_login()
login_account(7)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 694, 655, 355 ;3RD LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 8)
{
open_login()
login_account(8)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 633, 694, 655, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 9)
{
open_login()
login_account(9)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 1273, 694, 655, 355
runnum += 1
Sleep, %normal_sleep%
}
has_nine_been_run = 1
}
}
if Email_Eight
{
if (!has_nine_been_run)
{
if (runnum = 1)
{
open_login()
login_account(1)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 0, 500, 540 ;1ST LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 2)
{
open_login()
login_account(2)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 478, 0, 500, 540 ;+489
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 3)
{
open_login()
login_account(3)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 963, 0, 500, 540
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 4)
{
open_login()
login_account(4)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 1448, 0, 500, 540
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 5)
{
open_login()
login_account(5)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 530, 500, 540 ;2ND LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 6)
{
open_login()
login_account(6)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 478, 530, 500, 540 ;+489
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 7)
{
open_login()
login_account(7)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 963, 530, 500, 540
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 8)
{
open_login()
login_account(8)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 1448, 530, 500, 540
runnum += 1
Sleep, %normal_sleep%
}
has_eight_been_run = 1
}
}
if Email_Seven
{
if (!has_eight_been_run)
{
if (runnum = 1)
{
open_login()
login_account(1)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 0, 970, 355 ;1ST LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 2)
{
open_login()
login_account(2)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 948, 0, 979, 355 ;Longer than usual
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 3)
{
open_login()
login_account(3)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 345, 970, 355 ;2ND LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 4)
{
open_login()
login_account(4)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 948, 345, 979, 355
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 5)
{
open_login()
login_account(5)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 692, 655, 357 ;3RD LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 6)
{
open_login()
login_account(6)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 633, 692, 655, 357
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 7)
{
open_login()
login_account(7)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 1273, 692, 655, 357
runnum += 1
Sleep, %normal_sleep%
}
has_seven_been_run = 1
}
}
if Email_Six
{
if (!has_seven_been_run)
{
if (runnum = 1)
{
open_login()
login_account(1)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 0, 970, 355 ;1ST LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 2)
{
open_login()
login_account(2)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 948, 0, 979, 355 ;Longer than usual
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 3)
{
open_login()
login_account(3)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 345, 970, 355 ;2ND LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 4)
{
open_login()
login_account(4)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 948, 345, 979, 355 ;Longer than usual
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 5)
{
open_login()
login_account(5)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 690, 970, 355 ;3RD LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 6)
{
open_login()
login_account(6)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 948, 690, 979, 355 ;Longer than usual
runnum += 1
Sleep, %normal_sleep%
}
has_six_been_run = 1
}
}
if Email_Five
{
if (!has_six_been_run)
{
if (runnum = 1)
{
open_login()
login_account(1)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 0, 970, 355 ;1ST LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 2)
{
open_login()
login_account(2)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 948, 0, 979, 355 ;Longer than usual
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 3)
{
open_login()
login_account(3)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 345, 970, 355 ;2ND LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 4)
{
open_login()
login_account(4)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 948, 345, 979, 355 ;Longer than usual
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 5)
{
open_login()
login_account(5)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 690, 970, 355 ;3RD LINE
runnum += 1
Sleep, %normal_sleep%
}
has_five_been_run = 1
}
}
if Email_Four
{
if (!has_five_been_run)
{
if (runnum = 1)
{
open_login()
login_account(1)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 0, 975, 527 ;1ST LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 2)
{
open_login()
login_account(2)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 953, 0, 975, 527
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 3)
{
open_login()
login_account(3)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 517, 975, 527 ;2ND LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 4)
{
open_login()
login_account(4)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 953, 517, 975, 527
runnum += 1
Sleep, %normal_sleep%
}
has_four_been_run = 1
}
}
if Email_Three
{
if (!has_four_been_run)
{
if (runnum = 1)
{
open_login()
login_account(1)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 0, 975, 527 ;1ST LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 2)
{
open_login()
login_account(2)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 953, 0, 975, 527
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 3)
{
open_login()
login_account(3)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 517, 1935, 527 ;2ND LINE
runnum += 1
Sleep, %normal_sleep%
}
has_three_been_run = 1
}
}
if Email_Two
{
if (!has_three_been_run)
{
if (runnum = 1)
{
open_login()
login_account(1)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 0, 975, 1054 ;1ST LINE
runnum += 1
Sleep, %normal_sleep%
}
if (runnum = 2)
{
open_login()
login_account(2)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, 953, 0, 975, 1054
runnum += 1
Sleep, %normal_sleep%
}
has_two_been_run = 1
}
}
if Email_One
{
if (!has_two_been_run)
{
open_login()
login_account(1)
WinGetActiveTitle, windowTitle
WinMove, %windowTitle%,, -7, 0, 975, 1054 ;1ST LINE
}
}
MsgBox, Finished, will now exit. Thanks for using!
}
;#####################################################################################
open_login()
{
ControlClick, x1065 y20, Glyph ; Login...
Sleep, %normal_sleep%
ControlSend,, {down down}{down up}, Glyph
Sleep, %normal_sleep%
ControlClick, x1065 y20, Glyph ; Login...
Sleep, %normal_sleep%
ControlSend,, {down down}{down up}, Glyph
Sleep, %normal_sleep%
}
login_account(num)
{
if num = 1
{
ControlSend,, %Email_One%, Glyph Login
Sleep, %normal_sleep%
ControlClick, x147 y322, Glyph Login
Sleep, %normal_sleep%
ControlSendRaw,, %Password_One%, Glyph Login
Sleep, %normal_sleep%
ControlSend,, {enter down}{enter up}, Glyph Login ; Returing to Glyph
Sleep, 2500 ; Wait for menu to go away
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
}
if num = 2
{
ControlSend,, %Email_Two%, Glyph Login
Sleep, %normal_sleep%
ControlClick, x147 y322, Glyph Login
Sleep, %normal_sleep%
ControlSendRaw,, %Password_Two%, Glyph Login
Sleep, %normal_sleep%
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
}
if num = 3
{
ControlSend,, %Email_Three%, Glyph Login
Sleep, %normal_sleep%
ControlClick, x147 y322, Glyph Login
Sleep, %normal_sleep%
ControlSendRaw,, %Password_Three%, Glyph Login
Sleep, %normal_sleep%
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
}
if num = 4
{
ControlSend,, %Email_Four%, Glyph Login
Sleep, %normal_sleep%
ControlClick, x147 y322, Glyph Login
Sleep, %normal_sleep%
ControlSendRaw,, %Password_Four%, Glyph Login
Sleep, %normal_sleep%
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
}
if num = 5
{
ControlSend,, %Email_Five%, Glyph Login
Sleep, %normal_sleep%
ControlClick, x147 y322, Glyph Login
Sleep, %normal_sleep%
ControlSendRaw,, %Password_Five%, Glyph Login
Sleep, %normal_sleep%
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
}
if num = 6
{
ControlSend,, %Email_Six%, Glyph Login
Sleep, %normal_sleep%
ControlClick, x147 y322, Glyph Login
Sleep, %normal_sleep%
ControlSendRaw,, %Password_Six%, Glyph Login
Sleep, %normal_sleep%
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
}
if num = 7
{
ControlSend,, %Email_Seven%, Glyph Login
Sleep, %normal_sleep%
ControlClick, x147 y322, Glyph Login
Sleep, %normal_sleep%
ControlSendRaw,, %Password_Seven%, Glyph Login
Sleep, %normal_sleep%
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
}
if num = 8
{
ControlSend,, %Email_Eight%, Glyph Login
Sleep, %normal_sleep%
ControlClick, x147 y322, Glyph Login
Sleep, %normal_sleep%
ControlSendRaw,, %Password_Eight%, Glyph Login
Sleep, %normal_sleep%
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
}
if num = 9
{
ControlSend,, %Email_Nine%, Glyph Login
Sleep, %normal_sleep%
ControlClick, x147 y322, Glyph Login
Sleep, %normal_sleep%
ControlSendRaw,, %Password_Nine%, Glyph Login
Sleep, %normal_sleep%
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
}
if num = 10
{
ControlSend,, %Email_Ten%, Glyph Login
Sleep, %normal_sleep%
ControlClick, x147 y322, Glyph Login
Sleep, %normal_sleep%
ControlSendRaw,, %Password_Ten%, Glyph Login
Sleep, %normal_sleep%
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
}
if num = 11
{
ControlSend,, %Email_Eleven%, Glyph Login
Sleep, %normal_sleep%
ControlClick, x147 y322, Glyph Login
Sleep, %normal_sleep%
ControlSendRaw,, %Password_Eleven%, Glyph Login
Sleep, %normal_sleep%
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
}
if num = 12
{
ControlSend,, %Email_Twelve%, Glyph Login
Sleep, %normal_sleep%
ControlClick, x147 y322, Glyph Login
Sleep, %normal_sleep%
ControlSendRaw,, %Password_Twelve%, Glyph Login
Sleep, %normal_sleep%
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
}
Sleep, 500
}
;#####################################################################################
Esc::ExitApp
- Only Tested on Windows 10 with Steam Version of Trove
How-To-Use!
1. Create an AHK file and paste the code in.
2. Run the AHK file to save emails and passwords to a text file
3. Re-run the AHK file when the Glyph menu is active (may need to run as admin), any account logged into the launcher will be logged out
4. Wait, Trove will open as the last saved resolution.
Names of important variables:
Important vars
- Email_<number 1-12> = Email to save or taken from file on line 1,3,5,7,9,11,13,15,17,19,21 or 23
- Password_<number 1-12> = Password to save or taken from file on line 2,4,6,8,10,12,14,16,18,20,22 or 24
- delay_time_in_ms = Delay in ms between each keypress
- wait_for_login = Time in ms to delay, waiting for login menu to go away
- wait_for_trove_to_open = Time in ms to delay, waiting for trove client to open
- normal_sleep = Time in ms to delay common actions
- breakline = Variable that acts as, `n, used to make a newline.
- runnum = Variable that holds the number of the current account (1-12)
- has_<1-12>_been_run = variable to check if the highest number of email accounts has been detected and already attempted, allows for a "if not exist" on the variable to continue through the statement if returns false.
The Glyph menu is called "Glyph" while the login popup you get is called "Glyph Login"
(Window)Coords:
- To click "Login..." = x1065 y20
- To click the password entry box = x147 y322
- To click play = x430 y530
- Password_<number 1-12> = Password to save or taken from file on line 2,4,6,8,10,12,14,16,18,20,22 or 24
- delay_time_in_ms = Delay in ms between each keypress
- wait_for_login = Time in ms to delay, waiting for login menu to go away
- wait_for_trove_to_open = Time in ms to delay, waiting for trove client to open
- normal_sleep = Time in ms to delay common actions
- breakline = Variable that acts as, `n, used to make a newline.
- runnum = Variable that holds the number of the current account (1-12)
- has_<1-12>_been_run = variable to check if the highest number of email accounts has been detected and already attempted, allows for a "if not exist" on the variable to continue through the statement if returns false.
The Glyph menu is called "Glyph" while the login popup you get is called "Glyph Login"
(Window)Coords:
- To click "Login..." = x1065 y20
- To click the password entry box = x147 y322
- To click play = x430 y530
Current Issues:
Issues
- When user interacts with keys, they will also be input
Experimenting with SendInput to stop this if it's enough of an issue.
- Reply with a description of the issue you are having, I will try to get back to you and fix it.
Experimenting with SendInput to stop this if it's enough of an issue.
- Reply with a description of the issue you are having, I will try to get back to you and fix it.
ChangeLog:
Changes
- Changed message box to show active emails to look better
- Changed "passed login function" to "Finished, will now exit. Thanks for using!"
- Changed many individual sleep commands to use the global variable "normal_sleep"
- Changed the key wait time to use the global variable "delay_time_in_ms" which you can change if you encounter input errors
- Increased the login wait for the first login as on the first login it seemed to take longer sometimes.
- Fixed typo in if "Email_Three{}"
- Changed password ControlSend to ControlSendRaw to allow for #s in passwords
- Changed "passed login function" to "Finished, will now exit. Thanks for using!"
- Changed many individual sleep commands to use the global variable "normal_sleep"
- Changed the key wait time to use the global variable "delay_time_in_ms" which you can change if you encounter input errors
- Increased the login wait for the first login as on the first login it seemed to take longer sometimes.
- Fixed typo in if "Email_Three{}"
- Changed password ControlSend to ControlSendRaw to allow for #s in passwords
----------------------------------------------------------------------------------------------------------
OLD VERSIONS:
(For archiving and learning)
V1.0
1.0
Code:
/*
Comment section:
- Made by BLURREDDOGE(https://www.mpgh.net/forum/member.php?u=2877154) at https://www.mpgh.net!
Copyright 2018, Luke Roper, All rights reserved.
- https://www.gov.uk/copyright
*/
if FileExist("database.txt")
{
Array := [] ; or Array := Array()
breakline = `n
Loop, Read, database.txt
{
Array.Push(A_LoopReadLine)
}
for index, element in Array
{
oof := Mod(index, 2)
if oof = 0
{
Passwords := Passwords . element . breakline
if index = 2
{
Global Password_One
Password_One := Password_One . element
}
if index = 4
{
Global Password_Two
Password_Two := Password_Two . element
}
if index = 6
{
Global Password_Three
Password_Three := Password_Three . element
}
if index = 8
{
Global Password_Four
Password_Four := Password_Four . element
}
}
else
{
Emails := Emails . element . breakline
if index = 1
{
Global Email_One
Email_One := element
}
if index = 3
{
Global Email_Two
Email_Two := element
}
if index = 5
{
Global Email_Three
Email_Three := element
}
if index = 7
{
Global Email_Four
Email_Four := element
}
} ; End of Email and Password fetch
}
SetTitleMatchMode, 2
SetControlDelay -1
wait_for_login := 3000
wait_for_trove_to_open := 5000
;##############################################
; Open login 1 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 1 #
;##############################################
ControlSend,, %Email_One%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 250
ControlSend,, %Password_One%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login ; Returing to Glyph
Sleep, %wait_for_login% ; Wait for menu to go away
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
;##############################################
; Open login 2 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 2 #
;##############################################
ControlSend,, %Email_Two%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Two%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
;##############################################
; Open login 3 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 3 #
;##############################################
ControlSend,, %Email_Three%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Three%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
;##############################################
; Open login 4 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 4 #
;##############################################
ControlSend,, %Email_Four%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Four%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
ExitApp ;Accounts have been logged in, no need to keep script active
} ;If no file is detected this is skipped
IfNotExist, database.txt
{
Gui, New,, GUI
Gui, Color, red
;Gui Group 1
Gui, Add, groupbox, x10 y5 w180 h105
Gui, Add, Text, x15 y15, Email 1:
Gui, Add, Edit, w170 vEmail_One
Gui, Add, Text, x15 y65, Password 1:
Gui, Add, Edit, w170 Password vPassword_One
;Gui Group 2
Gui,add, groupbox, x10 y105 w180 h115
Gui, Add, Text, x15 y125, Email 2:
Gui, Add, Edit, w170 vEmail_Two
Gui, Add, Text, x15 y175, Password 2:
Gui, Add, Edit, w170 Password vPassword_Two
;Gui Group 3
Gui,add, groupbox, x10 y215 w180 h105
Gui, Add, Text, x15 y225, Email 3:
Gui, Add, Edit, w170 vEmail_Three
Gui, Add, Text, x15 y275, Password 3:
Gui, Add, Edit, w170 Password vPassword_Three
;Gui Group 4
Gui,add, groupbox, x10 y315 w180 h135
Gui, Add, Text, x15 y325, Email 4:
Gui, Add, Edit, w170 vEmail_Four
Gui, Add, Text, x15 y375, Password 4:
Gui, Add, Edit, w170 Password vPassword_Four
Gui, Add, Button, Default gOK, Save Emails/Passwords to use
Gui, Show, w205 h460
return
OK:
Gui, Submit
Gui, Destroy
MsgBox,
(
First Email: %Email_One%
First Password: %Password_One%
Second Email: %Email_Two%
Second Password: %Password_Two%
Third Email: %Email_Three%
Third Password: %Password_Three%
Fourth Email: %Email_Four%
Fourth Password: %Password_Four%
)
;Writes emails+ps to file
;#####################################################################
; Writing variables to file
;#####################################################################
FileAppend, %Email_One%`n, database.txt
FileAppend, %Password_One%`n, database.txt
FileAppend, %Email_Two%`n, database.txt
FileAppend, %Password_Two%`n, database.txt
FileAppend, %Email_Three%`n, database.txt
FileAppend, %Password_Three%`n, database.txt
FileAppend, %Email_Four%`n, database.txt
FileAppend, %Password_Four%`n, database.txt
;Run, database.txt
;return
ExitApp
}
v1.1
1.1
Code:
/*
Comment section:
- Made by BLURREDDOGE(https://www.mpgh.net/forum/member.php?u=2877154) at https://www.mpgh.net!
Copyright 2018, Luke Roper, All rights reserved.
- https://www.gov.uk/copyright
*/
if FileExist("database.txt")
{
Array := [] ; or Array := Array()
breakline = `n
Loop, Read, database.txt
{
Array.Push(A_LoopReadLine)
}
for index, element in Array
{
oof := Mod(index, 2)
if oof = 0
{
Passwords := Passwords . element . breakline
if index = 2
{
Global Password_One
Password_One := Password_One . element
}
if index = 4
{
Global Password_Two
Password_Two := Password_Two . element
}
if index = 6
{
Global Password_Three
Password_Three := Password_Three . element
}
if index = 8
{
Global Password_Four
Password_Four := Password_Four . element
}
}
else
{
Emails := Emails . element . breakline
if index = 1
{
Global Email_One
Email_One := element
}
if index = 3
{
Global Email_Two
Email_Two := element
}
if index = 5
{
Global Email_Three
Email_Three := element
}
if index = 7
{
Global Email_Four
Email_Four := element
}
} ; End of Email and Password fetch
}
SetTitleMatchMode, 2
SetControlDelay -1
wait_for_login := 3000
wait_for_trove_to_open := 5000
SetKeyDelay, 10, 5
;##############################################
; Open login 1 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 1 #
;##############################################
ControlSend,, %Email_One%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 250
ControlSend,, %Password_One%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login ; Returing to Glyph
Sleep, %wait_for_login% ; Wait for menu to go away
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
;##############################################
; Open login 2 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 2 #
;##############################################
ControlSend,, %Email_Two%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Two%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
;##############################################
; Open login 3 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 3 #
;##############################################
ControlSend,, %Email_Three%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Three%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
;##############################################
; Open login 4 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 4 #
;##############################################
ControlSend,, %Email_Four%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Four%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
ExitApp ;Accounts have been logged in, no need to keep script active
} ;If no file is detected this is skipped
IfNotExist, database.txt
{
Gui, New,, GUI
Gui, Color, red
;Gui Group 1
Gui, Add, groupbox, x10 y5 w180 h105
Gui, Add, Text, x15 y15, Email 1:
Gui, Add, Edit, w170 vEmail_One
Gui, Add, Text, x15 y65, Password 1:
Gui, Add, Edit, w170 Password vPassword_One
;Gui Group 2
Gui,add, groupbox, x10 y105 w180 h115
Gui, Add, Text, x15 y125, Email 2:
Gui, Add, Edit, w170 vEmail_Two
Gui, Add, Text, x15 y175, Password 2:
Gui, Add, Edit, w170 Password vPassword_Two
;Gui Group 3
Gui,add, groupbox, x10 y215 w180 h105
Gui, Add, Text, x15 y225, Email 3:
Gui, Add, Edit, w170 vEmail_Three
Gui, Add, Text, x15 y275, Password 3:
Gui, Add, Edit, w170 Password vPassword_Three
;Gui Group 4
Gui,add, groupbox, x10 y315 w180 h135
Gui, Add, Text, x15 y325, Email 4:
Gui, Add, Edit, w170 vEmail_Four
Gui, Add, Text, x15 y375, Password 4:
Gui, Add, Edit, w170 Password vPassword_Four
Gui, Add, Button, Default gOK, Save Emails/Passwords to use
Gui, Show, w205 h460
return
OK:
Gui, Submit
Gui, Destroy
MsgBox,
(
First Email: %Email_One%
First Password: %Password_One%
Second Email: %Email_Two%
Second Password: %Password_Two%
Third Email: %Email_Three%
Third Password: %Password_Three%
Fourth Email: %Email_Four%
Fourth Password: %Password_Four%
)
;Writes emails+ps to file
;#####################################################################
; Writing variables to file
;#####################################################################
FileAppend, %Email_One%`n, database.txt
FileAppend, %Password_One%`n, database.txt
FileAppend, %Email_Two%`n, database.txt
FileAppend, %Password_Two%`n, database.txt
FileAppend, %Email_Three%`n, database.txt
FileAppend, %Password_Three%`n, database.txt
FileAppend, %Email_Four%`n, database.txt
FileAppend, %Password_Four%`n, database.txt
;Run, database.txt
;return
ExitApp
}
V1.2
1.2
Code:
/*
Comment section:
- Made by BLURREDDOGE(https://www.mpgh.net/forum/member.php?u=2877154) at https://www.mpgh.net!
Copyright 2018, Luke Roper, All rights reserved.
- https://www.gov.uk/copyright
*/
; Global vars for user optimization
Global wait_for_login
wait_for_login := 1700
Global wait_for_trove_to_open
wait_for_trove_to_open := 5000
if FileExist("database.txt")
{
Array := [] ; or Array := Array()
breakline = `n
Loop, Read, database.txt
{
Array.Push(A_LoopReadLine)
}
for index, element in Array
{
oof := Mod(index, 2)
if oof = 0
{
Passwords := element . breakline
if index = 2
{
Global Password_One
Password_One := element
}
if index = 4
{
Global Password_Two
Password_Two := element
}
if index = 6
{
Global Password_Three
Password_Three := element
}
if index = 8
{
Global Password_Four
Password_Four := element
}
if index = 10
{
Global Password_Five
Password_Five := element
}
if index = 12
{
Global Password_Six
Password_Six := element
}
}
else
{
Emails := element . breakline
if index = 1
{
Global Email_One
Email_One := element
}
if index = 3
{
Global Email_Two
Email_Two := element
}
if index = 5
{
Global Email_Three
Email_Three := element
}
if index = 7
{
Global Email_Four
Email_Four := element
}
if index = 9
{
Global Email_Five
Email_Five := element
}
if index = 11
{
Global Email_Six
Email_Six := element
}
} ; End of Email and Password fetch
}
SetTitleMatchMode, 2
SetControlDelay -1
SetKeyDelay, 10, 5
MsgBox,
(
1: %Email_One%
2: %Email_Two%
3: %Email_Three%
4: %Email_Four%
5: %Email_Five%
6: %Email_Six%
)
If (!Email_One)
return
;##############################################
; Open login 1 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 1 #
;##############################################
ControlSend,, %Email_One%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 250
ControlSend,, %Password_One%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login ; Returing to Glyph
Sleep, %wait_for_login% ; Wait for menu to go away
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
If (!Email_Two)
return
;##############################################
; Open login 2 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 2 #
;##############################################
ControlSend,, %Email_Two%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Two%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
If (!Email_Three)
return
;##############################################
; Open login 3 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 3 #
;##############################################
ControlSend,, %Email_Three%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Three%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
If (!Email_Four)
return
;##############################################
; Open login 4 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 4 #
;##############################################
ControlSend,, %Email_Four%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Four%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
If (!Email_Five)
return
;##############################################
; Open login 5 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 5 #
;##############################################
ControlSend,, %Email_Five%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Five%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
If (!Email_Six)
return
;##############################################
; Open login 6 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 6 #
;##############################################
ControlSend,, %Email_Six%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Six%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
ExitApp ;Accounts have been logged in, no need to keep script active
} ;If no file is detected this is skipped
IfNotExist, database.txt
{
Gui, New,, GUI
Gui, Color, A9A9A9 ;hex for dark grey
;Gui Group 1
Gui, Add, groupbox, x10 y5 w180 h105
Gui, Add, Text, x15 y15, Email 1:
Gui, Add, Edit, w170 vEmail_One
Gui, Add, Text, x15 y65, Password 1:
Gui, Add, Edit, w170 Password vPassword_One
;Gui Group 2
Gui,add, groupbox, x10 y110 w180 h115
Gui, Add, Text, x15 y125, Email 2:
Gui, Add, Edit, w170 vEmail_Two
Gui, Add, Text, x15 y175, Password 2:
Gui, Add, Edit, w170 Password vPassword_Two
;Gui Group 3
Gui,add, groupbox, x10 y225 w180 h105
Gui, Add, Text, x15 y235, Email 3:
Gui, Add, Edit, w170 vEmail_Three
Gui, Add, Text, x15 y285, Password 3:
Gui, Add, Edit, w170 Password vPassword_Three
;Gui Group 4
Gui,add, groupbox, x10 y330 w180 h105
Gui, Add, Text, x15 y340, Email 4:
Gui, Add, Edit, w170 vEmail_Four
Gui, Add, Text, x15 y390, Password 4:
Gui, Add, Edit, w170 Password vPassword_Four
;Gui Group 5
Gui,add, groupbox, x10 y435 w180 h105
Gui, Add, Text, x15 y445, Email 5:
Gui, Add, Edit, w170 vEmail_Five
Gui, Add, Text, x15 y495, Password 5:
Gui, Add, Edit, w170 Password vPassword_Five
;Gui Group 6
Gui,add, groupbox, x10 y540 w180 h135
Gui, Add, Text, x15 y550, Email 6:
Gui, Add, Edit, w170 vEmail_Six
Gui, Add, Text, x15 y600, Password 6:
Gui, Add, Edit, w170 Password vPassword_Six
Gui, Add, Button, Default gOK, Save Emails/Passwords to use
Gui, Show, w205 h685
return
OK:
Gui, Submit
Gui, Destroy
MsgBox,
(
First Email: %Email_One%
First Password: %Password_One%
Second Email: %Email_Two%
Second Password: %Password_Two%
Third Email: %Email_Three%
Third Password: %Password_Three%
Fourth Email: %Email_Four%
Fourth Password: %Password_Four%
Fith Email: %Email_Five%
Fith Password: %Password_Five%
Sixth Email: %Email_Six%
Sixth Password: %Password_Six%
)
;Writes emails+ps to file
;#####################################################################
; Writing variables to file
;#####################################################################
FileAppend, %Email_One%`n, database.txt
FileAppend, %Password_One%`n, database.txt
FileAppend, %Email_Two%`n, database.txt
FileAppend, %Password_Two%`n, database.txt
FileAppend, %Email_Three%`n, database.txt
FileAppend, %Password_Three%`n, database.txt
FileAppend, %Email_Four%`n, database.txt
FileAppend, %Password_Four%`n, database.txt
FileAppend, %Email_Five%`n, database.txt
FileAppend, %Password_Five%`n, database.txt
FileAppend, %Email_Six%`n, database.txt
FileAppend, %Password_Six%`n, database.txt
;Run, database.txt
;return
ExitApp
}
V1.3
1.3
Code:
/*
Comment section:
- Made by BLURREDDOGE(https://www.mpgh.net/forum/member.php?u=2877154) at https://www.mpgh.net!
Copyright 2018, Luke Roper, All rights reserved.
- https://www.gov.uk/copyright
*/
; Global vars for user optimization
Global wait_for_login
wait_for_login := 1700
Global wait_for_trove_to_open
wait_for_trove_to_open := 5000
if FileExist("database.txt")
{
Array := [] ; or Array := Array()
breakline = `n
Loop, Read, database.txt
{
Array.Push(A_LoopReadLine)
}
for index, element in Array
{
oof := Mod(index, 2)
if oof = 0
{
Passwords := element . breakline
if index = 2
{
Global Password_One
Password_One := element
}
if index = 4
{
Global Password_Two
Password_Two := element
}
if index = 6
{
Global Password_Three
Password_Three := element
}
if index = 8
{
Global Password_Four
Password_Four := element
}
if index = 10
{
Global Password_Five
Password_Five := element
}
if index = 12
{
Global Password_Six
Password_Six := element
}
if index = 14
{
Global Password_Seven
Password_Seven := element
}
if index = 16
{
Global Password_Eight
Password_Eight := element
}
if index = 18
{
Global Password_Nine
Password_Nine := element
}
if index = 20
{
Global Password_Ten
Password_Ten := element
}
if index = 22
{
Global Password_Eleven
Password_Eleven := element
}
if index = 24
{
Global Password_Twelve
Password_Twelve := element
}
}
else
{
Emails := element . breakline
if index = 1
{
Global Email_One
Email_One := element
}
if index = 3
{
Global Email_Two
Email_Two := element
}
if index = 5
{
Global Email_Three
Email_Three := element
}
if index = 7
{
Global Email_Four
Email_Four := element
}
if index = 9
{
Global Email_Five
Email_Five := element
}
if index = 11
{
Global Email_Six
Email_Six := element
}
if index = 13
{
Global Email_Seven
Email_Seven := element
}
if index = 15
{
Global Email_Eight
Email_Eight := element
}
if index = 17
{
Global Email_Nine
Email_Nine := element
}
if index = 19
{
Global Email_Ten
Email_Ten := element
}
if index = 21
{
Global Email_Eleven
Email_Eleven := element
}
if index = 23
{
Global Email_Twelve
Email_Twelve := element
}
} ; End of Email and Password fetch
}
SetTitleMatchMode, 2
SetControlDelay -1
SetKeyDelay, 10, 5
MsgBox,
(
1: %Email_One%
2: %Email_Two%
3: %Email_Three%
4: %Email_Four%
5: %Email_Five%
6: %Email_Six%
7: %Email_Seven%
8: %Email_Eight%
9: %Email_Nine%
10: %Email_Ten%
11: %Email_Eleven%
12: %Email_Twelve%
)
If (!Email_One)
return
;##############################################
; Open login 1 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 1 #
;##############################################
ControlSend,, %Email_One%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 250
ControlSend,, %Password_One%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login ; Returing to Glyph
Sleep, %wait_for_login% ; Wait for menu to go away
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
If (!Email_Two)
return
;##############################################
; Open login 2 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 2 #
;##############################################
ControlSend,, %Email_Two%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Two%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
If (!Email_Three)
return
;##############################################
; Open login 3 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 3 #
;##############################################
ControlSend,, %Email_Three%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Three%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
If (!Email_Four)
return
;##############################################
; Open login 4 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 4 #
;##############################################
ControlSend,, %Email_Four%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Four%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
If (!Email_Five)
return
;##############################################
; Open login 5 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 5 #
;##############################################
ControlSend,, %Email_Five%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Five%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
If (!Email_Six)
return
;##############################################
; Open login 6 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 6 #
;##############################################
ControlSend,, %Email_Six%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Six%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
If (!Email_Seven)
return
;##############################################
; Open login 7 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 7 #
;##############################################
ControlSend,, %Email_Seven%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Seven%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
If (!Email_Eight)
return
;##############################################
; Open login 8 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 8 #
;##############################################
ControlSend,, %Email_Eight%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Eight%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
If (!Email_Nine)
return
;##############################################
; Open login 9 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 9 #
;##############################################
ControlSend,, %Email_Nine%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Nine%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
If (!Email_Ten)
return
;##############################################
; Open login 10 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 10 #
;##############################################
ControlSend,, %Email_Ten%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Ten%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
If (!Email_Eleven)
return
;##############################################
; Open login 11 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 11 #
;##############################################
ControlSend,, %Email_Eleven%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Eleven%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
If (!Email_Twelve)
return
;##############################################
; Open login 12 #
;##############################################
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
ControlClick, x1065 y20, Glyph ; Login...
Sleep, 250
ControlSend,, {down down}{down up}, Glyph
Sleep, 250
;##############################################
; Login account 12 #
;##############################################
ControlSend,, %Email_Twelve%, Glyph Login
Sleep, 250
ControlClick, x147 y322, Glyph Login
Sleep, 200
ControlSend,, %Password_Twelve%, Glyph Login
Sleep, 250
ControlSend,, {enter down}{enter up}, Glyph Login
Sleep, %wait_for_login%
ControlClick, x430 y530, Glyph ;Click Play to login
Sleep, %wait_for_trove_to_open%
ExitApp ;Accounts have been logged in, no need to keep script active
} ;If no file is detected this is skipped
IfNotExist, database.txt
{
Gui, New,, GUI
Gui, Color, A9A9A9 ;hex for dark grey
;Gui Group 1
Gui, Add, groupbox, x10 y5 w180 h105
Gui, Add, Text, x15 y15, Email 1:
Gui, Add, Edit, w170 vEmail_One
Gui, Add, Text, x15 y65, Password 1:
Gui, Add, Edit, w170 Password vPassword_One
;Gui Group 7
Gui, Add, groupbox, x200 y5 w180 h105
Gui, Add, Text, x205 y15, Email 7:
Gui, Add, Edit, w170 vEmail_Seven
Gui, Add, Text, x205 y65, Password 7:
Gui, Add, Edit, w170 Password vPassword_Seven
;Gui Group 2
Gui,add, groupbox, x10 y110 w180 h105
Gui, Add, Text, x15 y120, Email 2:
Gui, Add, Edit, w170 vEmail_Two
Gui, Add, Text, x15 y170, Password 2:
Gui, Add, Edit, w170 Password vPassword_Two
;Gui Group 8
Gui, Add, groupbox, x200 y110 w180 h105
Gui, Add, Text, x205 y120, Email 8:
Gui, Add, Edit, w170 vEmail_Eight
Gui, Add, Text, x205 y170, Password 8:
Gui, Add, Edit, w170 Password vPassword_Eight
;Gui Group 3
Gui,add, groupbox, x10 y215 w180 h105
Gui, Add, Text, x15 y225, Email 3:
Gui, Add, Edit, w170 vEmail_Three
Gui, Add, Text, x15 y275, Password 3:
Gui, Add, Edit, w170 Password vPassword_Three
;Gui Group 9
Gui, Add, groupbox, x200 y215 w180 h105
Gui, Add, Text, x205 y225, Email 9:
Gui, Add, Edit, w170 vEmail_Nine
Gui, Add, Text, x205 y275, Password 9:
Gui, Add, Edit, w170 Password vPassword_Nine
;Gui Group 4
Gui,add, groupbox, x10 y320 w180 h105
Gui, Add, Text, x15 y330, Email 4:
Gui, Add, Edit, w170 vEmail_Four
Gui, Add, Text, x15 y380, Password 4:
Gui, Add, Edit, w170 Password vPassword_Four
;Gui Group 10
Gui, Add, groupbox, x200 y320 w180 h105
Gui, Add, Text, x205 y330, Email 10:
Gui, Add, Edit, w170 vEmail_Ten
Gui, Add, Text, x205 y380, Password 10:
Gui, Add, Edit, w170 Password vPassword_Ten
;Gui Group 5
Gui,add, groupbox, x10 y425 w180 h105
Gui, Add, Text, x15 y435, Email 5:
Gui, Add, Edit, w170 vEmail_Five
Gui, Add, Text, x15 y485, Password 5:
Gui, Add, Edit, w170 Password vPassword_Five
;Gui Group 11
Gui, Add, groupbox, x200 y425 w180 h105
Gui, Add, Text, x205 y435, Email 11:
Gui, Add, Edit, w170 vEmail_Eleven
Gui, Add, Text, x205 y485, Password 11:
Gui, Add, Edit, w170 Password vPassword_Eleven
;Gui Group 6
Gui,add, groupbox, x10 y530 w180 h105
Gui, Add, Text, x15 y540, Email 6:
Gui, Add, Edit, w170 vEmail_Six
Gui, Add, Text, x15 y590, Password 6:
Gui, Add, Edit, w170 Password vPassword_Six
;Gui Group 12
Gui, Add, groupbox, x200 y530 w180 h135
Gui, Add, Text, x205 y540, Email 12:
Gui, Add, Edit, w170 vEmail_Twelve
Gui, Add, Text, x205 y590, Password 12:
Gui, Add, Edit, w170 Password vPassword_Twelve
Gui, Add, Button, Default gOK, Save Emails/Passwords to use
Gui, Show, w395 h675
return
OK:
Gui, Submit
Gui, Destroy
MsgBox,
(
First Email: %Email_One%
First Password: %Password_One%
Second Email: %Email_Two%
Second Password: %Password_Two%
Third Email: %Email_Three%
Third Password: %Password_Three%
Fourth Email: %Email_Four%
Fourth Password: %Password_Four%
Fith Email: %Email_Five%
Fith Password: %Password_Five%
Sixth Email: %Email_Six%
Sixth Password: %Password_Six%
Seventh Email: %Email_Seven%
Seventh Password: %Password_Seven%
Eighth Email: %Email_Eight%
Eigth Password: %Password_Eight%
Ninth Email: %Email_Nine%
Ninth Password: %Password_Nine%
Tenth Email: %Email_Ten%
Tenth Password: %Password_Ten%
Eleventh Email: %Email_Eleven%
Eleventh Password: %Password_Eleven%
Twelth Email: %Email_Twelve%
Twelth Password: %Password_Twelve%
)
;Writes emails+ps to file
;#####################################################################
; Writing variables to file
;#####################################################################
If (!Email_One)
ExitApp
FileAppend, %Email_One%`n, database.txt
FileAppend, %Password_One%`n, database.txt
If (!Email_Two)
ExitApp
FileAppend, %Email_Two%`n, database.txt
FileAppend, %Password_Two%`n, database.txt
If (!Email_Three)
ExitApp
FileAppend, %Email_Three%`n, database.txt
FileAppend, %Password_Three%`n, database.txt
If (!Email_Four)
ExitApp
FileAppend, %Email_Four%`n, database.txt
FileAppend, %Password_Four%`n, database.txt
If (!Email_Four)
ExitApp
FileAppend, %Email_Five%`n, database.txt
FileAppend, %Password_Five%`n, database.txt
If (!Email_Six)
ExitApp
FileAppend, %Email_Six%`n, database.txt
FileAppend, %Password_Six%`n, database.txt
If (!Email_Seven)
ExitApp
FileAppend, %Email_Seven%`n, database.txt
FileAppend, %Password_Seven%`n, database.txt
If (!Email_Eight)
ExitApp
FileAppend, %Email_Eight%`n, database.txt
FileAppend, %Password_Eight%`n, database.txt
If (!Email_Nine)
ExitApp
FileAppend, %Email_Nine%`n, database.txt
FileAppend, %Password_Nine%`n, database.txt
If (!Email_Ten)
ExitApp
FileAppend, %Email_Ten%`n, database.txt
FileAppend, %Password_Ten%`n, database.txt
If (!Email_Eleven)
ExitApp
FileAppend, %Email_Eleven%`n, database.txt
FileAppend, %Password_Eleven%`n, database.txt
If (!Email_Twelve)
ExitApp
FileAppend, %Email_Twelve%`n, database.txt
FileAppend, %Password_Twelve%`n, database.txt
ExitApp
}
----------------------------------------------------------------------------------------------------------
TEST FILES:
(For archiving and learning)
Get current active window and place it at coords x,y and width, height.
WinMoveTests
Code:
F1:: WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 0, 975, 1054 ;1ST LINE return F2:: WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 953, 0, 975, 1054 return F3:: WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 345, 970, 355 ;2ND LINE return F4:: WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 948, 345, 979, 355 return
Taking strings from file in an ordered layout to append into variable:
FileRW
Code:
Array := [] ; or Array := Array()
breakline = `n
Loop, Read, database.txt
{
Array.Push(A_LoopReadLine)
}
for index, element in Array
{
oof := Mod(index, 2)
if oof = 0
{
Passwords := Passwords . element . breakline
if index = 2
{
Password_One := Password_One . element
}
if index = 4
{
Password_Two := Password_Two . element
}
if index = 6
{
Password_Three := Password_Three . element
}
if index = 8
{
Password_Four := Password_Four . element
}
}
else
{
Emails := Emails . element . breakline
if index = 1
{
Email_One := element
}
if index = 3
{
Email_Two := element
}
if index = 5
{
Email_Three := element
}
if index = 7
{
Email_Four := element
}
}
}
MsgBox %Passwords%
MsgBox %Emails%
;MsgBox %Email_Three%
Co-ordinates for 12-1 windows of trove to fill the screen:
WinMove
Code:
12 clients: WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 0, 495, 355 ;1ST LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 473, 0, 495, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 953, 0, 495, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 1433, 0, 495, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 345, 495, 355 ;2ND LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 473, 345, 495, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 953, 345, 495, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 1433, 345, 495, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 690, 495, 355 ;3RD LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 473, 690, 485, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 953, 690, 485, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 1443, 690, 485, 355 ; all checked 11 clients: WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 0, 495, 355 ;1ST LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 473, 0, 495, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 953, 0, 495, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 1433, 0, 495, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 345, 495, 355 ;2ND LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 473, 345, 495, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 953, 345, 495, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 1433, 345, 495, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 690, 495, 355 ;3RD LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 473, 690, 485, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 944, 690, 983, 355 ;Longer than usual ; all checked 10 clients: WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 0, 495, 355 ;1ST LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 473, 0, 495, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 953, 0, 495, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 1433, 0, 495, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 345, 495, 355 ;2ND LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 473, 345, 495, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 953, 345, 495, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 1433, 345, 495, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 690, 970, 355 ;3RD LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 948, 690, 979, 355 ;Longer than usual ; all checked 9 clients: WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 0, 655, 355 ;1ST LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 633, 0, 655, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 1273, 0, 655, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 347, 655, 355 ;2ND LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 633, 347, 655, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 1273, 347, 655, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 694, 655, 355 ;3RD LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 633, 694, 655, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 1273, 694, 655, 355 ; all checked 8 clients: WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 0, 500, 540 ;1ST LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 478, 0, 500, 540 ;+489 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 963, 0, 500, 540 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 1448, 0, 500, 540 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 530, 500, 540 ;2ND LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 478, 530, 500, 540 ;+489 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 963, 530, 500, 540 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 1448, 530, 500, 540 ; all checked 7 clients: WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 0, 970, 355 ;1ST LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 948, 0, 979, 355 ;Longer than usual WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 345, 970, 355 ;2ND LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 948, 345, 979, 355 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 692, 655, 357 ;3RD LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 633, 692, 655, 357 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 1273, 692, 655, 357 ;all checked 6 clients: WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 0, 970, 355 ;1ST LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 948, 0, 979, 355 ;Longer than usual WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 345, 970, 355 ;2ND LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 948, 345, 979, 355 ;Longer than usual WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 690, 970, 355 ;3RD LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 948, 690, 979, 355 ;Longer than usual ; all checked 5 clients: WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 0, 970, 355 ;1ST LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 948, 0, 979, 355 ;Longer than usual WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 345, 970, 355 ;2ND LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 948, 345, 979, 355 ;Longer than usual WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 690, 970, 355 ;3RD LINE ; all checked 4 clients: WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 0, 975, 527 ;1ST LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 953, 0, 975, 527 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 517, 975, 527 ;2ND LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 953, 517, 975, 527 ; all checked 3 clients: WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 0, 975, 527 ;1ST LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 953, 0, 975, 527 WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 517, 1935, 527 ;2ND LINE ; all checked 2 clients: WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 0, 975, 1054 ;1ST LINE WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, 953, 0, 975, 1054 ; all checked 1 client: WinGetActiveTitle, windowTitle WinMove, %windowTitle%,, -7, 0, 975, 1054 ;1ST LINE ; all checked