Search: Home | Atlas | Guides | Tests | Research | Index | Recent Changes | Preferences | Login

Macros > Charcoal Macro

Sord: Macros are allowed as long as they are attended and don't flood the server (by doing things faster than a human could) - not sure how it is stated in the ToS. I regularly run 28+ bonfires by hand, so you probably haven't passed that point yet. But the real question is does your macro hit all 28 fires in 1 second and then pause for 19 seconds or does it hit one fire every 20/28ths of a second. The former is in violation, the latter is not.

Ah, the Terms are somewhat less strict than many current games. Good.

--

This macro runs 28 fires and gives between a 5:4 and 1:1 wood:cc rate of return, roughly, when burning about 2000 wood. You can burn more, but lag compounds with the more time you add on; I got a 4:3 ratio when burning 4000.

You can find ACTool at http://www.actool.net/, and the macros themselves attached at the bottom of the page (thanks, Gumali!). Copy and paste the code into a new macro window within the tool and read any instructions in the top portion of the commented code. When you run the macro, make sure the macro window isn't maximized; resize it so it's positioned in the middle of the screen and you can see ATITD running in the background. The macro selects the ATITD window by clicking on the title bar, so you want to make sure you see "eGenesis Client" at the top of your screen.

Note 1: the code refuses to paste properly from ACTool into the wiki, so if you're pasting it from the site it won't line up properly. This is a lame fix, but you can open up the edit window and copy the text straight from there. Sorry about that. Also, when you paste, make sure to paste over top of the lines that may already be written there ("// This line is necessary to select the proper window / SetActiveWindow Asheron's Call"). Of course, it'll be easier to just download the files themselves from the bottom of the page.

Note 2: when you line up the pinned bonfire boxes, make sure the 'r' of 'Bonfire' in the first line (ie the line that reads "This is your Bonfire") is the last letter showing when another box is stacked on top of it. So you'll see "This is your Bonfir" and then the next box will cover it. Tile the boxes in that manner from left to right, and place the second row directly below the first row (boxes touching but not overlapping). A bit of a correction to make this work sence the implementation of "remove wood from bonfire" the second and third row's should be overlapping the bottom of the row's above them in a manner to cover half of the ownership word and the fourth should underline the ownership word of the third this will make this macro work again I will add a screenshot. You should have four rows and seven columns. Screen resolution of 1024 x 768 is required for this to work properly.

Note 3: you'll want to edit line 101 of the code to accomodate the amount of wood you have to burn after constructing your fires. Each loop burns 28 wood, so if you have 28 wood, loop once. If you have 2800 wood, loop 100 times (2800/28=100).


Box Test - run this first to make sure you have the boxes pinned properly, then run the actual charcoal macro (which you can find below).

//make 28 bonfires of 11 wood each //line up 28 bonfire boxes in rows of 7, tiled, so that 'r' of bonfire is last letter //run this before actual macro to ensure mouse will hit right spots

Constants

  YRTA = 90
  YRTL = 110
  YR2L = 255
  YR2A = 242
  YR3L = 403
  YR3A = 390
  YR4L = 550
  YR4A = 537
  XTRS = 105
  XAdd = 124
  XVar = 105
  XVarSet = 0
End

MousePos 100, 20 Delay 250 LeftClick

//loop through top 7 boxes lighting fire Delay 250 MousePos $XTRS, $YRTL SetConst XVar = $XTRS Delay 250 //LeftClick

Loop 6

  Compute XVarSet = $XVar + $XAdd
  SetConst XVar = $XVarSet
  Delay 250
  MousePos $XVarSet, $YRTL
  Delay 250
  //LeftClick
  Delay 250				//redundant delay
End

//loop through 2nd 7 boxes lighting fire Delay 250 MousePos $XTRS, $YR2L SetConst XVar = $XTRS Delay 250 //LeftClick

Loop 6

  Compute XVarSet = $XVar + $XAdd
  SetConst XVar = $XVarSet
  Delay 250
  MousePos $XVarSet, $YR2L
  Delay 250
  //LeftClick
  Delay 250				//redundant delay
End

//loop through 3rd 7 boxes lighting fire Delay 250 MousePos $XTRS, $YR3L SetConst XVar = $XTRS Delay 250 //LeftClick

Loop 6

  Compute XVarSet = $XVar + $XAdd
  SetConst XVar = $XVarSet
  Delay 250
  MousePos $XVarSet, $YR3L
  Delay 250
  //LeftClick
  Delay 250				//redundant delay
End

//loop through 4th 7 boxes lighting fire Delay 250 MousePos $XTRS, $YR4L SetConst XVar = $XTRS Delay 250 //LeftClick

Loop 6

  Compute XVarSet = $XVar + $XAdd
  SetConst XVar = $XVarSet
  Delay 250
  MousePos $XVarSet, $YR4L
  Delay 250
  //LeftClick
  Delay 250				//redundant delay
End

//Delay 23000 //delay so wood reaches 0

//loop through adding wood //Loop 10

  Delay 250
  MousePos $XTRS, $YRTA
  SetConst XVar = $XTRS
  Delay 250
  //LeftClick
  Delay 250
  //Keys {RETURN}

  //loop through top 7 boxes adding wood
  Loop 6
    Compute XVarSet = $XVar + $XAdd
    SetConst XVar = $XVarSet
    Delay 250
    MousePos $XVarSet, $YRTA
    Delay 250
    //LeftClick
    Delay 250
    //Keys {RETURN}
  End

  Delay 250
  MousePos $XTRS, $YR2A
  SetConst XVar = $XTRS
  Delay 250
  //LeftClick
  Delay 250
  //Keys {RETURN}

  //loop through 2nd 7 boxes adding wood
  Loop 6
    Compute XVarSet = $XVar + $XAdd
    SetConst XVar = $XVarSet
    Delay 250
    MousePos $XVarSet, $YR2A
    Delay 250
    //LeftClick
    Delay 250
    //Keys {RETURN}
  End

  Delay 250
  MousePos $XTRS, $YR3A
  SetConst XVar = $XTRS
  Delay 250
  //LeftClick
  Delay 250
  //Keys {RETURN}

  //loop through 3rd 7 boxes adding wood
  Loop 6
    Compute XVarSet = $XVar + $XAdd
    SetConst XVar = $XVarSet
    Delay 250
    MousePos $XVarSet, $YR3A
    Delay 250
    //LeftClick
    Delay 250
    //Keys {RETURN}
  End

  Delay 250
  MousePos $XTRS, $YR4A
  SetConst XVar = $XTRS
  Delay 250
  //LeftClick
  Delay 250
  //Keys {RETURN}

  //loop through 4th 7 boxes adding wood
  Loop 6
    Compute XVarSet = $XVar + $XAdd
    SetConst XVar = $XVarSet
    Delay 250
    MousePos $XVarSet, $YR4A
    Delay 250
    //LeftClick
    Delay 250
    //Keys {RETURN}
  End
//End


Charcoal Macro

//Make 28 bonfires of 11 wood each; //line up 28 bonfire boxes in rows of 7, tiled, so that 'r' of bonfire is last letter; // X wood in inv, varying loop on line 101 as need be; //run this before actual macro to ensure mouse will hit right spots;

//*approximately* 20 seconds elapse between cycles; don't know if this affects oscillation

Constants

  YRTA = 90
  YRTL = 110
  YR2L = 255
  YR2A = 242
  YR3L = 403
  YR3A = 390
  YR4L = 550
  YR4A = 537
  XTRS = 105
  XAdd = 124
  XVar = 105
  XVarSet = 0
End

MousePos 100, 20 Delay 250 LeftClick

//loop through top 7 boxes lighting fire Delay 250 MousePos $XTRS, $YRTL SetConst XVar = $XTRS Delay 250 LeftClick

Loop 6

  Compute XVarSet = $XVar + $XAdd
  SetConst XVar = $XVarSet
  Delay 250
  MousePos $XVarSet, $YRTL
  Delay 250
  LeftClick
  Delay 250				//redundant delay
End

//loop through 2nd 7 boxes lighting fire Delay 250 MousePos $XTRS, $YR2L SetConst XVar = $XTRS Delay 250 LeftClick

Loop 6

  Compute XVarSet = $XVar + $XAdd
  SetConst XVar = $XVarSet
  Delay 250
  MousePos $XVarSet, $YR2L
  Delay 250
  LeftClick
  Delay 250				//redundant delay
End

//loop through 3rd 7 boxes lighting fire Delay 250 MousePos $XTRS, $YR3L SetConst XVar = $XTRS Delay 250 LeftClick

Loop 6

  Compute XVarSet = $XVar + $XAdd
  SetConst XVar = $XVarSet
  Delay 250
  MousePos $XVarSet, $YR3L
  Delay 250
  LeftClick
  Delay 250				//redundant delay
End

//loop through 4th 7 boxes lighting fire Delay 250 MousePos $XTRS, $YR4L SetConst XVar = $XTRS Delay 250 LeftClick

Loop 6

  Compute XVarSet = $XVar + $XAdd
  SetConst XVar = $XVarSet
  Delay 250
  MousePos $XVarSet, $YR4L
  Delay 250
  LeftClick
  Delay 250				//redundant delay
End

Delay 23000 //delay before adding wood so wood reaches 0

//loop through adding wood Loop 146 //change the number here to however many batches of 28 wood you'll use

  Delay 250
  MousePos $XTRS, $YRTA
  SetConst XVar = $XTRS
  Delay 250
  LeftClick
  Delay 240
  Keys {RETURN}

  //loop through top 7 boxes adding wood
  Loop 6
    Compute XVarSet = $XVar + $XAdd
    SetConst XVar = $XVarSet
    Delay 250
    MousePos $XVarSet, $YRTA
    Delay 250
    LeftClick
    Delay 240
    Keys {RETURN}
  End

  Delay 250
  MousePos $XTRS, $YR2A
  SetConst XVar = $XTRS
  Delay 250
  LeftClick
  Delay 240
  Keys {RETURN}

  //loop through 2nd 7 boxes adding wood
  Loop 6
    Compute XVarSet = $XVar + $XAdd
    SetConst XVar = $XVarSet
    Delay 250
    MousePos $XVarSet, $YR2A
    Delay 250
    LeftClick
    Delay 240
    Keys {RETURN}
  End

  Delay 250
  MousePos $XTRS, $YR3A
  SetConst XVar = $XTRS
  Delay 250
  LeftClick
  Delay 240
  Keys {RETURN}

  //loop through 3rd 7 boxes adding wood
  Loop 6
    Compute XVarSet = $XVar + $XAdd
    SetConst XVar = $XVarSet
    Delay 250
    MousePos $XVarSet, $YR3A
    Delay 250
    LeftClick
    Delay 240
    Keys {RETURN}
  End

  Delay 250
  MousePos $XTRS, $YR4A
  SetConst XVar = $XTRS
  Delay 250
  LeftClick
  Delay 240
  Keys {RETURN}

  //loop through 4th 7 boxes adding wood
  Loop 6
    Compute XVarSet = $XVar + $XAdd
    SetConst XVar = $XVarSet
    Delay 250
    MousePos $XVarSet, $YR4A
    Delay 250
    LeftClick
    Delay 240
    Keys {RETURN}
  End
End

Written by Ouroboros. Macro code last updated October 3, 2004.


NameCreatorDateSizeDescription
Pinboxes.jpgDivinityOctober 6, 2005 4:18 pm250781This is the screenshot of how to pin the boxes.
boxtestGumaliOctober 4, 2004 9:33 pm3216This is the box test file for those of you who can't properly copy/paste it.
charcoalGumaliOctober 4, 2004 9:34 pm3421this is the charcoal macro

Home | Atlas | Guides | Tests | Research | Index | Recent Changes | Preferences | Login
View source text of this page | | Create/Edit another page | View other revisions
Last edited October 6, 2005 6:16 pm by Divinity (diff)
Search: