Crafting macros

A good set of crafting macros can make creating a set of identical items much less tedious. This is wonderful for grinding XP or for making lots of a component that requires no experimentation.

What follows is the commonly reproduced macro and a variation on it.

Basic Grinding Macro
This is from How to macro craft without "/selectDraftSchematic".

the grindCraft macro
This macro has a section for each crafting tool you will use and assumes you have your crafting tools in slots 1, 2, ... N. You need to have a section beginning "/ui action toolbarSlot0x" for each crafting station (x is the slot number - 1, so 00 for slot 1). Most people recommend at least three tools as a low level artisan and up to eight tools for a high level crafter.

You need to create the following macro (called grindCraft in this example).

/ui action toolbarSlot00;         <-- Selects your crafting tool in the F1 slot /pause 1;                         <-- Wait for it to load (increase this based on lag) /ui action defaultButton;         <-- Automatically press the "Next" button /pause 10;                         <-- Wait for you to load the resources (increase this based on # of resources) /nextcraftingstage;               <-- Finish the item and close the tool /nextcraftingstage; /nextcraftingstage; /createprototype practice noitem; /createprototype practice noitem; /pause 1;                         <-- Pause just a second before continuing

/ui action toolbarSlot01;         <-- Select your crafting tool in the F2 slot /pause 1; /ui action defaultButton; .....                             <-- Use as many iterations as you have tools

The last line of the macro should be /macro grindCraft; this puts the macro in a loop and it will continue until you use the /dump command to end it.

using the macro
To use the macro, you open your crafting tool and select the schematic for the item you wish to make and exit without making it. You then run the following macro as "/macro grindCraft". It will open the first crafting tool, wait 4 seconds at the Item Assembly Screen for you to load the resources (the "/pause 4"), and then complete the practice crafting session.

non-practice version
If you want to actually produce the items, replace the lines /createprototype practice noitem; /createprototype practice noitem; with /createprototype; /createprototype;

Alias Variation
You can use aliases to make this macro a bit easier to manage. Instead of having to adjust pauses in each section of the macro, each pause only appears once.

nextTool
This alias and it's series of macros automatically selects the next crafting tool to use and cycles through them. You create the initial alias as: /alias nextTool /macro useTool1

You then create a series of macros, one for each tool (in this example 4 tools in slots 1 through 4 of tool bar 3:

/macro useTool1 /ui action toolbarPane02;         <-- switch to crafting toolbar /ui action toolbarSlot00;         <-- open the tool /alias nextTool /macro useTool2;  <-- prepare for the next tool in cycle /macro useTool2 /ui action toolbarPane02; /ui action toolbarSlot01; /alias nextTool /macro useTool3; /macro useTool3 /ui action toolbarPane02; /ui action toolbarSlot02; /alias nextTool /macro useTool4; /macro useTool4 /ui action toolbarPane02; /ui action toolbarSlot03; /alias nextTool /macro useTool1;

practice
This alias replaces the basic macro. It is basicly the same, but uses the nextTool alias to avoid repeating all the lines for each tool.

/alias practice /macro doGrindCraft

/macro doGrindCraft /nextTool;                        <-- Selects the next crafting tool in the cycle /pause 1;                         <-- Wait for it to load (increase this based on lag) /ui action defaultButton;         <-- Automatically press the "Next" button /pause 10;                         <-- Wait for you to load the resources (increase this based on # of resources) /nextcraftingstage;               <-- Finish the item and close the tool /nextcraftingstage; /nextcraftingstage; /createprototype practice noitem; /createprototype practice noitem; /pause 1;                         <-- Pause just a second before continuing /doGrind;