The Wiki for Tale 4 is in read-only mode and is available for archival and reference purposes only. Please visit the current Tale 11 Wiki in the meantime.

If you have any issues with this Wiki, please post in #wiki-editing on Discord or contact Brad in-game.

Difference between revisions of "User:Cegaiel/Macros"

From A Tale in the Desert
Jump to navigationJump to search
Line 26: Line 26:
  
 
<pre>
 
<pre>
;Ctrl+Alt+W to start macro. Ctrl+P to pause script
+
;Ctrl+Alt+W to start macro.
 +
;Ctrl+P to pause script (ie to click Water icon) and Ctrl+P again to resume
 +
;The AHK icon in system tray will turn red while paused.
  
 
^p::Pause
 
^p::Pause
Line 53: Line 55:
 
But do not click the OK button (and dismiss this window) until you middle clicked all the wheat beds!
 
But do not click the OK button (and dismiss this window) until you middle clicked all the wheat beds!
  
Also: If the cycle #/# box is covering any of your flax plants, afterwards, I suggest you drag that window away from them.
+
Also: If the cycle #/# box is covering any of your flax plants, afterwards,
 +
I suggest you drag that window away from them.
  
 
)
 
)
 +
MineNum = 0
 +
MineCycle = 0
 +
NumPulls = 10000
 +
 
Gui, Add, Button, default gMineSetLoops, OK
 
Gui, Add, Button, default gMineSetLoops, OK
 
Gui, Show
 
Gui, Show
MineNum = 0
+
 
 +
 
 
WinGet, GameWinHandle, ID, eGenesis Client
 
WinGet, GameWinHandle, ID, eGenesis Client
 
loop
 
loop
Line 83: Line 91:
 
MouseGetPos, MineX%MineNum%, MineY%MineNum%
 
MouseGetPos, MineX%MineNum%, MineY%MineNum%
 
GuiControl, Text, MineNumText, %MineNum% wheat beds captured
 
GuiControl, Text, MineNumText, %MineNum% wheat beds captured
 
 
MineMax := MineNum
 
MineMax := MineNum
 +
return
  
 
return
 
  
 
MineSetLoops:
 
MineSetLoops:
 
Gui, Submit
 
Gui, Submit
 
Gui, Destroy
 
Gui, Destroy
MineCycle = 0
 
 
NumPulls = 10000
 
 
 
 
Gui, +AlwaysOnTop +ToolWindow
 
Gui, +AlwaysOnTop +ToolWindow
 
Gui, Font, bold
 
Gui, Font, bold
Line 103: Line 104:
 
Gui, Show
 
Gui, Show
 
GuiControl, Text, MineCycleText, Cycle %MineCycle% of %NumPulls%
 
GuiControl, Text, MineCycleText, Cycle %MineCycle% of %NumPulls%
 
  
  
Line 110: Line 110:
 
WinActivate, eGenesis Client
 
WinActivate, eGenesis Client
  
Sleep, 5500
+
Sleep, 7000
  
 
MineCycle++
 
MineCycle++
 
MineNum = 1
 
MineNum = 1
 +
  
 
loop, %MineMax% {
 
loop, %MineMax% {
  
 
+
GuiControl, Text, MineCycleText, Cycle %MineCycle%  Bed %MineNum%
 
 
 
MouseGetPos, OldMX, OldMY
 
MouseGetPos, OldMX, OldMY
 
 
;BlockInput, Mouse
 
;BlockInput, Mouse
 
MinePosX := MineX%MineNum%
 
MinePosX := MineX%MineNum%
Line 129: Line 128:
 
Send {H}
 
Send {H}
 
Send {W}
 
Send {W}
Sleep, 500
+
Sleep, 800
 
 
 
 
GuiControl, Text, MineCycleText, Cycle %MineCycle% of %NumPulls%
 
 
;BlockInput, Default
 
;BlockInput, Default
 
+
MouseMove, %OldMX%, %OldMY%, 0
 
 
 
MouseMove, %OldMX%, %OldMY%, 0
 
 
MineNum++
 
MineNum++
 
}
 
}
  
 
+
GuiControl, Text, MineCycleText, Cycle %MineCycle%   Pausing...HW
if (MineNum = %MineMax%) {
 
MineNum = 1
 
}
 
  
  
Line 154: Line 144:
 
return
 
return
 
}
 
}
 
  
  
 
</pre>
 
</pre>

Revision as of 01:57, 20 December 2009

Information

More Public Macros or links to get AcTools or Auto Hotkey click here.

AC Tools

Collect Grass: Enter amount of grass to collect. Walks around in a circle and collects grass without moving too far from where you started. Great to get your Rhythmic_Strength skill up.

Auto Hotkey

Wheat: Set as many wheat beds as you like. It will hover each bed and send the H and W hotkey over each bed, back to back. Then it will wait 7 seconds and repeat the cycle. Note you must have the chat minimized or else you will see HW appear in chat bar (will not send) repeatedly.

This macro you do NOT pin up any menus, it simply remembers where all your beds are and points to them and sends the H and W key back to back.

When you start the script it will tell you to point and middle click (click your mouse scroll wheel) while hovering each bed. Enter as many as you like. Then once you click OK, it will go to work.


I strongly suggest you Lock (Alt+L) your screen so it doesn't move around.


Either have alot of jugs of water or stand along water (with water icon on top left) so you can gather water without moving.


Tested on 1024x768 resolution but I am almost certain it will run at any resolution.


By the way, I took a shortcut and revamped an old mining script, so you will see alot of references to mining in the script, ^_^


;Ctrl+Alt+W to start macro.
;Ctrl+P to pause script (ie to click Water icon) and Ctrl+P again to resume
;The AHK icon in system tray will turn red while paused.

^p::Pause
^!w::



IfWinExist eGenesis Client
{
	WinActivate
	WinGetPos,,, winWidth, winHeight
	widthOffset := winWidth - 40

	Gui, +AlwaysOnTop +ToolWindow
	Gui, Font, bold
	Gui, Add, Text, vMineNumText, Recording mouse position
	Gui, Font, norm
	Gui, Add, Text,,
	( LTrim
	Hover and middle-click (Click mouse-wheel) on each wheat bed, one by one,
	until you've clicked on all the beds you want to use.
	Then click the OK button.


Note: Drag this box out of the way if any flax beds are hidden (BEFORE you start middle clicking).
But do not click the OK button (and dismiss this window) until you middle clicked all the wheat beds!

Also: If the cycle #/# box is covering any of your flax plants, afterwards,
I suggest you drag that window away from them.

	)
	MineNum = 0
	MineCycle = 0
	NumPulls = 10000

	Gui, Add, Button, default gMineSetLoops, OK
	Gui, Show


	WinGet, GameWinHandle, ID, eGenesis Client
	loop
	{
		WinActivate
		CoordMode, Mouse, Relative
		KeyWait, MButton, D
		KeyWait, MButton
		MouseGetPos, TestX, TestY, WinHandle
		if (WinHandle = GameWinHandle)
		{
			Gosub, MineRecord
		}
		else
		{
			Gui, Destroy
			break
		}
	}
	return

	MineRecord:
	MineNum++
	MouseGetPos, MineX%MineNum%, MineY%MineNum%
	GuiControl, Text, MineNumText, %MineNum% wheat beds captured
	MineMax := MineNum
	return


	MineSetLoops:
	Gui, Submit
	Gui, Destroy
	Gui, +AlwaysOnTop +ToolWindow
	Gui, Font, bold
	Gui, Add, Text, vMineCycleText, Cycle %NumPulls% of %NumPulls%
	Gui, Font, norm
	Gui, Show
	GuiControl, Text, MineCycleText, Cycle %MineCycle% of %NumPulls%


	loop, %NumPulls%
	{
		WinActivate, eGenesis Client

				Sleep, 7000

			MineCycle++
			MineNum = 1


			loop, %MineMax% {

			GuiControl, Text, MineCycleText, Cycle %MineCycle%   Bed %MineNum% 
			MouseGetPos, OldMX, OldMY
			;BlockInput, Mouse
			MinePosX := MineX%MineNum%
			MinePosY := MineY%MineNum%
			MouseMove, %MinePosX%, %MinePosY%, 0
			Sleep, 500

			Send {H}
			Send {W}
			Sleep, 800	
			;BlockInput, Default
			MouseMove, %OldMX%, %OldMY%, 0			
			MineNum++
			}

			GuiControl, Text, MineCycleText, Cycle %MineCycle%   Pausing...HW 



	}
	Gui, Destroy
	Gui, Add, Text,, Middle-click on this window to end the script.
	Gui, Show
	return
}