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.
User:Bellamoon
- My macros:
// This line is necessary to select the proper window SetActiveWindow Asheron's Call
//Charcoal Hearth // // I've made some improvements to the Hearth macro. Depending on your resolution, // the macro will run up to 12 guilded hearths. I've tested it in 1280x960 // resolution without any need to change values. It may work in other resolutions // also but I have not been able to test it. If you are using personal hearths, // it will run up to 10 in 1280x960. Maximum number in 1024x768 is 8. // // Setup: I've added a setup routine to the macro. Pin the windows on top of each // other in the top left corner. I suggest at least 200 wood per hearth // and about 15 water per hearth to be safe. All hearths are slightly // different but I suggest that you put your fastest burning hearths first // in line. You can tweak the settings in the built in menu. // // Hearths: Total number of hearths you are running. // Hearths Across: How many Hearths on the top row of windows. Make sure // you set this each time even if you are running 1 hearth. // Variables in the macro are set off of this number. // Guilded?: Check this box if you are using guilded hearths. // Need Setup?: Check this box if you need the macro to position your // windows that are stacked in top left corner. This is // usefull if you run another round on the hearths and your // windows are set up already. Check if needed or not. // Stealth Mouse: Check this if you don't want to see the mouse move around // on the hearth windows. When checked, it will save your // mouse position, move to the spot it needs, perform its // action then return the pointer to where it started. Alows // you to change chat windows are dig in chest while the // macro is running :) // Heat: Threshold for Heat bar, increase or decrease as needed. If heat // reaches this lvl, water will be added. // Wood: Wood threshold, adds wood up to this point. // Water: Alowable water level, not much play here. If the water lvl is above // this lvl, water will not be added. Prevents drowning the hearth. // RGBGreen: Used to detect completion bar. If the macro adds a bunch of water // before the macro is done then moves to the next hearth, increase // this number. Or lower it if it doesnt see green. // RGBBlue: Works just like RGBGreen but for blue bars. If the macro keeps // adding wood till the hearth is full, it's not seeing blue. If // this happens, lower this number. Other problem may be that the // mouse pointer is not lining up over the bar correctly. Run the // Mouse Test. // Check Bars Interval: This is the pause time between bar checks. The // default value of 4000 works well for 1-8 hearths // but you may need to decrease this number if you // are running more than 8. // Mouse Test: This is to test if the mouse pointer is lining up correctly // with your windows. Run 1 hearth manually and start the macro // with this option checked. You don't need to worry about any // other option. It will move over the Heat, Wood, Water, Danger, // and Status bar then over the Wood and Water buttons 10 times // before it stops. If these positions are off a bit, you can // change the Y coordinates below in the constants section. // // The macro doesn't watch Oxygen. I was going to add a vent option but this // macro runs very well and never fails for me. If your oxygen is getting too // high, try adding more wood. But, by adding more wood, you add more heat // which may require you adding more water. A small amount of water in the // presence of heat evaporates producing more Oxygen. :) Find the balance // you want. // // ENJOY! :) Come visit me in LE :) 780, 6956 I have a large bar with tasting // tables and hookahs. // Anka // Constants
//User Definable variables Hearths = 4 HeatX = 165 WoodX = 107 WaterX = 76 DangerX = 165 RGBBlue = 220 RGBGreen = 240 Guild = 1 // Y Coordinates - Don't change unless you are having a problem. RegY = 74 // Y coord for Regulator button BeginY = 245 // Y coord for Begin Button HeatY = 156 // Y coord for Heat Bar WoodY = 180 // Y coord for Wood Bar WaterY = 192 // Y coord for Water Bar DangerY = 204 // Y coord for Danger Bar StatusY = 216 // Y coord for Status Bar WoodBY = 250 // Y coord for Wood and Water buttons //End User variables Hrow = 0 Hrow1 = 0 AddX = 226 Add2X = 15 Add1Y = 65 Add2Y = 17 Add3Y = 250 RegX = 47 BeginX = 111 NewX = 0 New2X = 0 New2Y = 0 NewY = 0 Heat = 0 Wood = 0 Water = 0 Danger = 0 Status = 0 OxyY = 168 StatusX = 167 WoodBX = 35 WaterBX = 85 Num = 0 Jump = 5 JumpM = 0 Jumped = 0 Used = 0 MDelay = 250 SDelay = 200 S1Delay = 100 Count = 0 CountM = 0 MouseX = 0 MouseY = 0 CheckDelay = 0 Setup = 0 SetX = 10 SetY = 40 SetAddX = 227 SetAddY = 250 SetLoop = 0 Mouse = 1 OrigX = 0 OrigY = 0
End
Form ccHearth, Settings
ed1=Combobox:Hearths:1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 ed13=Editbox:Hearths Across:4 ed2=CheckBox:Guilded?:True ed14=Checkbox:Need Setup?:True ed15=Checkbox:Stealth Mouse:True ed3=Editbox:Heat (75-188):165 //ed10=Editbox:HeatMin (75-188):116 //ed11=Editbox:HeatMax (75-188):184 //ed4=Editbox:Low Oxy (75-188):82 //ed5=Editbox:High Oxy (75-188):134 ed6=Editbox:Wood (75-188):107 ed7=Editbox:Water (75-188):76 ed8=Editbox:RGBGreen:240 ed9=Editbox:RGBBlue:220 ed12=Editbox:Check Bars Interval (miliseconds):4000 ed16=Checkbox:Mouse Check:False
end
FormLoad ccHearth, ccHearth.frm
if ShowForm ccHearth
SetConst Hearths = ccHearth[ed1] If ccHearth[ed2] = True SetConst Guild = 1 Else SetConst Guild = 0 End SetConst HeatX = ccHearth[ed3] //SetConst Oxy1X = ccHearth[ed4] //SetConst Oxy2X = ccHearth[ed5] SetConst WoodX = ccHearth[ed6] SetConst WaterX = ccHearth[ed7] SetConst RGBGreen = ccHearth[ed8] SetConst RGBBlue = ccHearth[ed9] //SetConst HeatMin = ccHearth[ed10] //SetConst HeatMax = ccHearth[ed11] SetConst CheckDelay = ccHearth[ed12] Set HRow = ccHearth[ed13] Compute SetLoop = $Hearths - 1 Compute HRow1 = $Hrow + 1 If ccHearth[ed15] = True Set Mouse = 0 End
else
Stop
end
FormSave ccHearth, ccHearth.frm
MousePos 100, 20 //Activates eGenesis window.. Don't run ACTool maximized. Delay $MDelay LeftClick Delay 2000
If $Guild = 1
Call Guild
End if ccHearth[ed16] = True
Call HearthTest
End If ccHearth[ed14] = True
Call Setup
End
Call SetReg SetConst NewX = $BeginX SetConst NewY = $BeginY SetConst Count = 1 Loop $Hearths
If $Count = $HRow1 //$Jump SetConst NewX = $BeginX Compute NewY = $BeginY + $Add3Y End MousePos $NewX, $NewY Delay $MDelay Rightclick Delay $MDelay Compute NewX = $NewX + $AddX Compute Count = $Count + 1
End SetConst NewX = $BeginX //Dont remember why this is here :) Call Main
Procedure Setup
Set NewX = $SetX
Set NewY = $SetY
Loop $SetLoop
Mousepos $SetX, $SetY
if {loopno} = $HRow
Set NewX = $SetX
Compute NewY = $SetY + $SetAddY
else
Compute NewX = $NewX + $SetAddX
End
Dragto $NewX, $NewY
End
End
Procedure Main
SetConst CountM = 1
SetConst Status = 0
Compute JumpM = $HRow1 - 1 //$Jump - 1
Loop $Hearths
If $CountM = $HRow1 //$Jump
// may have to use New Newx and newy variables in Main
SetConst NewX = $StatusX
Compute NewY = $StatusY + $Add3Y
SetConst New2X = $WaterBX
Compute New2Y = $WoodBY + $Add3Y
End
While $Status = 0
Call CheckBars
If $Status = 1
Call Snuff
//code to advance to next hearth
Compute Used = $Used + 1
If $Used = $JumpM
Compute HeatX = $HeatX - (($Used - 1) * $AddX)
Compute HeatY = $HeatY + $Add3Y
Compute WoodX = $WoodX - (($Used - 1) * $AddX)
Compute WoodY = $WoodY + $Add3Y
Compute WaterX = $WaterX - (($Used - 1) * $AddX)
Compute WaterY = $WaterY + $Add3Y
Compute DangerX = $DangerX - (($Used - 1) * $AddX)
Compute DangerY = $DangerY + $Add3Y
Compute StatusX = $StatusX - (($Used - 1) * $AddX)
Compute StatusY = $StatusY + $Add3Y
//Compute WaterBX = $WaterBX - (($Used -1) * $AddX)
//Compute WoodBX = $WoodBX - (($Used - 1 ) * $AddX)
//Compute WoodBY = $WoodBY + $Add3Y
SetConst Jumped = 1
Continue
Else
Compute HeatX = $HeatX + $AddX
Compute WoodX = $WoodX + $AddX
Compute WaterX = $WaterX + $AddX
Compute DangerX = $DangerX + $AddX
Compute StatusX = $StatusX + $AddX
//Compute WaterBX = $WaterBX + $AddX
//Compute WoodBX = $WoodBX + $AddX
End
Continue
End
If $Heat = 0 and $Danger = 0 and $Wood = 0
Call Wood
Else
If $Heat = 1 or $Danger = 1
If $Water = 0
Call Water
End
End
End
Delay $CheckDelay
End
Compute CountM = $CountM + 1
SetConst Status = 0
End
End
Procedure CheckBars
If $Mouse = 1
MousePos $HeatX, $HeatY
Delay $SDelay
end
LoadRGB $HeatX, $HeatY
if {RGBBlue} > $RGBBlue
SetConst Heat = 1
Else
SetConst Heat = 0
End
If $Mouse = 1
MousePos $WoodX, $WoodY
Delay $S1Delay
end
LoadRGB $WoodX, $WoodY
if {RGBBlue} > $RGBBlue
SetConst Wood = 1
Else
SetConst Wood = 0
End
If $Mouse = 1
MousePos $WaterX, $WaterY
Delay $S1Delay
End
LoadRGB $WaterX, $WaterY
if {RGBBlue} > $RGBBlue
SetConst Water = 1
Else
SetConst Water = 0
End
If $Mouse = 1
MousePos $DangerX, $DangerY
Delay $S1Delay
End
LoadRGB $DangerX, $DangerY
if {RGBBlue} > $RGBBlue
SetConst Danger = 1
Else
SetConst Danger = 0
End
If $Mouse = 1
MousePos $StatusX, $StatusY
End
LoadRGB $StatusX, $StatusY
if {RGBGreen} > $RGBGreen
SetConst Status = 1
Else
SetConst Status = 0
End
End
Procedure Water
SetConst NewX = $WaterBX
SetConst NewY = $WoodBY
Loop $Hearths
IF {loopno} = $HRow1 //$Jump
SetConst NewX = $WaterBX
Compute NewY = $WoodBY + $Add3Y
End
If {loopno} > $Used
If $Mouse = 0
Set OrigX = {mousex}
Set OrigY = {mousey}
End
MousePos $NewX, $NewY
Delay $SDelay
Rightclick
Delay $SDelay
If $Mouse = 0
Mousepos $OrigX, $OrigY
End
End
Compute NewX = $NewX + $AddX
End
SetConst NewX = $WaterBX
End
Procedure Snuff
SetConst New2X = $WaterBX
SetConst New2Y = $WoodBY
Compute Num = $Used + 1
Loop $Hearths
IF {loopno} = $Hrow1 //$Jump
SetConst New2X = $WaterBX
Compute New2Y = $WoodBY + $Add3Y
End
If {loopno} = $Num
If $Mouse = 0
Set OrigX = {mousex}
Set OrigY = {mousey}
End
MousePos $New2X, $New2Y
Loop 8
Rightclick
End
If $Mouse = 0
Mousepos $OrigX, $OrigY
End
End
Compute New2X = $New2X + $AddX
End
End
Procedure Wood
SetConst NewX = $WoodBX
SetConst NewY = $WoodBY
Loop $Hearths
IF {loopno} = $HRow1 //$Jump
SetConst NewX = $WoodBX
Compute NewY = $WoodBY + $Add3Y
End
If {loopno} > $Used
If $Mouse = 0
Set OrigX = {mousex}
Set OrigY = {mousey}
End
MousePos $NewX, $NewY
Delay $SDelay
Rightclick
Delay $SDelay
If $Mouse = 0
MousePos $OrigX, $OrigY
End
End
Compute NewX = $NewX + $AddX
End
SetConst NewX = $WoodBX
End
Procedure SetReg
SetConst NewX = $RegX
SetConst Count = 1
Loop $Hearths
If $Count = $HRow1
SetConst NewX = $RegX
Compute RegY = $RegY + $Add3Y
End
MousePos $NewX, $RegY
Delay $MDelay
Rightclick
Compute NewX = $NewX + $Add2X
If $Count > $HRow
Compute NewY = $RegY + $Add2Y
else
Compute NewY = $RegY + $Add1Y
end
MousePos $NewX, $NewY
Delay $MDelay
Rightclick
Delay $MDelay
Compute NewX = $NewX + $AddX
Compute Count = $Count + 1
End
SetConst NewX = $RegX
SetConst Count = 1
End
Procedure Guild
Compute BeginX = $BeginX - 7 Compute BeginY = $BeginY + 16 Compute RegY = $RegY + 16 Compute RegX = $RegX - 14 Compute AddX = $AddX - 15 Compute Add3Y = $Add3Y + 16 Compute Add1Y = $Add1Y - 16 Compute WoodBY = $WoodBY + 16 Compute HeatX = $HeatX - 4 Compute HeatY = $HeatY + 16 Compute WoodX = $WoodX - 1 Compute WoodY = $WoodY + 16 Compute WaterY = $WaterY + 16 Compute DangerX = $DangerX - 4 Compute DangerY = $DangerY + 16 Compute StatusX = $StatusX - 5 Compute StatusY = $StatusY + 16 Set SetAddX = 212 Set SetAddY = 266
End
Procedure HearthTest
Loop 10 MousePos $HeatX, $HeatY Delay 2000 MousePos $WoodX, $WoodY Delay 2000 MousePos $WaterX, $WaterY Delay 2000 MousePos $DangerX, $DangerY Delay 2000 MousePos $StatusX, $StatusY Delay 2000 MousePos $WoodBX, $WoodBY Delay 2000 MousePos $WaterBX, $WoodBY Delay 2000 end Stop
End //Written with ACTool 5.3.0 by Anka Bell Asterisk ________________________________________ Constants
Loops = 25 //Number of rounds you want to plant Water = 5 P1Delay = 0 MoveDelay = 0 WDelay = 0 Num = 4 NewX = 0 NewY = 0 varOriginalMouseX = 0 varOriginalMouseY = 0 Ox = 476 Oy = 380 ODragX = 4 ODragY = 90 OWX = 50 OWY = 120 Onion = 1 WaterX = 0 WaterY = 0 Plants = 0
End
Set WaterX = {MouseX} Set WaterY = {MouseY}
Form Onions, Settings
ed1=Editbox:Batch:1 ed2=Combobox:# of Plants:1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
ed3=Editbox:Plant 1 wait time:1300 ed4=Editbox:Move wait time:900 ed5=Editbox:Time between Waterings:800 end
FormLoad Onions, Onions.frm
if ShowForm Onions
Set Loops = Onions[ed1] Set Plants = Onions[ed2] Set P1Delay = Onions[ed3] Set MoveDelay = Onions[ed4] Set WDelay = Onions[ed5]
Else
stop
end
FormSave Onions, Onions.frm
//Activate ATITD Window MousePos 100, 10 Delay 250 Leftclick Delay 2000
Call Onion
Procedure Onion
Loop $Loops
Loop $Plants //Number of plants
MousePos 50, 40
Delay 400
Rightclick
Compute Num = $Onion * 2 - 1
MousePos 37, 101
Delay 400
Loop $Num
Rightclick
End
Compute Onion = $Onion + 1
MousePos 32, 162
Delay 400
Rightclick
End
SetConst Onion = 1
Loop $Plants //Find and Pin Plants
Mousepos $Ox, $Oy
Delay 200
Call CheckOnions
Compute Ox = $Ox - 38
End
SetConst Onion = 1
Loop 5
Loop $Plants // Number of plants
If $Onion = 5
Compute OWX = {mousex} + 168
SetConst OWY = 120
End
If $Onion = 9
Compute OWX = {mousex} + 168
SetConst OWY = 120
End
Compute NewY = $OWY - 20
MousePos $OWX, $NewY
Delay 200
Rightclick
Delay 300
Mousepos $OWX, $OWY
Delay 200
Rightclick
Compute OWY = {MouseY} + 60
If $Onion = 1
Delay 1300 //Plant 1 time
Else
Delay 900 //Move Time
End
Compute Onion = $Onion + 1
End
Delay $WDelay //Pause between waterings
SetConst Onion = 1
Compute OWX = 50
Compute OWY = 120
End
Compute NewX = 489
Compute NewY = 270
Loop 3
Loop 4
MousePos $NewX, $NewY
Delay 250
Rightclick
Compute NewY = $NewY - 60
End
Compute NewX = $NewX - 168
Compute NewY = 270
End
Mousepos 930, 385
Leftclick
Delay 3000
// Mousepos 473, 397 // Delay 250 // Leftclick // Delay 2000 // MousePos $WaterX, $WaterY // Delay 250 // Leftclick // MousePos 512,423 // Delay 250 // Leftclick // Delay 5000
Compute Onion = 1 Compute ODragX = 4 Compute ODragY = 90 Compute Ox = 476 Compute Oy = 380 Compute OWX = 50 Compute OWY = 120 End
End
Procedure CheckOnions
setconst varOriginalMouseX = {mousex}
setconst varOriginalMouseY = {mousey}
Compute NewY = $varOriginalMouseY
Loop 15
RightClick
Delay 400
LoadRGB {MouseX}, {MouseY}
if {RGBBlue} > 220
Compute NewX = {mousex} + 148
Compute NewY = {mousey} - 23
MousePos $NewX, $NewY
Delay 200
Leftclick
Compute NewX = {mousex} - 145
MousePos $NewX, $NewY
if $Onion > 8
Dragto $ODragX, $ODragY
Compute ODragY = $ODragY + 60
End
if $Onion = 5 or $Onion = 6 or $Onion = 7 or $Onion = 8
Dragto $ODragX, $ODragY
Compute ODragY = $ODragY + 60
End
If $Onion = 2 or $Onion = 3 or $Onion = 4
Dragto $ODragX, $ODragY
Compute ODragY = $ODragY + 60
End
if $Onion = 1
Dragto $ODragX, $ODragY
Compute ODragY = $ODragY + 60
End
Compute Onion = $Onion + 1
If $Onion = 5
SetConst ODragY = 90
Compute ODragX = $ODragX + 168
End
If $Onion = 9
SetConst ODragY = 90
Compute ODragX = $ODragX + 168
END
Break
Else
Compute Oy = $Oy + 1
MousePos $varOriginalMouseX, $Oy
Delay 200
End
End
End ________________________________________ // This line is necessary to select the proper window SetActiveWindow Asheron's Call
// Multi Tool // // This macro does Digs, Mining , Limestone, Dirt, Loom, Hackling Rake. // This macro also does not work on timers and will watch your End, Str and Per // timers. It will do the next action as soon as the timers have expired. // Resolution 1024x768. If you have problems with the macro detecting colors, run // ColorTest. // //INSTRUCTIONS // // I use small action icons in Utility>Interface>Action icons appear in // smaller size. Have not tried with large icons. // ColorTest - Run this if you are having problems with the macro detecting colors. // Once the macro starts, it will ring a bell. You have 5 seconds // to place your mouse pointer over the spot you want to color test. // A bell will ring again when the macro is done. Look in the test // log to retrieve your RGB values for that color. You can use // these values for the Dirt and Limestone proceedures if needed. // // Dig - Pin the "Dig Deeper" window where ever you want it. // Put the mouse pointer over the "Dig Deeper" button. // Alt tab to ACTool(Don't move the mouse) and press F2 // It will then dig whenever the END timer expires. // // Dirt - This one is a bit more automated. // Have a shovel in inventory and stand over dirt. // Start the macro. // This one will find the dirt icon on it's own and dig whenever // the timer is ready. // // Firepit - This one will run 1 firepit. The firepit has to have a certain // orientation so I'll be posting a screenshot on my user page. The // initial pointer position is crucial also. Pin the firepit window to // the top left corner. Place the pointer in the position expained on // my user page. Don't move the mouse and alt tab to ACTool. Press Start // or F2 to start the macro. It will switch to the ATITD client and after // a few seconds will ring a bell. All that is happened so far is that the // mouse position has been stored and the macro is paused. At this point, // put everything you want in your fire, have an iron poker in your // inventory. This is run on a guilded firepit, if you need one for a // personal firepit, chat me and I'll add that feature. Once the fire // starts, Alt tab to ACTool once again and press the resume button // (Next to start button). I'm not claiming this to be 100% but once you // get the pointer in the right spot, it hasn't failed any test so far. // // Hackling Rake - Have rotten flax on hand // Make sure rake is on step 1 // Pin Rake window to top left corner. // Put mouse pointer over step 1 option. // Alt tab to windows (Don't touch mouse) Press F2 // This also will watch the end timer and act when ready. // // Hookah - Simple macro that will smoke the hookah for you. Put the window any place // you want it. Place pointer over the smoke option. It will keep trying to // smoke even when the hookah is empty. I'll add in a safeguard soon. // // Limestone - Simply start this macro. // It will gather limestone when the timer is ready. // // Loom - Load the loom // Pin Loom window to top left corner. // Put the mouse pointer over the item you want to create. // Alt tab to windows (Dont touch mouse) Press F2 // This will work the loom when the End timer is gone. // // Mine - Pin 18 crystals and put the windows stacked on top of each other // in the top left corner. Make sure the mine is empty (no Take // option). If you end up stopping the macro and want to restart // without going through the setup section, uncheck Mine Setup // when able. It will position the windows and randomly pull from a // window whenever the PerStr timers are gone. X Coord Work is there // if your mouse pointer is missing the work button. If the mouse is too // far to the right, decrease the number. // // Anka
Include Objects.mac
Constants
Rounds = 0 YWork = 163 //95 //75 XWork = 89 XOrig = 0 YOrig = 0 AddX = 249 //100 AddY = 63 //95 //63 MouseX = 0 MouseY = 0 FireX = 23 FireY = 93 Fire1 = 423,644 Fire2 = 0 Fire3 = 0 Fire4 = 0 Fire5 = 0 Fire1X = 88 Fire1Y = 32 Fire2X = 74 Fire2Y = 58 Fire3X = 90 Fire3Y = 65 Fire4X = 107 Fire4Y = 58 Fire5X = 105 Fire5Y = 44 Red = 0 Green = 0 Blue = 0 ButtonX = 1010 ButtonY = 32 SubX = 31 Button = 0 Num = 0 First = 0 WinX = 3 WinY = 29 //625 //593 DragX = 3 DragY = 115 //49 //29 NewX = 0 NewY = 0 Minval = 1 Maxval = 18 RanX = 0 RanY = 0 Setup = 0 Guild = 0 Done = 0 SDelay = 100 MDelay = 250
End
SetConst MouseX = {MouseX} SetConst MouseY = {MouseY}
Form MultiTool, Choose your Job
ed1=EditBox:Rounds:1 ed2=Combobox:Which Job?:Dig,Dirt,FirePit,Hackling,Hookah,Limestone,Loom,Mine,ColorTest ed3=Checkbox:Guilded Mine:False ed4=Checkbox:Mine Setup:True ed5=Checkbox:StokeBell:True ed6=Checkbox:Mine Repaired:False ed7=EditBox:X Coord Work:240
end
FormLoad MultiTool, MultiTool.frm
if ShowForm MultiTool
Set Rounds = MultiTool[ed1] Set XWork = MultiTool[ed7] If MultiTool[ed4] = True setConst Setup = 0 else setConst Setup = 1 End
else
Stop
end FormSave MultiTool, MultiTool.frm
MousePos 100, 20 Delay 250 LeftClick MousePos 25, 60 Delay 5000
Loop $Rounds
Call MultiTool[ed2] Call Checkforlostfocus
End
Procedure FirePit
If $Setup = 0
Bell Asterisk
Pause
SetConst Setup = 1
End
MousePos 100, 20
Delay 250
LeftClick
Delay 1000
MousePos 15, 45
Delay 100
Rightclick
SetConst Done = 0
If $Button = 0
Compute NewX = $MouseX + $Fire1X
Compute NewY = $MouseY + $Fire1Y
SetConst Fire1 = $NewX,$NewY
Compute NewX = $MouseX + $Fire2X
Compute NewY = $MouseY + $Fire2Y
SetConst Fire2 = $NewX,$NewY
Compute NewX = $MouseX + $Fire3X
Compute NewY = $MouseY + $Fire3Y
SetConst Fire3 = $NewX,$NewY
Compute NewX = $MouseX + $Fire4X
Compute NewY = $MouseY + $Fire4Y
SetConst Fire4 = $NewX,$NewY
Compute NewX = $MouseX + $Fire5X
Compute NewY = $MouseY + $Fire5Y
SetConst Fire5 = $NewX,$NewY
Inc Button
End
While $Done = 0
Mousepos $Fire1
Delay 100
LoadRGB {mousex},{mousey}
IF {RGBGreen} = 255
MousePos $Fire2
Delay 100
LoadRGB {mousex},{mousey}
IF {RGBGreen} = 255
MousePos $Fire3
Delay 100
LoadRGB {mousex},{mousey}
IF {RGBGreen} = 255
MousePos $Fire4
Delay 100
LoadRGB {mousex},{mousey}
IF {RGBGreen} = 255
MousePos $Fire5
Delay 100
LoadRGB {mousex},{mousey}
IF {RGBGreen} = 255
//Stoke
MousePos 37, 93
Delay 200
Rightclick
If MultiTool[ed5] = True
bell asterisk
End
Delay 26000
MousePos 28, 61
Delay 200
Rightclick
SetConst Done = 1
End
End
End
End
End
End
End
Procedure Dig
SetConst Button = 0
While $Button = 0
IsObject Endur at 973, 79
Delay 500
Else
SetConst XOrig = {mousex}
SetConst YOrig = {mousey}
MousePos $MouseX, $MouseY
Delay 200
Rightclick
Delay 500
End
End
SetConst Button = 1
End
Procedure Hookah
SetConst Button = 0
While $Button = 0
IsObject Con at 975, 79
Delay 500
Else
SetConst XOrig = {mousex}
SetConst YOrig = {mousey}
MousePos $MouseX, $MouseY
Delay 200
Rightclick
End
End
SetConst Button = 1
End
Procedure Hackling
Loop Num = 1 to 4
SetConst Button = 0
While $Button = 0
IsObject Endur at 973, 79
Delay 500
Else
SetConst XOrig = {mousex}
SetConst YOrig = {mousey}
MousePos 5, 32
Delay 200
Rightclick
Delay 200
If $Num < 2 or $Num > 3
MousePos $MouseX, $MouseY
Delay 250
Rightclick
Delay 200
Else
Compute MouseY = $MouseY + 15
MousePos $MouseX, $MouseY
Delay 250
Rightclick
Delay 200
Compute MouseY = $MouseY - 15
End
Mousepos $XOrig, $YOrig
SetConst Button = 1
End
End
End
End
Procedure Loom
SetConst Button = 0
While $Button = 0
IsObject Endur at 973, 79
Delay 500
Else
SetConst XOrig = {mousex}
SetConst YOrig = {mousey}
MousePos $MouseX, $MouseY
Delay 250
Rightclick
Delay 200
Mousepos $XOrig, $YOrig
SetConst Button = 1
End
End
End
Procedure Mine
If $Guild = 0
If MultiTool[ed3] = True
Call GuildMine
End
if MultiTool[ed6] = true
Call Guildmine
End
End
If $Setup = 0
Call Minesetup
End
SetConst Button = 0
While $Button = 0
IsObject PerStr at 924, 80
Delay 500
Else
SetConst Num = $Random
Timestamp $Num
Case
When $Num > 15 //12
Compute NewY = $YWork + $AddY * 5 //2
Compute NewX = $AddX * ($Num - 16) + $XWork
When $Num > 12
Compute NewY = $YWork + $AddY * 4
Compute NewX = $AddX * ($Num - 13) + $XWork
When $Num > 9
Compute NewY = $YWork + $AddY * 3
Compute NewX = $AddX * ($Num - 10) + $XWork
When $Num > 6
Compute NewY = $YWork + $AddY * 2
Compute NewX = $AddX * ($Num - 7) + $XWork
When $Num > 3
Compute NewY = $YWork + $AddY
Compute NewX = $AddX * ($Num - 4) + $XWork
Else
Compute NewX = $AddX * ($Num - 1) + $XWork
Compute NewY = $YWork
End
MousePos $NewX, $NewY
Timestamp $NewX, $NewY
Delay 250
Rightclick
Delay 2250
SetConst Button = 1
End
End
End
Procedure Limestone
If $Button = 0
SetConst Red = 113
SetConst Green = 146
SetConst Blue = 100
Call FindButton
End
SetConst Button = 1
While $Button = 1
IsObject Endur at 973, 79
Delay 200
Else
SetConst XOrig = {mousex}
SetConst YOrig = {mousey}
MousePos $ButtonX, $ButtonY
Delay 150
Rightclick
Delay 100
Mousepos $XOrig, $YOrig
Delay 1000
SetConst Button = 2
End
End
End
Procedure Dirt
If $Button = 0
SetConst Red = 91 //104
SetConst Green = 138 //149
SetConst Blue = 184 //192
Call FindButton
End
SetConst Button = 1
While $Button = 1
IsObject Endur at 973, 79
Delay 500
Else
SetConst XOrig = {mousex}
SetConst YOrig = {mousey}
MousePos $ButtonX, $ButtonY
Delay 250
Rightclick
Delay 200
Mousepos $XOrig, $YOrig
Delay 10000
SetConst Button = 2
End
End
End
Procedure Pull
SetConst XOrig = {MouseX}
SetConst YOrig = {MouseY}
MousePos $RanX, $RanY
Delay 200
Rightclick
Delay 100
Compute RanX = $RanX + 14
Compute RanY = $RanY - 3
MousePos $RanX, $RanY
Delay 250
Rightclick
Delay 100
MousePos $XOrig, $YOrig
Delay 100
End
Procedure FindButton
MousePos $ButtonX, $ButtonY
Delay 200
LoadRGB {mousex}, {mousey}
While {rgbred} <> $Red and {rgbgreen} <> $Green and {rgbblue} <> $Blue
Compute ButtonX = $ButtonX - $SubX
MousePos $ButtonX, $ButtonY
Delay 200
LoadRGB {mousex}, {mousey}
End
SetConst ButtonX = {mousex}
SetConst ButtonY = {mousey}
SetConst Button = 1
End
Procedure MineSetup
Loop 6
Loop 3
MousePos $WinX, $WinY
Delay $MDelay
Dragto $DragX, $DragY
Compute DragX = $DragX + $AddX
Call Checkforlostfocus
End
SetConst DragX = 3
Compute DragY = $DragY + $AddY
End
SetConst Setup = 1
End
Procedure Generate
Compute Minval = $MouseX - 49 Compute Maxval = $MouseX + 50 SetConst RanX = $Random Compute Minval = $MouseY - 57 Compute Maxval = $MouseY + 83 SetConst RanY = $Random
End
Procedure GuildMine
//Compute WinY = $WinY - 16 Compute AddY = $AddY + 16 Compute YWork = $YWork + 16 //Compute DragY = $DragY + 16 Set Guild = 1
End
Procedure ColorTest
Bell Asterisk
Delay 5000
LoadRGB {mousex},{mousey}
Timestamp RGB - {rgbred}, {rgbgreen}, {rgbblue}
End
Procedure CheckforLostFocus
if {activewindow} contains eGenesis
Exit
Else
Stop
End
End
Function Random
Compute Result = int(($Maxval - $Minval + 1) * rnd(1)) + $Minval
End Bell Asterisk //Written with ACTool 5.3.0 by Anka _____________________________________ Limestone
// This line is necessary to select the proper window SetActiveWindow Asheron's Call
delay 10000 // 10 second delay MousePos 116, 103 // Change this to the location of the limestone icon
loop 10000 // Run this x times
loop 3 delay 1000 leftclick end
delay 42500
end