Autostart EVE from Windows

trupoet

Active Member
Summary: This script is written in AutoIt to automatically start up Innerspace and EVE, log you in, and start up EVEbot.

Prerequisites:

1. You have AutoIt v3 installed (freeware windows scripting engine found here )

2. You must have EVE set to play in Windowed Mode (In EVE, Graphics tab)

3. You must have logged into EVE once before with the account you want to be automatically logged in as. (we only type the password as it saves the last username)

4. The character you want to be automatically logged in must have been the last one to login as well (it should be showing as the BIG (default) picture of all the characters on the account).

5. Your Innerspace EVE profile must be called "EVE Online Default Profile" . (Note: This setting and a couple others can be changed from within the script.

6. You must have your EVE profile set to automatically load ISXEVE.

7. For this to be truly automated, EVEbot needs to immediately start and not wait for the run button to be clicked. EVEbot itself would have to be modified to accomplish this.

Save the following script as autostartISXEVE.au3. You can execute it from your desktop or schedule it to run hourly, whatever. It should automatically detect whether it started it up already or not and exit if so.

Code:
Local $username = "" ; set your username
Local $password = "" ; set your password

Local $startupCmd = """C:\Program Files\InnerSpace\InnerSpace.exe"" open ""EVE Online"" ""EVE Online Default Profile"""
Local $isxEveCmd = "run evebot"
Local $oldtitle = "EVE"
Local $title = "autoit-isxeve"
Local $enterButtonOffset = 70 ; in pixels
Local $longdelay = 30 ; in seconds

If alreadyRunning($title) Then
	Exit
EndIf

Run($startupCmd)

waitForLoginWin($oldtitle)

; Setting our own title here so we can check to see if it's still open later on
WinSetTitle($oldtitle,"",$title)

WinWaitActive($title)

; It should automatically put us at the password prompt so just send the pw and the ENTER key
Send($password)
Send("{ENTER}")

; The title of the window doesn't change but the size does, so lets wait till the size changes before proceeding
$winSize = WinGetClientSize($title)
while $winSize[0] = 720 and $winSize[1] = 460
	sleep(5000)
	$winSize = WinGetClientSize($title)
wend
	
sleep(5000)

clickEnterGame($title)

; Couldn't avoid it, had to just put in a long sleep to wait for the character to load
sleep($longdelay * 1000)

Send("`")
sleep(1000)
send($isxEveCmd)
send("{ENTER}")

Exit

Func alreadyRunning($title)
	; State 0 means the window wasn't found
	If WinGetState($title) = 0 Then
		return False
	Else
		return True
	EndIf
EndFunc

Func waitForLoginWin(ByRef $title)
	; Make sure the login window has loaded before continuing
	while $title = "EVE"
		sleep(5000)
		$title = WinGetTitle("")
	Wend
EndFunc

Func clickEnterGame($title)
	Local $rightcorner[2]
	Local $button[2]
	
	; Depending on your resolution, get the coords for the "Enter game" button
	$winPos = WinGetPos($title)
	$rightcorner[0] = $winPos[0] + $winPos[2]
	$rightcorner[1] = $winPos[1] + $winPos[3]
	$button[0] = $rightcorner[0] - $enterButtonOffset
	$button[1] = $rightcorner[1] - $enterButtonOffset

	MouseClick("left", $button[0], $button[1])
EndFunc
 

trupoet

Active Member
autostartISXEVE.au3 version 1.1

autostartISXEVE.au3 version 1.1

* Added some release comments from the previous post
* Moved some variables around to show which should be modified and which shouldn't.
* Added a flag, $autoEnter which when set to true, will automatically hit the enter key after typing the command in the console. Default set to false. Reasoning behind this is that you want to test the script out before typing blindly into EVE something like "run evebot" then the enter key. If that does not goto the console by default (which it should), then the next place it will go by default is your CHAT box. Test it out with false before setting this flag to true.

NOTE: Change the file extension from txt to au3 once you've downloaded it (wouldn't let me upload au3 files)
 

Attachments

Last edited:

trupoet

Active Member
just FYI this type of functionality is working in EVEBot now so this script is no longer needed.
 

GliderPro

Active Member
trupoet said:
just FYI this type of functionality is working in EVEBot now so this script is no longer needed.
Would you give an example on how to use it? Does it dismiss the exception dialog box that pops up when you get disconnected?
 

trupoet

Active Member
Currently it simply will start up, login, select a char, and start evebot for you.

I think Cyber was going to better integrate it into Evebot but I'm not sure if that included making it automatically re-login after getting disconnected or not.
 

kingfisher

Active Member
login method will change with trinity, at least from visual standpoint, not sure if it will change techincally
 
Top Bottom