I use multi-step macros.
By the way, where is your Earth Shock? Clipping the DoT to reapply FS every time your shocks are off cooldown is lowering your DPS, especially since SS increases the chance for ES to crit, and that crit carries over to triggering ED for more melee crits. It takes about 3 DoT ticks {9 seconds} for FS to surpass the damage of a non-crit ES.
Your castsequence will eventually cause you to fairly reliably get 3 DoT ticks in before refreshing due to your sequence sitting around waiting for LL to come off cooldown, but your fights will need to be longer than 30 seconds and you're still losing DPS because in some spots you've got 6 seconds of dead time between SS casting and LL where nothing's going on but autoattacks. You're also building up delays to the point where SS is constantly waiting off cooldown for 2+seconds while you get through casting FN and FS. All those delays quickly add up to a point where another SS could have been.
Code:
/castsequence [@party1target] reset=target Flame Shock, Earth Shock, Earth Shock
/cast Fire Nova
This gives 2 ES to 1 FS, allowing FS's DoT to run. With Reverberation, you can end up clipping the tail end of the DoT, but it'll still run long enough to be worthwhile. Without Reverberation, you chance FS dropping, but likely only for a second or two.
Code:
/castsequence reset=combat Stormstrike, Lava Lash, Stormstrike, Lava Lash, Stormstrike, Lava Lash, Stormstrike, Lava Lash, Stormstrike
/cast Fire Nova
Or
Code:
/castsequence reset=combat Stormstrike, Lava Lash, Stormstrike, Lava Lash, Stormstrike, Lava Lash, Stormstrike, Stormstrike, Lava Lash
/cast Fire Nova
Why not just Stormstrike -> Lava Lash once? At about 30 seconds you get to a point where the differences in cooldowns means LL and SS are both ready within 0.5s of each other, which means there will be a point where you can fit in an additional SS between LL cooldowns.
The first one casts LL first, as it will be up slightly before SS, which means SS will still be on CD for a little tiny bit of the GCD that LL will incur. The second holds off to cast the extra SS before LL. Either way will work fine, but you might need or want to throw a Fire Nova or Lightning Shield refresh between the back to back Stormstrikes in case the macro gets wonky with repeating spells.
Code:
/castsequence reset=combat 10, Searing Totem
/cast [@party1target] Unleash Elements
In the best of worlds, I'd have UE tied in to FS, but I don't want to lock up my shocks macro for it, so I got lazy and stuck it in another step that deals with my glove tinker and Searing Totem.
Connect With Us