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