My PTR Fire Mage Macro's

So this is what I am currently using at the moment. I guess it’s not so much a lazy macro where everything is on one button but for me, it helps make life simpler.

This is for static fights where no movement is done:

Sequences['BurnFire'] = {
specID = 63,
author = "Cymiryc",
helpTxt = "Talents - 1231223",
PreMacro = [[
/console Sound_EnableErrorSpeech 0
/targetenemy [noexists][noharm][dead]
]],
[[/castsequence [nochanneling] reset=combat/target !Fireball,Fireball,Fireball]],
[[/castsequence [nochanneling,@target] reset=4/target !Blast Wave]],
[[/castsequence [nochanneling] reset=combat/target !Fire Blast]],
PostMacro = [[
/script UIErrorsFrame:Hide();
/console Sound_EnableSFX 1
/console Sound_EnableErrorSpeech 1
]],
}

I find it’s no longer just about Pyroblast as Flamestrike is also instant cast when Hot Streak procs so I leave those on a separate binding.

For movement/kiting i have a similar macro but use Scorch in place of fireball. This means that no matter if I am moving or standing still I am always casting spells.

Sequences['FluidFlame'] = {
specID = 63,
author = "Cymiryc",
helpTxt = "Talents - 1231223",
PreMacro = [[
/console Sound_EnableErrorSpeech 0
/targetenemy [noexists][noharm][dead]
]],
[[/castsequence [nochanneling]reset=combat/target !Scorch,Scorch,Scorch]],
[[/castsequence [nochanneling,@target]reset=4/target !Blast Wave]],
[[/castsequence [nochanneling] reset=combat/target !Fire Blast]],
PostMacro = [[
/script UIErrorsFrame:Hide();
/console Sound_EnableSFX 1
/console Sound_EnableErrorSpeech 1
]],
}

Due to using this macro I find that Ice Floes is not all that great for me.

During invasions the FluidFlame maacro has been a life saver and the damage has been decent.

I have switched it a little bit more and find it’s really good for farming and does me well in dungeons at the moment. I really want to add Cinderstorm to it but really the arc scares me and i don’t want to be the new Hunter and pull unwanted attention/mobs…


Sequences['BurnFire'] = {
specID = '63',
author = "Cymiryc",
helpTxt = "Talents - 1231213 or 2231211",
StepFunction = GSStaticPriority,
PreMacro = [[
/console Sound_EnableErrorSpeech 0
/targetenemy [noexists][noharm][dead]
]],
[[/castsequence [nochanneling] reset=combat/target Fireball,Fireball,Fireball]],
[[/castsequence [nochanneling,@target] reset=12/target Living Bomb]],
[[/castsequence [nochanneling,@target] reset=4/target Blast Wave]],
[[/castsequence [nochanneling,@target] reset=21/target Dragon's Breath]],
[[/castsequence [nochanneling] reset=combat/target Fire Blast]],
PostMacro = [[
/script UIErrorsFrame:Hide();
/cast [combat] Ice Barrier
/console Sound_EnableSFX 1
/console Sound_EnableErrorSpeech 1
]],
}

and for moving:


Sequences['FluidFire'] = {
specID = '63',
author = "Cymiryc",
helpTxt = "Talents - 1231213 or 2231211",
StepFunction = GSStaticPriority,
PreMacro = [[
/console Sound_EnableErrorSpeech 0
/targetenemy [noexists][noharm][dead]
]],
[[/castsequence [nochanneling] reset=combat/target Scorch,Scorch,Scorch]],
[[/castsequence [nochanneling,@target] reset=12/target Living Bomb]],
[[/castsequence [nochanneling,@target] reset=4/target Blast Wave]],
[[/castsequence [nochanneling] reset=combat/target Fire Blast]],
PostMacro = [[
/script UIErrorsFrame:Hide();
/cast [combat] Ice Barrier
/console Sound_EnableSFX 1
/console Sound_EnableErrorSpeech 1
]],
}

For under 700 (698) ilvl i can pull a constant 40k/45k+ DPS while i am getting a lot of Hot streaks, keeping myself on fire and burning the world.

Hello,
Your macro is freking awesome:) tested it and i was doing around 35-40k on dummy on a 709ilvl(arcane optimized gear)I took it and did a little ‘‘trimm’’ and i am able to get around 10k more.Also the talents are 1122111.

Here is the code
Sequences[‘BurnFire’] = {
specID = ‘63’,
author = “Cymiryc”,
helpTxt = “Talents - 1231213 or 2231211”,
StepFunction = GSStaticPriority,
PreMacro = [[
/console Sound_EnableErrorSpeech 0
/targetenemy [noexists][noharm][dead]
]],
[[/cast [nochanneling]Rune of power]],
[[/castsequence [nochanneling] reset=combat/target Fireball,Fireball,Fireball]],
[[/castsequence [nochanneling,@target] reset=12/target Living Bomb]],
[[/castsequence [nochanneling,@target] reset=4/target Blast Wave]],
[[/castsequence [nochanneling] reset=combat/target Fire Blast]],
PostMacro = [[
/script UIErrorsFrame:Hide();
/console Sound_EnableSFX 0
/console Sound_EnableErrorSpeech 0
]],
}

sorry,i don’t know how to put it in the square:P

thank you again

Thank you :slight_smile:

Your tweak is how i use to run my macro to be honest!

I swapped out Rune of Power because i move a bit and didn’t want to add in another spell to the rotation, also it’s not too much of a loss, especially if i use FluidFire. Buyt hey, it’s interchangeable :slight_smile:

Only reason i added in Dragon’s Breath is for when you gain the artefact, you will have an increased range with it do made sense to add into the rotation.

Finally Ice Barrier was only added in for defense and to be lazy/all in one. Might interrupt the flow of the macro. Personally i don’t run with it in mine and use it on demand… like Pyroblast :slight_smile:

For now in this Pre-Patch it works amazingly well :wink:

I’m sure that this is a total noob question but is this macro for GS? Because every time I try to load it up it doesn’t work for me… Not sure if I’m missing something…

It’s more for GS-E so it’s missing the Stepfunction.

If you are staying with GS then:


Sequences['BurnFire'] = {
StepFunction = [[
		limit = limit or 1
		if step == limit then
			limit = limit % #macros + 1
			step = 1
		else
			step = step % #macros + 1
		end
]],
PreMacro = [[
/console Sound_EnableErrorSpeech 0
/targetenemy [noexists][noharm][dead]
]],
[[/castsequence [nochanneling] reset=combat/target Fireball,Fireball,Fireball]],
[[/castsequence [nochanneling,@target] reset=12/target Living Bomb]],
[[/castsequence [nochanneling,@target] reset=4/target Blast Wave]],
[[/castsequence [nochanneling,@target] reset=21/target Dragon's Breath]],
[[/castsequence [nochanneling] reset=combat/target Fire Blast]],
PostMacro = [[
/script UIErrorsFrame:Hide();
/cast [combat] Ice Barrier
/console Sound_EnableSFX 1
/console Sound_EnableErrorSpeech 1
]],
}


Sequences['FluidFire'] = {
StepFunction = [[
		limit = limit or 1
		if step == limit then
			limit = limit % #macros + 1
			step = 1
		else
			step = step % #macros + 1
		end
]],
PreMacro = [[
/console Sound_EnableErrorSpeech 0
/targetenemy [noexists][noharm][dead]
]],
[[/castsequence [nochanneling] reset=combat/target Scorch,Scorch,Scorch]],
[[/castsequence [nochanneling,@target] reset=12/target Living Bomb]],
[[/castsequence [nochanneling,@target] reset=4/target Blast Wave]],
[[/castsequence [nochanneling] reset=combat/target Fire Blast]],
PostMacro = [[
/script UIErrorsFrame:Hide();
/cast [combat] Ice Barrier
/console Sound_EnableSFX 1
/console Sound_EnableErrorSpeech 1
]],
}

These will do the same thing.

I didn’t even realize that there was a newer version… And it definitely seems way better… One question, where would I put your macro? Do I need to make a Sequences.lua file?

If you use GS then just add it into the sequences.lua file as normal.
If you use GS-E there will be a macros folder, you can add it there or adapt it to your own needs as in Draik’s readme.

I would suggest making your own GS-YourMacros folder following the same layout as when it’s updated, it will overwrite your macros :slight_smile:

Nice! Thanks a TON Cymiryc!!

Just a quick question and i will alter if needed but would people prefer to see Pyroblast in the macro?
Only reason i have not added it is i personally prefer to have it on a separate button due to the randomness of the actual proc and not hard casting it.

is there a way to put combustion in there?

Yeah there is and depending on how it’s added it can be a dps loss for the first 2 minutes or it locks up the script after it’s cast so i have added it in as a mod button instead just for completion sake.
I personally prefer to keep that separate along with Pyroblast but this works with no real hiccups/lockups.

I tried adding it onto the end of the lines of Fireballs (Would have a decent ignite by then) but it will lock up and only continue to cast Living Bomb, Blast Wave, Fire Blast until Combustion finished it’s cooldown and either manage to cast fireball again or combustion and lock up again… not ideal.

I tried adding in Combustion after Fire Blast but the way your key presses happen and the rotation then it basically went: Fireball, Fire Blast(During Fireball), Blast Wave, Living Bomb, Fire Blast, Combustion… During this you lost a good deal of Ignite so it actually became a DPS loss, down at least 15k.

So i have come up with this which will keep the integrity of the sequence and allow you to press Shift for your Pyroblast and Alt to cast your Combustion when you want it. (Obviously these can be changed by yourself to what you would prefer).


Sequences['BurnFire'] = {
specID = '63',
author = "Cymiryc",
helpTxt = "Talents - 1231213 or 2231211",
StepFunction = GSStaticPriority,
PreMacro = [[
/console Sound_EnableErrorSpeech 0
/targetenemy [noexists][noharm][dead]
]],
[[/castsequence [nochanneling] reset=combat/target Fireball,Fireball,Fireball]],
[[/castsequence [nochanneling,@target] reset=12/target Living Bomb]],
[[/castsequence [nochanneling,@target] reset=4/target Blast Wave]],
[[/castsequence [nochanneling] reset=combat/target Fire Blast]],
[[/castsequence [nochanneling,mod:alt] Combustion]],
[[/castsequence [nochanneling,mod:shift] Pyroblast]],
PostMacro = [[
/script UIErrorsFrame:Hide();
/console Sound_EnableSFX 1
/console Sound_EnableErrorSpeech 1
]],
}

Now, i have noticed a snag with this that if you use AHK to hold the key down instead of manually pressing the key numerous times (doesn’t seem to affect using hardware keys or mouse button with delay) that if you keep the key pressed, it will ignore the Alt/Shift so you don’t cast Pryo or Combust and effectively lock you into just a lot of Fireballs. Not sure how to get around that as i am not the best with AHK. Other than that it works great.

I changed it a little to add a shield and to not nuke my sound

Sequences['BurnAmberFire'] = {
author="Ambergreen",
specID=63,
helpTxt = 'Talents: 2131111',
PreMacro=[[
/targetenemy [noexists][noharm][dead]
]],
icon='Spell_Fire_FireBolt02',
"/cast [nochanneling]Rune of power",
"/castsequence [nochanneling] reset=combat/target Fireball,Fireball,Fireball",
"/castsequence [nochanneling,@target] reset=12/target Living Bomb",
"/castsequence [nochanneling,@target] reset=4/target Blast Wave",
"/castsequence [nochanneling] reset=combat/target Fire Blast",
"/castsequence [nochanneling] reset=40 Ice Barrier",
PostMacro=[[
]],
}

I haven’t seen the mod codes there before … interesting. Out of curiosity does anyone else here use a gaming mouse?

I should have read this further down :slight_smile:

I do use a left handed Razer Naga (one of those people) but the mod codes do work with it

I looked into the [mod:anything] issue and it does appear that for some reason AHK completely ignores [Shift/Alt/Ctrl]

i think i can solve it with adding in an && if getkeystate(“shift”,“P”) on the end of an if getkeystate(“numpad1”,“P”)=0 then it might work.
I am no AHK expert though.

I’m trying all the macros you have given your first , but more so now what could cause a fall while 40-60 DPS should I use macros in which the opinion of your visit wonder

Critical Strike 46%
Haste : 14%
Mastery: 16%
versatiliy : 4%

ilvl 706

I use the macro

burnfire and fluidfire

I use a number of different issues at a macro in which it seems ?

I am fairly new to WoW and definitely new to the world of macros… my question is, when i try to use a macro you are suggesting, it gives me errors in game. Your codes look different than others I have found, can you explain to a newb which part I am copying wrong…

Lets say I want to use:

Sequences[‘BurnFire’] = {
StepFunction = [[
limit = limit or 1
if step == limit then
limit = limit % #macros + 1
step = 1
else
step = step % #macros + 1
end
]],
PreMacro = [[
/console Sound_EnableErrorSpeech 0
/targetenemy [noexists][noharm][dead]
]],
[[/castsequence [nochanneling] reset=combat/target Fireball,Fireball,Fireball]],
[[/castsequence [nochanneling,@target] reset=12/target Living Bomb]],
[[/castsequence [nochanneling,@target] reset=4/target Blast Wave]],
[[/castsequence [nochanneling,@target] reset=21/target Dragon’s Breath]],
[[/castsequence [nochanneling] reset=combat/target Fire Blast]],
PostMacro = [[
/script UIErrorsFrame:Hide();
/cast [combat] Ice Barrier
/console Sound_EnableSFX 1
/console Sound_EnableErrorSpeech 1
]],
}

Do I use the entire code for the macro? If yes, then how to I prevent the ingame errors of text over my head and no actions.

Or do i break down your code to the basic code, for example:
#showtooltip
/cleartarget [dead]
/targetenemy [noharm]
/castsequence reset=5/target Living Bomb,Fireball,Fireball,Fireball,Fireball

This code works great… but I am seeing that everyone approves yours to be the best, how do i make them work :slight_smile:

Thanks for your help and hard work!

To make them work you would need to download and install the Gnomesequencer - Enhanced addon which can be found Here

Once you have that installed all you would need to do is add the above macros/scripts into the Mage.lua file, save it, log into the game and create a new macro using only the name BurnFire, drag it to the bar and spam it to your lifes content.

I have semi abandoned this macro in favour of the other ones for legion leveling purposes but the instructions are the exact same until i update them to the new GS-E version in the next day or so.

I have never tried to make these for Macro Toolkit but i can take a stab at it but these tend to have more control.

Hope that helps!