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:Viscis
Macros
Brief
For all my macros I use ACTools which is a easy to use program once you've had a little practice. With all of my templates you will need to make some small ajustments based on your computer.
Whilst using any macro that requires movement (grass, flax, etc) you must close chat down ingame and have movement keys enabled for it to work correctly.
The ATITD window must also have focus the whole time you are macroing because keyboard inputs are sent directly. Each macro has a 10 second delay from when you hit start so that you can correctly focus the window and position yourself.
Configuration (Mouse)
For any of my macros to work correctly with your system you will need to configure the location of certain icons / menus using ACTools. For example see the pictures below.
Both of these images show the area where your mouse should be when trying to get a mouse location for ACTools. With ACTools in focus hover over the location requests (max button, jugs/grass/clay icon and press CTRL-M. This will record the location of the mouse to your macro.
Configuration (Delay/Keydown)
Time values are recoreded in milliseconds. Therefore 1000 in the macro is approximatly 1 second of real time.
Delay 1000
The above code therefore delays the program for 1 second, either to allow movement or just to prevent error due to server lagg. Sometimes you may need to alter delays in order to achieve better efficence or simply because of location differences.
Keydown {UP} 10000
The Keydown command can also carry a delay component. This above command is equivilent to holding down the Up Arrow key for 10 seconds. Obviously you may need to change this depending on how far you must run for certain resources to become available.
Flint
This macro assumes that you are standing near water and there is a clay patch infront of you. This is slighty more advance and requires some configuration based on user preference.
You need to configure; The fill jugs with water location, the max button location, the distance in seconds from water to a clay patch, the number of jugs you are carrying and depending on your game window scale the menu for dropping items (see my quick guide to menu macroing here)
Please note you will need to start with empty jugs for this to work correctly.
delay 10000 // Wait 10 seconds MousePos 256, 59 // Fill jugs with water icon location LeftClick Delay 1000 MousePos 648, 539 // Max button location LeftClick Delay 1000 KeyDown {UP} 5000 // Walk forward so that I am in the clay patch (5000 is 5 seconds of holding down forward) Delay 5000 // Same delay as above for walking time loop 500 // Repeat x loop 22 // Number of jugs you have in your inventory divided by 2 loop 1 KeyDown {UP} delay 1500 MousePos 128, 117 // Clay Icon location LeftClick end loop 1 KeyDown {DOWN} delay 1500 MousePos 128, 117 // Clay Icon location LeftClick end end KeyDown {DOWN} 3500 // Run back to the water Delay 5000 // Drop clay // This works on the theory of the relative positioning of menus. If you open a menu at mouse x,y the next level of the sub-menu will appear and x+1,y+1 always. MousePos 644, 524 // open menu here Delay 500 Keys {ESC} Delay 500 MousePos 737, 480 // select drop Leftclick Delay 500 MousePos 765, 456 // clay Leftclick Delay 500 MousePos 648, 539 // max Leftclick Delay 500 MousePos 240, 80 // refill jugs LeftClick Delay 1000 MousePos 648, 539 // max button LeftClick Delay 1000 KeyDown {UP} 5000 Delay 5000 MousePos 128, 117 leftclick end
Grass
Another simple macro, run forwards, run backwards harvesting grass. The running forward and backwards parts and encapsulated because other functions can be added such as dropping grass into a chest.
delay 10000 loop 249 // change if you have 498 slots etc loop 1 KeyDown {UP} 500 MousePos 124, 80 LeftClick delay 3000 end loop 1 KeyDown {DOWN} 500 LeftClick delay 3000 end // Add chest drop here end
Wood
For this to work correctly find a bunch of high yield trees and turn off the auto harvest wood feature. Select each of the trees near you and pin the windows. Then record the mouse location of each of the pinned windows and hit start. As a side note you can add in extra things to do whilst your waiting for the trees to refresh (pick grass, dirt etc)
delay 10000 loop 50 // Number of times to harvest the trees //tree one MousePos 487, 825 // Change these locations to the pinned windows leftclick delay 500 leftclick // clicked twice to refresh the window delay 2500 //tree two MousePos 561, 732 leftclick delay 500 leftclick delay 2500 //tree three MousePos 499, 649 leftclick delay 500 leftclick delay 2500 //tree four MousePos 553, 564 leftclick delay 500 leftclick delay 2500 // tree five MousePos 537, 483 leftclick delay 500 leftclick delay 2500 //tree six MousePos 547, 397 leftclick delay 500 leftclick delay 2500 //tree seven MousePos 549, 304 leftclick delay 500 leftclick delay 2500 delay 50000 // wait 60 secs for wood to refresh end
Flax
This is probably my favorite macro as it allows flax to be layed in perfect beds of 10, 20 or 200. For best results align your character North before starting the macro.
There are two loops, one controls rows and one controls flax per row. I have labeled them A and B in the code.
A will always be +1 higher than the value you set (set BOTH loop values identically) so for example
loop 5
will lay 6 flax per row. Because each loop consists of a up and down component B is always *2 number of rows. For example
loop 2
will create 4 rows of flax.
So when A = 5 and B = 2 you will create a square of 6 x 4 flax (20 flax)
delay 10000 //MousePos 1092, 120 // Flax seeds (pinned to screen) LeftClick loop 2 //this one controls how many rows (n*2) (B) loop 5 //this one controls how many in a line (n+1) (A) KeyDown {UP} 300 Delay 1000 Leftclick end KeyDown {RIGHT} 300 Delay 1000 Leftclick //this one controls how many in a line (n+1) loop 5 //this one controls how many in a line (n+1) (A) Keydown {DOWN} 300 Delay 1000 Leftclick end KeyDown {RIGHT} 300 Delay 1000 Leftclick end
Limestone
This is perhaps the simplest macro to run as all that is required to click the limestone icon every time your endurance is refreshed. You will need to configure the location of the limestone icon and position your character on some limestone.
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 95000 end
AutoFlax
Coming shortly...
- A seeding macro for planting/harvesting seeds from flax beds automatically
- A harvesting macro for harvesting flax automatically
Below is the initial code for harvesting flax seeds from a bed. It does not work 100% correctly but does manage to harvest seeds from a bed you plant. The ideal conditions are below.
- 1280x1024 screen size
- F5 camera fully zoomed out
- Flax plant pinned to screen with mouse hovered over
- Character facing exacly N, S, E or W with camera angle 0 degrees from that rotation
Some user input is still required but i am hoping to resolve this soon. I have also made the leap to procedures and constants to make my work more user friendly. Feel free to mess with the constants in order to change size/dimensions or timings rather than having to edit each line of code.
delay 10000 //MousePos 1092, 120 Call Plant Delay $iDelay loop 3 Call Pick Delay $iRepeat end // Constants -- DO EDIT -- // // ======================== // CONSTANTS iRows = 2 // number of rows /2 (2 = 4 so if you want 4 enter 2) iFields = 5 // number of fields - 1 (2 = 3 so if you want 3 enter 2) iReturn = 1500 // number should be (300 * (iRows * 2)) + 300 iDelay = 30000 // delay time before harvest iRepeat = 10000// delay time between harvests END // Procedures -- DO NOT EDIT -- // // ============================ // Procedure Plant leftclick // plant first loop $iRows //this one controls how many rows (n*2) loop $iFields //this one controls how many in a line (n+1) KeyDown {UP} 300 Delay 500 leftclick end KeyDown {RIGHT} 300 Delay 500 Leftclick loop $iFields //this one controls how many in a line (n+1) Keydown {DOWN} 300 Delay 500 Leftclick end KeyDown {RIGHT} 300 Delay 500 Leftclick end Call Return End Procedure Pick Call SeedGrab // grab first one loop $iRows //this one controls how many rows (n*2) loop $iFields//this one controls how many in a line (n+1) KeyDown {UP} 300 Delay 500 Call SeedGrab end KeyDown {RIGHT} 300 Delay 500 Call SeedGrab loop $iFields //this one controls how many in a line (n+1) Keydown {DOWN} 300 Delay 500 Call SeedGrab end KeyDown {RIGHT} 300 Delay 500 Call SeedGrab end Call Return End Procedure SeedGrab MousePos 648, 510 delay 500 leftclick delay 100 MousePos 670, 508 delay 500 leftclick delay 2000 End Procedure Return keydown {LEFT} $iReturn delay 1000 End
Chest Drop
If you keep the chest window open and stay within range (i.e. when harvesting some wood build a chest close by) select the "browse" button and select the item you will be depositing. Then simple add into the macro a mouse position for the "1000" button and a left click to drop each cycle.