Tehtsuo's Fleet Invite/Accept Scripts

Teht

ComBot Author
Here's what I pieced together using magictiger's code, so far it's working for me.

Accept script
Update CHARID and NAME to match your fleet commander's ID and Name.

Code:
function main()
{
	variable int Commander_CharID = CHARID
	variable string Commander_Name = "NAME"

	echo Waiting for Extension
	while !${ISXEVE(exists)} || !${ISXEVE.IsReady}
	{
		wait 1
	}


	echo Waiting to send invites until I'm logged in
	while !${Me(exists)} && !${MyShip(exists)}
	{
		wait 1
	}

	echo Logged in, waiting until UI catches up
	wait 60


	Echo Starting accept invite
	
	while 1
	{
		if !${Me.Fleet} == 0
		{
			if !${Me.Fleet.IsMember[${Commander_CharID}]}
				{
				echo ${Commander_Name} has left the fleet, leaving.
				Me.Fleet:LeaveFleet
				}
		}
		if ${Me.Fleet.Invited}
		{
			echo "I'm been invited"
			if ${Me.Fleet.InvitationText.Find[${Commander_Name}]}
			{
			echo "Accepting"
			wait 10
				Me.Fleet:AcceptInvite
			}			
			else
			{
			echo "Rejecting"
			wait 10
				Me.Fleet:RejectInvite
			}
			Wait 50
		}
	}
}
Invite script
Update CHARID1, CHARID2, etc to match your fleet member's IDs. You can add more lines if you have more characters.

Code:
function main()
{
	variable index:int InviteList
	variable iterator InviteMember
	
	InviteList:Insert[CHARID1]
	InviteList:Insert[CHARID2]
	
	InviteList:GetIterator[InviteMember]
	

	echo Waiting for Extension
	while !${ISXEVE(exists)} || !${ISXEVE.IsReady}
	{
		wait 1
	}

	variable int i
	variable int buddycount
	variable index:being buddylist

	echo Waiting to send invites until I'm logged in
	while !${Me(exists)} && !${MyShip(exists)}
	{
		wait 1
	}

	echo Logged in, waiting until UI catches up
	wait 60

	EVE:DoGetBuddies[buddylist]
	buddycount:Set[${buddylist.Used}]

	echo ${buddycount} Buddies, here we go!
	while 1
	{
		for (i:Set[1] ; ${i}<=${buddycount} ; i:Inc)
		{
		
		if ${InviteMember:First(exists)}
			do
			{
				if ${buddylist.Get[${i}].CharID} == ${InviteMember.Value}
				{
					if ${buddylist.Get[${i}].IsOnline} && !${Me.Fleet.IsMember[${InviteMember.Value}]}
						buddylist[${i}]:InviteToFleet
				}
			}
			while ${InviteMember:Next(exists)}

		wait 30
		}
	}
}
 

emesix

Member
I love this script.
Works like a charm

Edit the new Launcher.iss and added this:

case INVITE
EVE:CloseAllMessageBoxes
; TODO - get rid of this callback shit.
UI:UpdateConsole["Launcher: Starting EveCallback"]
runscript "${Script.CurrentDirectory}/EveCallback.iss"

UI:UpdateConsole["Launcher: Starting EVEBot"]
runscript EVEBot/EVEBot Stable
runscript EVEBot/Invite
wait 600 ${Script[EVEBot].Paused}
while ${Script[EVEBot].Paused}
{
Script[EVEBot]:Resume
wait 15
}
break
case ACCEPT
EVE:CloseAllMessageBoxes
; TODO - get rid of this callback shit.
UI:UpdateConsole["Launcher: Starting EveCallback"]
runscript "${Script.CurrentDirectory}/EveCallback.iss"

UI:UpdateConsole["Launcher: Starting EVEBot Dev"]
runscript EVEBot/EVEBot Stable
runscript EVEBot/Accept
wait 600 ${Script[EVEBot].Paused}
while ${Script[EVEBot].Paused}
{
Script[EVEBot]:Resume
wait 15
}
break

Then use:
run evebot/launcher Toon1 ACCEPT
run evebot/launcher Toon2 ACCEPT
run evebot/launcher Toon3 INVITE

Works great and only need 1 Evebot dir :)
 
Using this with ISBoxer

Is there anyway to slipstream this into the script so it happens as soon as evebot finishes launching before they start floating out? Took me more than a few hours to get that side working.

So now it loads my 3 characters, but now I need it start the fleet for the the 2 miners and hauler.
 
Hrmmmm.

I was looking at it again. I think I understand how it is going to work. Need to look at it again this evening. But I see how it may do the trick. thank you.

Ok, got home. Between what points is this scrpt inserted into the Launcher.iss file? Would it be just above

UI:UpdateConsole["Launcher Finished"]

??
 
Last edited:
I failed

I cannot for the life of me, understand how to insert these scripts and get them to launch.

I understand how the Accept/Invite scripts should work. They look straight forward enough. But I cannot make heads or tails for Emesix's code.

I cannot figure out the insertion point or how to get it to work. Could someone please identify where in Launcher.iss his script is supposed to start.

I see the Case Invite and Case Accept as the Start points and I see the Break as the end points.

If I use the the run launcher command: Run evebot/launcher username1_char1 TRUE INVITE It does not send the invite request but it does log the toon in. If I use evebot/launcher username1_char1 INVITE TRUE, it doesn't log in automatically and thus defeats the purpose.

I know I am missing something small and would apprecate if someone gave me a little nudge in the correct direction.

Thank you.
 
Last edited:
Top Bottom