Rotating macro menus in FFXIV

by AJ "Tyron" Martinez @ worldsbe.st • March 13 2019

Hey! This post was intentionally delisted for being boring, inaccurate, outdated, or any combination of the three. I've left it up for archival purposes, but keep the context in mind!

Try the updated version of this, which I’m still daily-driving.

Continue at your own risk!

This isn’t really a full-fledged post, but whatever.

FFXIV macros allow you to manipulate hotbars slot-by-slot or bar-by-bar. You can Ctrl+F /hotbar on this page for exact details on the syntax. A lot of people have guides or examples up for expanding macro menus, using subcategories or showing/hiding temporary hotbars, but I wanted something static, simple, and with high capacity. I also wanted to be able to modify it without needing to switch classes, unhide hotbars, or shuffle macro names.

This is the simplest thing I could come up with that satisfied me and fit in the 15-line macro limit; it uses 10 hotbars to store the 5 currently-unused pages, and another 2 for temporary storage.

The macro

Designate two hotbars in your HUD for use with this macro. Under Character Configuration > Hotbar Settings > Sharing, make sure they are marked as shared. If you don’t do this, they won’t appear.

shared hotbar example

Paste each of the macros below into your favorite text editor. Find and replace $CLASS$ with the three-letter code of any unused class that isn’t Weaver,1 like cnj for Conjurer or arc for Archer. Find and replace $BAR1$ and $BAR2$ with the numbers of the hotbars that you set aside for this macro menu (in my case, that’s 7 and 8).

Page forward

/macrolock
/hotbar copy share $BAR1$ wvr $BAR1$
/hotbar copy share $BAR2$ wvr $BAR2$
/hotbar copy $CLASS$ 5 share $BAR1$
/hotbar copy $CLASS$ 10 share $BAR2$
/hotbar copy $CLASS$ 4 $CLASS$ 5
/hotbar copy $CLASS$ 3 $CLASS$ 4
/hotbar copy $CLASS$ 2 $CLASS$ 3
/hotbar copy $CLASS$ 1 $CLASS$ 2
/hotbar copy wvr $BAR1$ $CLASS$ 1
/hotbar copy $CLASS$ 9 $CLASS$ 10
/hotbar copy $CLASS$ 8 $CLASS$ 9
/hotbar copy $CLASS$ 7 $CLASS$ 8
/hotbar copy $CLASS$ 6 $CLASS$ 7
/hotbar copy wvr $BAR2$ $CLASS$ 6

Page back

/macrolock
/hotbar copy share $BAR1$ wvr $BAR1$
/hotbar copy share $BAR2$ wvr $BAR2$
/hotbar copy $CLASS$ 1 share $BAR1$
/hotbar copy $CLASS$ 6 share $BAR2$
/hotbar copy $CLASS$ 2 $CLASS$ 1
/hotbar copy $CLASS$ 3 $CLASS$ 2
/hotbar copy $CLASS$ 4 $CLASS$ 3
/hotbar copy $CLASS$ 5 $CLASS$ 4
/hotbar copy wvr $BAR1$ $CLASS$ 5
/hotbar copy $CLASS$ 7 $CLASS$ 6
/hotbar copy $CLASS$ 8 $CLASS$ 7
/hotbar copy $CLASS$ 9 $CLASS$ 8
/hotbar copy $CLASS$ 10 $CLASS$ 9
/hotbar copy wvr $BAR2$ $CLASS$ 10

When you’re done replacing, the result should look vaguely like this; note that this is an older version of the macro.

example page forward macro

If you want your menu to include page numbers, copy the “page back” macro to 6 separate macro slots, assigning each of them a numbered icon. This is sort of an ugly hack, but it’s what we’ve got and you won’t notice a difference in practice.

If you don’t want a “page back” button at all, you don’t need one: pages loop and wrap around, so navigating in one direction only is totally fine.

Drag the navigation macros to the preferred slots of the hotbars you set aside. Click either macro to change the page forward or back (they will disappear), then repeat until all 6 pages show the navigation macros.

Since these hotbars are likely to be empty or filled with random garbage initially, you might want to move things around a bit to check that the macro is working. If your navigation macros are in the same slot on each page, you can also keybind that slot for easy page switching. Or you can keybind every slot. I don’t make the rules, I just copy hotbars.

Shortcomings

The macro takes a small amount of time to execute while it performs the 14 required copy operations. If you’re switching pages at a leisurely pace, it won’t get in your way, but if you mash the button /macrolock will stop you. I placed the visible hotbar modifications as early as I could to make it feel more responsive, but the other copies still have to happen behind the scenes.

If the macro is interrupted by an instance transition (like a teleport sequence), your hotbars will be left in a half-updated state and at least one of your pages will likely corrupt or duplicate. You pretty much have to do this on purpose, so it’s not a real problem in use, but it’s a good thing to be mindful of.

Because this is a 15-line macro, you can’t add a /macroicon line and are limited to the default macro icon choices. If you would rather have a custom icon than a 6th page, it’s fairly trivial to do this (but back up your hotbars first just in case).

Tips and tricks for your own macro menus

Classes have separate hotbars from the jobs they eventually become—for instance, a CNJ has separate hotbars from a WHM. Unless you plan on doing meme runs, you can use your class hotbars freely for macro menu shenanigans; you will never need your CNJ hotbars again once you acquire your WHM soulstone,2 and the same goes for every other class. Similarly, if you don’t plan on crafting or gathering, you can use crafter or gatherer hotbars in the same way.

Shared hotbars are also separate from class/job hotbars, and are accessed with the keyword share in place of a class/job code. These do not magically disappear when you “unshare” a hotbar; they’re always stored, so the shared versions of class-specific hotbars (or the class-specific versions of shared hotbars) are also excellent for storage.

/macrolock is good practice for most hotbar modification stuff, but especially if they touch 14 separate hotbars in a highly specific order. If multiple hotbar-modifying macros are running at the same time, it creates mustard gas.

If you’re a cocaine elemental, you can probably do something cool with /hotbar share [number], which toggles a given hotbar between shared and unshared.


  1. This doesn’t actually fuck up your Weaver hotbars, since it only uses the Weaver vesrion of a hotbar that will already be shared for use with the macro; it’s effectively working with hidden space. Don’t worry about it too much. ↩︎

  2. RIP crossclassing ↩︎