Jump to content

Join our Slack

Talk to other users and have a great time
Slack Server

Welcome to our Community

Click here to get your Exiled Bot license
Donation Store
Sign in to follow this  
immo

[script] EB-UNSTUCK [aka. i not hit my box :D]

Recommended Posts

For me the "social-tab-issue" and/or the "guild-stash-issue" is omnipresent. Exiled-Bot often "missclicks" the characters stashtab and insted hits the social-tab or even the guildstash. If that happens the bot loops itself resulting in a permanent stuck until i fix it manually. Last night 2 accounts got stuck after ~45min of botting and idled the rest of the time until i came back (which was ~8h later ^^). So i thought i'll try if i can fix those to problems by myself and would like to share my results:

  • download & unpack the zip-file (ALT: dropbox)
  • open EBFIXES.ini & edit the first to lines (not more)
  • start your poe
  • start the script and follow the instruction displayed in the tray tooltip (4simple steps)
  • once configured you can start the script by pressing "STRG + F5"
  • now start botting and see if it fixes those two stucks for you (for me it did ;>)
sourcecode

CoordMode, Pixel, Relative
;#MaxThreadsPerHotkey 2

; reading the EBFIXES.ini
IniRead, _name_poe_win, %A_WorkingDir%\EBFIXES.ini, main, name_poe_win
IniRead, _outOfTown, %A_WorkingDir%\EBFIXES.ini, main, outOfTown
IniRead, _socialActive, %A_WorkingDir%\EBFIXES.ini, main, socialActive
IniRead, _guildstashActive, %A_WorkingDir%\EBFIXES.ini, main, guildstashActive
IniRead, _invColor, %A_WorkingDir%\EBFIXES.ini, main, invColor
IniRead, _HKEYcloseAllWindow, %A_WorkingDir%\EBFIXES.ini, main, HKEYcloseAllWindow
IniRead, _HKEYinventory, %A_WorkingDir%\EBFIXES.ini, main, HKEYinventory
IniRead, _EBPause, %A_WorkingDir%\EBFIXES.ini, main, EBPause
IniRead, _ZCPause, %A_WorkingDir%\EBFIXES.ini, main, ZCPause

; other variables
_ebUname := "EB-UNSTUCK"
_ebUver := "0.2b"
_ebUauthor := "immo"
Hotkey, %_ZCPause%, MyPause

WinGet, PoE_PID, PID, %_name_poe_win%

WinGetPos, poePosX, poePosY, _poeWidth, _poeHeight, ahk_class Direct3DWindowClass
poeWidth := _poeWidth / 2
poeHeight := ((_poeHeight / 2) + 100)

if (_outOfTown = "" || _socialActive = "" || _guildstashActive = "")
{
	TrayTip, %_ebUname%.%_ebUver% CONFIGURATION , LEAVE THE TOWN TO ANY ZONE AND PRESS "STRG+F1" THEN FOLLOW THE INSTRUCTIONS! , 1, 5
}
else
{
	TrayTip, %_ebUname%.%_ebUver% , PRESS "STRG+F5" TO START! , 1, 5
}
^F9::
loop
{
	checks()
}
return

^F5::
loop
{
	checks()
	if _checksWinActive = 1
	{
		if _checksInTown = 1
		{
			if (_checksSOCIALactive = 1 and _checksGUILDSTASHactive = 1)
			{
				sleep 100			; both checks are only recognized as true if you're at a loadingscreen!
			}
			else if (_checksSOCIALactive = 1 and _checksGUILDSTASHactive = 0)
			{
				unstuck()
			}
			else if (_checksSOCIALactive = 0 and _checksGUILDSTASHactive = 1)
			{
				unstuck()
			}
		}
	}
}

unstuck()
{
	global
	CoordMode, Mouse, Relative
	
	TrayTip, EB STUCK DETECTED , fixed it! , 1
	WinActivate, %_name_poe_win%
	Send {%_EBPause%}
	sleep 500
	Send {%_HKEYcloseAllWindow%}
	sleep 500
	SendInput {Click %poeWidth%, %poeHeight%}
	;ControlClick, x739 y535, ahk_class Direct3DWindowClass,, Left, 1,  NA
	sleep 500
	Send {%_EBPause%}
	return
}

checks()
{
	global
	
	; Checking if PoE Window is active
	IfWinActive %_name_poe_win% ahk_class Direct3DWindowClass
	{
		_checksWinActive = 1
	}
	else
	{
		_checksWinActive = 0
	}
	sleep 200
	; Checking if Social-Panel is active
	PixelSearch, Px, Py, 256, 98, 256, 98, %_socialActive%, 0, Fast
	If Errorlevel = 0
	{
		_checksSOCIALactive = 1
	}
	Else
	{
		_checksSOCIALactive = 0
	}
	sleep 200
	; Checking if Guild-Stash is open
	PixelSearch, Px, Py, 159, 70, 159, 70, %_guildstashActive%, 0, Fast
	If Errorlevel = 0
	{
		_checksGUILDSTASHactive = 1
	}
	Else
	{
		_checksGUILDSTASHactive = 0
	}
	sleep 200
	; Checking if inventory is open
	PixelSearch, Px, Py, 667, 68, 667, 68, _invColor, 0, Fast
	If Errorlevel = 0
	{
		_checksInvOpen = 1
	}
	Else
	{
		_checksInvOpen = 0
	}
	sleep 200
	; Checking if we are in town or not!
	PixelSearch, Px, Py, 655, 582, 655, 582, %_outOfTown%, 0, Fast
	If Errorlevel = 0
	{
		_checksInTown = 0
	}
	Else
	{
		_checksInTown = 1
	}
	sleep 200
	Tooltip, Check-Results:`n`nis the Poe window active: %_checksWinActive%`nis a Social Panel currently active: %_checksSOCIALactive%`nGuild Stashtab active: %_checksGUILDSTASHactive%`nInventory opened: %_checksInvOpen%`nis char currently in Town: %_checksInTown%, 625, 630
	return
}

; get the needed pixel color for the different checks!
; in Town?
^F1::
	WinActivate, %_name_poe_win%
	TrayTip, REMEMBER , ONLY WORKS OUT OF TOWN! , 1
	sleep 500
	PixelGetColor, color_outOfTown, 655, 582
	IniWrite, %color_outOfTown%, %A_WorkingDir%\EBFIXES.ini, main, outOfTown
	sleep 100
	TrayTip, , FOUND PIXELCOLOR: %color_outOfTown% AND SAVED TO INI!`n`nNow go back to town - open the Social Panel and press "STRG+F2"! , 1
return

; Social Panel active?
^F2::
	WinActivate, %_name_poe_win%
	TrayTip, REMEMBER , YOUR SOCIAL PANEL NEEDS TO BE OPENED! , 1
	sleep 500
	PixelGetColor, color_socialActive, 256, 98
	IniWrite, %color_socialActive%, %A_WorkingDir%\EBFIXES.ini, main, socialActive
	sleep 100
	TrayTip, , FOUND PIXELCOLOR: %color_socialActive% AND SAVED TO INI!`n`nNow open your Guild Stash and press "STRG+F3" , 1
return
	
; Guild Stashtab active?
^F3::
	WinActivate, %_name_poe_win%
	TrayTip, REMEMBER , YOUR GUILD STASHTAB NEEDS TO BE OPENED! , 1
	sleep 5000
	PixelGetColor, color_guildstashActive, 159, 70
	IniWrite, %color_guildstashActive%, %A_WorkingDir%\EBFIXES.ini, main, guildstashActive
	sleep 100
	TrayTip, , FOUND PIXELCOLOR: %color_guildstashActive% AND SAVED TO INI!`n`nNow just press "STRG+F4" to finish the setup! , 1
return

; Inventory open?
^F4::
	WinActivate, %_name_poe_win%
	TrayTip, , GET UR FINGERS OFF THE KEYBOARD! ;) , 1
	blockinput on
	sleep 100
	Send {Raw}%_HKEYinventory%
	sleep 500
	PixelGetColor, color_inv, 667, 68
	IniWrite, %color_inv%, %A_WorkingDir%\EBFIXES.ini, main, invColor
	blockinput off
	sleep 100
	TrayTip, , FOUND PIXELCOLOR: %color_inv% AND SAVED TO INI!`n`nSetup completed`n`nTo start the main loop press "STRG+F5"! , 1
return

; Simple Pause/Unpause Function
 MyPause:
	if A_IsPaused = 0
	{
		TrayTip, %_ebUname%.%_ebUver% paused!, `nPress %_ZCPause% to resume script... , 1, 0
		Pause, on
	}
	else
	{
		
		Pause, Off
		TrayTip, resuming %_ebUname%.%_ebUver%!, `nPress %_ZCPause% to pause Script again... , 1, 0
	}
; return

 

currently the script wont work on every VMWare, its working on your normal host and on some vmwares. I'll update this as soon as possible.

 

rep

Works wonders... Used it for about 20+ hours now with no issues.

 

EBUNSTUCK.zip

Edited by immo

Share this post


Link to post
Share on other sites

mate, pls make a working destroy item script. THis shit killing me and im give up to setting up version from jpbot it doesnt work for me or its just im to stupid for it :(

  • Upvote 2

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...