EQ2AutoLogin, Version 1.30 (04/27/07)

hegvape

Well-Known Member
I guess this version should work better than the previous ones. It should work with and without isxeq2 for those that only uses Lavish scripting.

It seems they changed the way the LoginScene is loaded and executed so I had to add a timer for it before continuing the script. If anyone has a better solution please don't hesitate to share it.

Kindly

Val


Description/HOW TO Configure:
Use the InnerSpace Configuration to create game profiles for different accounts & passwords.
Add isxeq2 and eq2autologin to the startup sequence of Your game profiles
If You want to automate Your login further then add the parameters, described below, to the 'Main executable parameters' section.
Use [Make Shortcut] button to create icons on Your desktop for the different profiles You have.

Parameters for EverQuest2.exe: cl_username <Station Account>;cl_autoplay_char <Character Name>;cl_autoplay_world <World Server>".
Note! Character names are case sensitive and You need to separate the commands with a semicolon ';'.
 

Attachments

Cr4zyb4rd

Active Member
It seems they changed the way the LoginScene is loaded and executed so I had to add a timer for it before continuing the script. If anyone has a better solution please don't hesitate to share it.
Hrm...you could wait for something on UIPage[Loginscene,Loginscene] to be available, but that forces dependence on ISXEQ2 being loaded first (and in my experience, these days with the patcher and whatnot that usually happens just around time i've finished clicking through manually)

You could screen-read but that's going to make the script even more dependent on the user having the right eq2ui_loginscene.xml, i'd think.

Alternatively, you could just spam the mouse button non-stop for X seconds instead of waiting, which might speed things up a bit in the case where ISXEQ2 is on-hand to detect the UIPage but doesn't win anything for the lavish-only case :(
 

hegvape

Well-Known Member
Cr4zyb4rd said:
Code:
		squelch press Retur
don't know if that's a show-stopper, but you're down an "n" :)
I added both the swedish and english version of 'Enter' :)
That's why I use squelch, so you don't see the error msg. I think it's my Logitech driver that changes most of my keys in IS to swedish ones... Kinda sucks...
 

hegvape

Well-Known Member
Cr4zyb4rd said:
Hrm...you could wait for something on UIPage[Loginscene,Loginscene] to be available, but that forces dependence on ISXEQ2 being loaded first (and in my experience, these days with the patcher and whatnot that usually happens just around time i've finished clicking through manually)

You could screen-read but that's going to make the script even more dependent on the user having the right eq2ui_loginscene.xml, i'd think.

Alternatively, you could just spam the mouse button non-stop for X seconds instead of waiting, which might speed things up a bit in the case where ISXEQ2 is on-hand to detect the UIPage but doesn't win anything for the lavish-only case :(
Thanks for the input man :)
Problem I encountered was that IS console starts ahead of the EQ2screen, it didn't do that before (at least the scripting seemd to start later before).
I tried to time the difference between the Console and the EQ2screen and found that 5,5 secs is quite enough to start 6-7 sessions at once and it would still log them all in.
I honestly don't know how it works on older CPU's (not dual cores) with less then 2GB RAM but The lowest timer I could set on my comps was about 4,5 secs.

I guess doing mouse clicks for an amount of time might work better, I'm gonna test that.

Kindly

Val
 
Last edited:

hegvape

Well-Known Member
Cr4zyb4rd said:
Alternatively, you could just spam the mouse button non-stop for X seconds instead of waiting, which might speed things up a bit in the case where ISXEQ2 is on-hand to detect the UIPage but doesn't win anything for the lavish-only case :(
Did some testing, works fine with isxeq2 but not as good without it. I had to increse the delay from 7 to 12 for it to work without isxeq2 loading. Kinda strange since the echo I had in the loop started to show at 5 secs when the console came up for me.
So I guess doing a 'wait' works better with/without isxeq2 with the current LoginScene. It's easy to change the amount of time to suite Your own computer.
Didn't work very good either when starting 4 or more sessions by spaming my icon in the Quicklaunch, works alot better with the 'wait'.

Kindly

Val

The code I used when testing:
Code:
function main(string StationPwd)
{
	/* Check if password has been supplied when starting the script */
	if !${StationPwd.Length}
	{
		/* Optionally You can specify Your station password here if you didn't provide it when starting the script */
		StationPwd:Set[-?]
	}
	switch ${StationPwd}
	{
		case ?
		case /?
		case -?
			echo " "
			echo "Syntax: run eq2autologin <Station Password>"
			echo " "
			echo "	Where <Station Password> specifies your station account password."
			echo " "
			echo "	Use the InnerSpace Configuration to create game profiles for different accounts & passwords"
			echo "	Add eq2autologin to the startup sequence of Your game profiles"
			echo "	If You want to automate Your login further then add the parameters, described below, to the"
			echo "	'Main executable parameters' section. use [Make Shortcut] button to create icons on Your desktop"
			echo " "
			echo "	Parameters for EverQuest2.exe: cl_username <Station Account>;cl_autoplay_char <Character Name>;cl_autoplay_world <World Server>"
			echo "	Note! Character names are case sensitive and You need to separate the commands with a semicolon ';'."
			return
		case Default
	}

	/* Do mouse clicks for an amount of time before continuing. DelayTime is the max secs to wait */
	variable int DelayStart=0
	variable int DelayTime=12
	variable int WaitTime=0
	variable int SaveTime=${Time.Timestamp}
	do
	{
		WaitTime:Set[${Math.Calc[(${DelayStart}-${SaveTime})+${Time.Timestamp}]}]
		echo Waiting ${WaitTime} seconds
		MouseClick -hold left
		waitframe
		MouseClick -release left
		waitframe
		}
	while ${WaitTime}!=${DelayTime}
	
	/* Check if isxeq2 is loaded. If not loaded, then use lavish commands to login */
	if ${Extension[ISXEQ2](exists)} 
	{ 
		/* Wait for patcher to finish */
		echo Using ISXEQ2 Login...
		do
		{
			waitframe
		}
		while !${ISXEQ2.IsReady} && ${Extension[ISXEQ2](exists)}
		waitframe		
		EQ2UIPage[LoginScene,LSUsernamePassword].Child[Textbox,LSUsernamePassword.WindowPage.Password]:AddToTextBox[${StationPwd}]
		waitframe
		EQ2UIPage[LoginScene,LSUsernamePassword].Child[Button,LSUsernamePassword.WindowPage.ConnectButton]:LeftClick
	}
	
	/* isxeq2 NOT loaded. Use Lavish commands to provide the password */
	else
	{
		echo Using Lavish login...
		variable int InputChar=1 
		;InputChar:Set[1]
		do 
		{
			if ${StationPwd.GetAt[${InputChar}]} >=65 && ${StationPwd.GetAt[${InputChar}]} <=90
		 	{
				Keyboard:Type[${StationPwd.Mid[${InputChar},1]}]
			}
			else
			{
				Keyboard:Type[${StationPwd.Mid[${InputChar},1]}]
			}
			waitframe
		}
		while ${StationPwd.Length} >= ${InputChar:Inc}
		squelch press Enter
		squelch press Retur
	}
}
 

faith112881

Active Member
I have gotten this setup and it is not passing in the password to login automatically.

Now it does load the character just fine - but just not the password.

Could it be a memory issue on my PC? I am only loading one instance at a time.
 

hegvape

Well-Known Member
faith112881 said:
I have gotten this setup and it is not passing in the password to login automatically.

Now it does load the character just fine - but just not the password.

Could it be a memory issue on my PC? I am only loading one instance at a time.
Sounds like the script already tried to put in the password but the Pasword screen wasn't up! Try the new script and let me know how it works for You.
http://www.isxgames.com/forums/showthread.php?p=7709#post7709

Kindly

Val
 

Cr4zyb4rd

Active Member
Keep in mind that if you're using a UI mod (like fetish) that already has code to put in a password or otherwise get jiggy with the login screen, it might cause some grief. (I went nuts before I realized it was adding the provided password to whatever default junk fettish already filled in the box)
 
Top Bottom