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:Eldrad/Macros

From A Tale in the Desert
Jump to navigationJump to search

All Macros

I've generally stopped playing so I figured I'd release all the macros I've written to give people a good place to start off writing their own cross platform general macros. These are all the macros I've written except my Reactory macro which I believe Plur would be unhappy if people used and I only wrote because he said it couldn't be written at the Player's Meet.

Some of these macros are relatively user friendly others will require recoding for others to use (or are poorly documented how to start them).

Setting Up

These macros will run on any operating system. To run it you just need to have Java installed. Download this file and run it. To download the file click the link, then check that the "current" version was uploaded by someone who you trust then click on the "EldradMacros.jar" link at the top of the page. (Note it's important to check who uploaded the file before downloading it. As this is a wiki anyone could change the file to something malicious)

Source

If you'd like to take a look at the source code it's here.

List of Macros

  • Mining - User Friendly - more instructions in bottom section
    • Iron
    • Copper
    • Tin
    • Lead
    • Antimony
    • Aluminum
    • Silver
    • Zinc
    • Titanium
    • Magnesium
  • Click
    • User Friendly
    • Can click a particular location X times every Y seconds.
  • StatClick
    • User Friendly
    • Clicks a particular location X times while watching a particular stat timer.
  • Gather
    • User Friendly
    • Clicks a particular location any time it is an exact color, good for slate, grass, modding the E! board.
  • Clay
    • User Friendly
    • Gathers clay, stashes it in a warehouse and refills jugs. Will continue to work until the warehouse is filled.
  • Boards
    • Use at your own risk (fails ungracefully)
    • Will use any number of wood planes set up in a rectangle to plane boards. If something goes wrong it will click a lot, it also might have some assumptions like that the wood planes are owned by a guild.
  • Charcoal
    • User Friendly
    • Will use any number of charcoal ovens set up in a rectangle to make charcoal.
  • CarpBlade
    • Not well documented
    • Makes carp blades on an anvil, makes some assumptions about orientation of the anvil.
  • Barrel
    • User Friendly
    • Will use any number of Barrel Vises set up in a rectangle to make barrels.
  • ToxinKitchen
    • Mostly User Friendly
    • Will use any number of Toxin Kitchens set up in a rectangle to make Nut's Essence or Solvents. Might sometimes run into problems when multiple kitchens are ready at the same time and look at your stat timer before it has been updated (I might've fixed that don't remember).
  • Crematory
    • Requires minor recoding
    • Which buttons effect which sliders on each crematory is hard coded as an array in this macro. If you want to use it on your own crematories you will have to change it to mach your crematories.
  • Papy
    • Not friendly
    • The particular papy route is hard coded in an array which you would probably want to modify to match your particular papy route. This is also a processor intensive and requires some finesse when setting up.
  • Woodcutter
    • Difficult to set up
    • This will run an arbitrary wood gathering route over any distance but requires you walk the macro through the route once.
  • Resin
    • Difficult to set up
    • Works like the wood cutter but gathers resin instead.
  • Alembic
    • Poorly written/Documented
    • I wrote this quickly and sloppily, and didn't document it. It should make spirits at an alembic but requires some actions by the player.
  • Thistles
    • Poorly Documented
    • Requires a 'recipe.txt' file with the particular recipe you'd like to run and ATITD is very slow when you have a large number of pinned windows so if you run a large number of gardens you can't consistently do something in two consecutive steps.
  • Raeli
    • Poorly Documented
    • This will watch a raeli oven for a particular color and stop the oven when it reaches that color (for those of us with bad attention spans). It is not perfect and might make mistakes, also it requires you put in the exact RGB value that I assigned to that color instead of a color name the RGB value I assigned should be identical to that of the T1, T2, T3, and T4 wiki information for that color (generally easily found on the Paint pages instead of the raeli pages).
  • ReadFlowerColor
    • Limited use
    • This will determine the colors of orchid petals and print them out to a file in a format that's not documented. With a little bit of recoding you could make it work for any flower, but it's not perfect and you have to adjust for the direction of where the lighting is coming from when you're using it because colors will change depending on the angle the light is hitting them.

Mining Macro

Setting Up

This is a macro for mining. It will run on any operating system. To run it you just need to have Java installed. Download this file and run it. To download the file click the link, then check that the "current" version was uploaded by someone who you trust then click on the "Macros.jar" link at the top of the page. (Note it's important to check who uploaded the file before downloading it. As this is a wiki anyone could change the file to something malicious)

Version 2 of the macro watches your stats instead of just closing the stat pop up and now works with all mines regardless of them being guilded, public, labeled, repaired, and/or empty.

Note: If you're here for Humbuk's version capable of mining Tungsten, download this instead.

Ores

Currently the macro works with the following types of ore:

  • Iron
  • Copper
  • Tin
  • Zinc
  • Antimony (I don't believe Egypt currently has the right method for mining Antimony, but this one does a passible job)
  • Lead
  • Silver
  • Aluminum
  • Titanium
  • Magnesium

It does not currently work for, but will if I ever need to mine them:

  • Tungsten
  • Lithium

It probably won't ever do these unless I need a lot of them:

  • Gold
  • Platinum
  • Strontium

Trouble Shooting

There are a couple things that can commonly go wrong I'll try to keep a list of them here. First step to trouble shooting is make sure you've got the most recent copy of the macro.

  • Download the new version of the Macro VERSION 2.
  • You must have "Right Click opens menus pinned" turned OFF. The macro will not work if this feature is on.
  • The window that opens when you click on a crystal must be far enough away from the sides of the game window that it doesn't touch. If it does the macro will get stuck.
  • If you change the camera position or move your avatar you will have to restart the macro.
  • The macro is not perfect it will sometimes fail to mine the right crystal. For ores that use the memory game this will result in a large number of failures in a row.
  • Any ore that uses the memory game will start off by getting a few pulls at the minimum then a number of pulls that get no ore per pull (or randomly get lucky and get a bit). Before they start getting a steady 7 ore per pull (or slightly less if your OE level isn't 5 for copper and iron).

Source Code

If you'd like to take a look at the source code it's here.

Sources, extended for Tungsten by Humbuk/Bastet.

Tools

These aren't actually macro's but tools I use to do certain computationally expensive tasks with game mechanics. These won't be helpful to you unless you both know what you're doing and want to accomplish these particular tasks.

Mutagenics Helper

This was written in T3 and I haven't actually touched it since so it might not work perfectly for T4 (but I think it actually should). The file and source code can be found here.

What you need to know to use this:

  • This is written in Python with a text based UI so should be started from a command prompt with "python mutagenics.py"
  • It expects 3 files in the same directory as the program with the default names of "flowers.txt", "mutagens.txt" and "names.txt" (alternatively you can specify up to 3 other files in that order when you run the program).
    • flowers.txt should have one plant on each line with the following format:
      • "<Long Plant Name>(tab)<genome without spaces and including the Ks>" (doesn't actually handle extra white space but is case insensitive)
      • Note that the flowers.txt file should refer only to one species of plants not all of them. If you are working with multiple species you can make a file for each species and specify which file to use in the first command line argument.
    • mutagens.txt should have one "hit" on each line (ie where the A or B side of a particular mutagen hits a particular plant) with the following format:
      • "<plant name, doesn't actually have to match anything>(tab)<Short Mutagen Name>(tab)<A|B>(tab)<# of the gene that is hit, 1 is the first gene>(tab)<length of the genome>
    • names.txt should have one mutagen or plant per line with the following formats:
      • "<Long Plant Name>(tab)<Short Plant Name>" Note: the Long Plant Names must match the Long Plant Names from the flowers.txt file.
      • "<Short Mutagen Name>(tab)<Long Mutagen Name>" Note: the Short Mutagen Names must match the Short Mutagen Names from the mutagens.txt file.

Chemistry Recipe finder

This program finds the cheapest recipe for each possible required Chemistry Extract Recipe. The file and source code can be found here.

What you need to know to use this

  • This is written in Python with text output and should be started from a command prompt with "python chemrecipes.py"
  • It expects 1 file in the same directory as the program named "essences.txt" with one essence on each line with the following format:
    • "<Essence Name>(tab)<-3 to 3>(tab)<-3 to 3>(tab)<-3 to 3>(tab)<-3 to 3>(tab)<-3 to 3>(tab)<-3 to 3>(tab)<-3 to 3>(tab)<-3 to 3>(tab)<Cost>"
      • the 8 values from -3 to 3 are the attribute values, the Cost is how much you value that material (the lower the value the more likely it is to use it)
  • This program takes a while to run (especially for Set). Currently the program doesn't run Set which can be changed by changing the two lines bellow the comment "# bellow is "if not(SET)""
  • Currently it's multi-threaded with 4 threads which can be changed by setting "numProc = 4" to something else. The multi threading is bugged so the threads don't close properly most of the time so you won't get the final print (just the during execution print which is out of order) and you'll have to manually kill the process.