haw do i marco???
What are macros/what is macroing?
Macros are user-defined commands that allow you to record up to 15 actions and trigger them with a user-specified key presses. They allow users to do things that aren’t humanly possible or increase ease of use of already existent actions. They can be made to do an extreme amount of functions due to the their very nature.
Getting started with macros:
FFXIV’s macro system allows you to specify one action per line, with up to 100 characters per line. Familarize yourself with the User Macro interface along with that Text Commands button. That will teach you all the commands you need to know, and all that you can do per action ingame. Here are the placeholders that the game doesn’t give you:
|Name of Target||<t>||/p git rekt <t>|
|Name of Focus Target||<focus> or <f>||/ac Aero <focus>|
|Name of Target's Target||<tt>||/ac Virus <tt>|
|Name of Pet||<p> or <pet>||/ac Sustain <p>|
|Name of Mouse-over Target||<mo>||/ac Cure <mo>|
|Name of Your Player Character||<me> or <0>||/ac Protect <me>|
|Name of Party Member in Slot 2||<p1> or <1>||/ac Stoneskin <1>|
|Name of Party Member in Slot 3||<p2> or <2>||/ac Stoneskin <2>|
|Name of Party Member in Slot 4||<p3> or <3>||/ac Stoneskin <3>|
|Name of Party Member in Slot 5||<p4> or <4>||/ac Stoneskin <4>|
|Name of Party Member in Slot 6||<p5> or <5>||/ac Stoneskin <5>|
|Name of Party Member in Slot 7||<p6> or <6>||/ac Stoneskin <6>|
|Name of Party Member in Slot 8||<p7> or <7>||/ac Stoneskin <7>|
|Name of Party Member (Pet) in Slot 9||<p8> or <8>||/ac Stoneskin <8>|
|Name of Entity With Sign "Enemy To Attack #"||<attack1>, <attack2>, <attack3>, <attack4> or <attack5>||/ac "Stone II" <attack1>|
|Name of Entity With Sign "Enemy To Ignore #"||<ignore1>, <ignore2>||/ac "Sleep" <ignore2>|
|Name of Entity With Sign "Enemy To Bind #"||<bind1>, <bind2>, <bind3>||/ac "Tri-Disaster" <bind3>|
|Name of Entity With Shape Sign||<square>, <circle>, <triangle>, <cross>||/ac "Adloquium" <square>|
|Name of Previous Target||<lasttarget> or <lt>||/ac "Sleep" <lt>|
|Name of Last Enemy Targetted||<lastenemy> or <le>||/ac "Fluid Aura" <le>|
|Name of Last Enemy Attacked||<lastattacker> or <la>||/p <la> is now unbound!|
|Mana Remaining||<mp>||/p HOLY SHIT BARD, GIVE ME MANA.|
|Name of Last Tell Sender||<reply> or <r>|
|Name of Current Class||<class>|
|Name of Current Job||<job>|
|Play Sound Effect #||<se.1> to <se.16>||/p STOP WITH THE SOUND EFFECTS <se.8>|
Lists are too long, pls explain :)))
So upon reading the list and making sense of it all (or if you didn’t read it), here’s a quick breakdown.
Advantages of macros:
- Allows users to construct code within 15 lines.
- aka pretty much infinite possibilities
- Including <> commands, you can have 30 actions per macro where 15 of them are wait commands.
- 100% required for anything that has high execution and low execution time, such as ASCII macros.
- Generally saves hotbar space by combining tools (see: PLD Oath toggle macro).
- Therefore eliminating repetitive tasks (i.e. Not-so-quick synthesis).
Neither-ors / Disadvantages of macros:
- Can’t call or replicate itself in any form besides /hotbar copy. This is to prevent botting. This also cripples a lot of the non-botting things you can do, such as manipulating HUD elements in mass.
- Can not adjust system settings in any fashion. Maybe you want something to control the sound in intervals of 10 a press? Can’t do that.
- Has no way to store states. You can’t have a macro store data temporarily.
- This mainly impacts the ability of toggling scripts. Taking the PLD Oath macro as an example, you can’t have the macro icon toggle when it is pressed.
- Is sub-optimal in rotations. Since wait commands are rounded to the nearest second, you will never have perfect precision. As such, your actions per minute will drop which is generally a bad thing. This has workarounds in smaller macros.
- No conditional statements excluding Step-Canceling.
Macros are pretty simple, but here are some special properties of them (aside from mentioned above)
A property of macros is that you can’t have more than one macro active at a time. Activating a macro that has no function but still outputs something, such as /merror, will interrupt any active macros. Extremely useful during crafting and during any long copypasta macro. Has its uses with one-line text macros as well.
Abusing GCDs: Command Buffering
Button mashing OP. This technique is sub-optimal and should not be used unless absolutely needed.
/macroicon “Skull Sunder”
/ac “Skull Sunder” <t> <wait>
/ac “Mercy Stroke” <t>
/ac “Butcher’s Block” <t> <wait>
/ac “Butcher’s Block” <t> <wait>
/ac “Butcher’s Block” <t>
(credit to /u/Sapphidia)
So, basically should you not spam the key, everything will go normally. If you hit the key again quickly after Skull Sunder goes off, the buffer that you inputted will cause the game to check for the 2nd BB to go off and not the 3rd one.
Cannot Be Used With/While Macros
This mainly applies to four jobs: Scholar, Paladin, Monk and Bard. The properties here are in the following: Selene’s Fey Glow/Light, Paladin’s Oaths, Monk’s Fists of and Bard’s songs. Let’s look at my Paladin’s Oath macro. Assume both Oaths are off.
/macroicon “Sword Oath”
/ac “Shield Oath” <me>
/ac “Sword Oath” <me>
- Line #1: Sword Oath icon for prettiness.
- Line #2: Disables macro errors from being logged.
- Line #3: Turns Shield Oath on.
- Line #4: Sword Oath can’t be used while Shield Oath is on.
- Use it again.
- Line #3: Turns Shield Oath off.
- Line #4: Sword Oath activates.
- What about a third time?
- Line #3: Shield Oath can’t be activated while Sword Oath is on.
- Line #4: Sword Oath deactivates.
You have two abilities with two states each. On & On, On & Off, Off & On and Off & Off. They both can’t be on, so this lets you have a toggle button with 3 states. This is more complicated to do with multiple actions and I personally haven’t tried it. Most people never use Fists of Wind in battle and Bard’s songs don’t really benefit from having this kind of macro since your MP gets continually used.
This is a completely better way of micromanaging Selene as well. If she’s on Sic, she won’t cast her buffs when it’s optimal to. If she’s on Obey, you have to remember to cast every 30s. If you play like me, you have your hotkeys poorly placed due to crapton of actions you have to map to yourself. This helps mitigate it. Toss on a <wait.30> and have an echo and you’re set.
Abusing GCDs: Step-Canceling Conditionals
Let’s take the typical Swiftraise macro and run through it. Assume you’re a White Mage and you are targeted onto a fallen ally. Swiftcast is not on cooldown.
/ac “Swiftcast” <me> <wait>
/ac “Raise” <t>
- Line #1: This will pop Swiftcast and then wait 1 second.
- Swiftcast is a non-GCD move, thusly called a cooldown spell. The thing about any cooldown is that they inflict a silence on you until they finish. All non-GCD abilities have an animation that can NOT be interrupted that is between 0.4s and 0.7s. It can be used as an 0.5s wait time that has a reload timer of whatever its cooldown is.
- Line #2: Since Swiftcast’s animation is done, Raise is readied.
What if we don’t wait for Swiftcast to finish? One of two things happen.
/ac “Swiftcast” <me>
/ac “Raise” <t>
- Scenario #1:
- Line #1: Swiftcast will be consumed.
- Line #2: Your client will try to cast Raise during the Swiftcast animation. It won’t be able to, but the macro can’t tell whether it was successful or not. You’ll get an error. The technique has been done.
- Scenario #2:
- Line #1: Swiftcast will be used.
- Line #2: Your client is sluggish and since the client doesn’t care how long it takes for your game to catch up, it’ll punch in the command and Raise will be used since the Swiftcast animation is over. This only applies to PS3s and old PCs.
- This also works with macros such as:
/micon “Fast Blade”
/ac “Fight or Flight” <me>
/ac “Fast Blade” <t>
/ac “Bloodbath” <me>
- You can spam the button and FoF will activate once, and then Fast Blade will be the first to activate each time afterwards. If you stop repeating the macro, Bloodbath will activate. Otherwise, Fast Blade will keep going off and you don’t want that, now do you?Since FB has a 2.5s recast time and is on a GCD, Bloodbath is nested within the recast time allowing your next attack (Savage Blade) to go off without a delay.
Abusing GCDs & Macro Cancelling: Mash Protection
Spamming one macro will constantly reset it. Let’s say you’re in panic mode as a White Mage and really need your ally up. Right now.
/ac “Swiftcast” <me>
/ac “Raise” <t> <wait>
/ac “Raise” <t>
- Line #3: Swiftcast goes off.
- Line #4: Raise gets skipped due to Swiftcast animation.
- Line #5: Raise will now activate.
- What if you interrupt it?
- Line #3: Swiftcast was consumed. Skipped.
- Line #4: Raise will now activate because Swiftcast wasn’t there to block its cast.
- Line #5: Nothing happens (assuming the first Raise wasn’t interrupted).
Having a secondary call within your macro allows you to hammer away at the key. Occasionally, macros will break due to either being interrupted or by being cancelled. This mitigates it somewhat. Alternatively, use /macrolock to prevent hammering from interrupting your macro should you need to string multiple macros together and can’t risk an interrupt. Do not do /macrolock with waits because if you screw it up the execution somehow, you’re locked out until the macro ends.
|/friendlist deny <r>|
/blist add <r>
|/blist remove "(Deleted)"||banned spambot cleaner|
|/micon "Mount Roulette"|
/ac "Mount Roulette"
/mount "Company Chocobo"
|custom mount roulette|
/ac "Hook" <me>
/ac "Mooch" <me>
/ac "Cast" <me>
/ac "Physick" <t>
/ac "Physick" <tt>
/pac "Embrace" <mo>
/pac "Embrace" <t>
/pac "Embrace" <tt>
|scholar is hard|
|/macroicon "Sword Oath"|
/ac "Shield Oath" <me>
/ac "Sword Oath" <me>
|so is paladin|
|keep your weapon glow while it's sheathed|
|/p <focus> is asking us for the sweet release of death @ <pos>.|| <se.8>|
/fc | Intel has found <focus>, an elite hunt mark, at the following coordinates: <pos>
/l2 | <focus> said some very impolite things about your mother and wants to 1v1 you IRL at <pos>.
/l3 | We have found the elusive hacker 4 Chan at <pos> under the alias of <focus>. Take him down.
/shout | Big 'ol meanie @ <pos> || Enemy: <focus>
|s rank hunt script|
/action "Summon" <me>
/hotbar pet "Embrace" 3 1
/hotbar pet "Whispering Dawn" 3 2
/hotbar pet "Fey Covenant" 3 3
/hotbar pet "Fey Illumination" 3 4
|my pride and joy|