Using a WeakAura to track a GSE Sequence - TimothyLuke/GSE-Advanced-Macro-Compiler GitHub Wiki

Track Current Spell/Step of a Sequence

With the 3.2 build of GSE, a WeakAura can track how a sequence executes.

For those who want the things, here is a sample WA:

!WA:2!1z1tVTnYv8iRMMuMTP2YB8MKg0L1anizRTrCWMDlkqkwrzABTvwsHIoolkkKgsoICAOgYDMH(FffOvyrroRl5Uo3ErFck89cmqOFc8H(bih7P(MHuYXX7sarn8n)EZ8()7v6Lv4Pl9Sn28zB8K1)81d3e9KFJ3NJRmOsqLG3S5ieZVbMgkI(Uvo3lHfGzwi)xhWsstx0kMC6PiwGPBssSGKofLjIsyTsfKek3GDsR(95yXU)Rpz)V6AWZee1h2VDcHk8Qz3012zC)S44AeMFmUNdpf5JVod5R5)lC4cetyyrOeHHxF4pEKXqbJegIz87)qwXY)(4aSxw)(UNKIz7A3O9273WsaF4GYyONoKNIJJRhWnoNN5HpetfDa0KJN0Tw1oUD74w1X1kdUeV0y0jy2CyTzyaMtN22nA4OP4TlgflICOObyUXOmAHiymXpjoBaTJsdk)oq)Wmkk(LGCcQYBhXXX91QTvd7TDDqXKqQ8MdzjcKsxlngUshCO2SnkKrcoGeiIULvCckyBlo5u8kodYaBSHfOn(Ri)mdh)yeNRw5jqXGSPwo1RW5uljoH91LlxUD5NSXZgQosL5zvNTyikzasGJ8yOasg)7(ihUpCaLh7JvITgwdhVCND048)TdcXPl15BZqmS52GpZ8GiIapMPfAfpNfCcyvi(HSKS0cU6ac(1DIjdiIBnjNuUGvQuPYfeQtHqKYdZ44gkCrpnJemPvZ9680t2CWMKKZ9bJIarfBdXfjmpNQBvF)oGP7OCJ9z5htEO2pzexGtRsdJXF6yrI)H5oG7w6FozvsWz70XUoCC7OerWjKgHkpPpd8LDemKav(D5bOBRiP0jVo1CSTBok3Kbh0xi)OTLlBrtO4ZWiUIpDYXnMgaHAkeDvbEmogUMa(qfg1bjBynarOaVYgY9UHSPSLSnS82FifpGV(KqdlWmEKJt9D211INWeYgSJlYM(k2)(L)viBAS6ki5PAti0(jSCz0GbMlvqzPk(3)npEmbW1jjJ5JFW1KVS0euWFkdSsb7HoEHl(Gqxq(JljVH8Mt9HS5GKJODoIKI7D2SpvHarwQtRN8ND7hkx8nF85GxRlYdeqV9scW9K3x(Zh7dhyYaLDEb5sYkkpBxv2vp5YE57Lw5c(ujuAENQOPtYuwWEY7kVN0)4s)V(zuD9GhHIJbftG5RzQHTgxRunbF1AM6CCLrynZn2ydZhBycpK(5inF(Znxf89D7y)I9TBwZUB9ATA2D)2Bv11EvtreMQXREMVay(IlWerdU4oUmhxIl1Z6RVphRWyIyHzdabGBcEhGcHNlqxc(C96pCX99hnFU5F(sOup8OKJGneSm8Axzt)ieneh8dUFkljKH5Cv4iaAv1Ds8x9Qav12aaVN19kqubbkiZmiBOiuFRRG7se(lx6lgwKXOAzDoDmnWy2)Wp5dMwlzGhsyARmA8rZJosVt7gv)gBNUo27y3S7w17ufkSULCf5Nue(PK7fYRIZtV7pKVFsoyDo7eTtilnaE74hH9FT8bY7yi)fgZqfrcWocYaCG8tnsxs1M6qSBEdavi8)4AYF5BpFMDopL7ZEW1wq(71LnGKCvU(Su)xCfk3(dPa914iHQWcos(WF7kYLNc9juL4vfzPbV5oPve4JfD5riid9v5fikLEpnr9R8QcD5flKngnFVv)v00fFp2VOY855uN3ZQ6(UTsxwte6WNOkZ4RBqzvf(8D5xe5yCExR)208QOFtH4CMEFvzgs)tKUJ1n9WUarRMTAAlxMbkLcZynq)zDUkpQqdOI0f3Mro18fzOavDAtx3lP4ZUPPAAhb9doGHshEqXICb4qcN4btzuOZV3OiPlvVztiyYQLRBR901C)EmH05MWPZLlv)T7vOUV6scHAx98iT23Tr9M2)3PHXjhTnd)TzyQ)jT)rpzJN(SCvxTXzQxBv0cP8q1xkUN6Ljej0wqBmyYKXkY5dJDNjQ1Z07rQpM3XV8zqL0DMrjsJCUWPp5iI)RPqiAznJD0D)TulJ0eAqGnxsFBw5db4fHjHrI3kFuF5AQ5mKRREpwvY2xNI2t(RvugPlShd5f9KpwriDrGs1IMm6EorohPIsE7hUdHgj)szx5RE4eWq7JZZ57nunBxyJKWiRttsgusElizYqEBd5pfgbAUol)DtE0(TE8bzp6lp4eR0pEwtlvy2weoc88brYDllTlMfGvmlGCNY62r1kyasKDGWZEY6YVwPFfJ2gjDmyeQAEcix86gV71yyod1SychLtlsEGXWzxAKCv5nRC4)5v))d

Essentially, the update to GSE tells WA about a new event: GSE_SEQUENCE_ICON_UPDATE. This fires every time you click your sequence, and the payload for that is a name, a subset of the WoW SpellInfo table.

To use this with a TSU trigger:

function(allstates, event,sourceName, spellinfo, ... )
    if event == "GSE_SEQUENCE_ICON_UPDATE" then
        
        if sourceName and spellinfo then
            
            --Use the arguments for this event
            allstates[sourceName] = {
                show = true,
                changed = true,
                progressType = "static",
                name = sourceName,
                icon = spellinfo.iconID
                
            }
            return true
        end
    end
end

This shows the name of the GSE Sequence, but if you changed name = sourceName to `name = spellinfo. name would have the Spell name appear at the bottom of the icon instead.

Monitor Mod Keys and KeyBinds

GSE has added an event to notify WeakAuras of the keyboard mods (Alt, Ctrl, Shift) that have been seen with each click. The GSE_MODS_VISIBLE sends through the GSESequenceName and the modlist. The modlist is a table showing which mods have been seen.

image

!WA:2!nJ5sVTX1vCCPsuh0bPf2QQQr2ojtuACICuOdLIzSRJQnhrsr6qrrpKsu2nTmZJljhPHZm6oZij6(aUcbbUaTffgOnO7ce6sxuuIUOOBIr(eCGrt)a4fDHx6vzzp37muIKIY6bSvlbe5OHN7RZV))p3lNbxCix1lgnw8OXgQXq6dPF3x5HQkAROtTDMX20ME9irIuiY7g9IB5zRTgH6AyB9sd(xA9ivBQoHkfgRZjLmnU9TvO6ILSTn9mCOBmF1QUeVmFXxp4aSxQbTO(wbFMsVgX5ufx1xHset7BAkwUUHhzlkPgoeLA6qKRrT9DcdVOXTjFZNyy5rOwkMlgmr(SwbFzWmDWbhmISRMIjjcTz4GF1h)xVdBWPkAEydCJl76Pq9eKmSm8euRIF4wxytpQrTAyFE6ZrdV8t3sNO6xTkBIqZKkxH0lKtYJnRu8PktUPRdX0mRURWJC9vjRrS8kIrBSrRkZKOyPkflLqUKKpoiQoMknjuzlLgexbzEOQzikME13UPfOeSPYflKkxU75BfofeAPyPv3MwWgx2QZKkFPuYFzWcoy19TKmTv0tl5I5MrKB4JPDbjCIPnc82cYAMkUUSRu9WuILh7Y75smRY7p4nhZq)rZwmL4C2iZiUyI9Hk(E44nVdpvjiRy6uxjYtcMfPP4cGLnuloJCQu5dt9zTWjsKj9n0B5LSAbNYoxs3VzRQSOl6rv8uISfUmL5u1v4Ekwgnuy9FCyO0WOsw2wKVKO4YcMyvZR(l8qDmbZIOclDtDjA2w6UBYIHn8WvKAOyyHTfUc8bVamn8JGRIxoCV3zlw7mcwkTmSQAtdgybv8lQAutyiT)5DhhLyEMgwykDHs5YMpfCImpi)xvGPzAPB4YGxjYgEs5sKR0dDRROBV(ndY(NDa4CWB686DevLGbPItffvvkzndfpsLgkBCkhX(gLNrds4)nOZj18D9SBWIybhDSLWR9iei2SzTwzdDV6sjW)fofM5eGVRamSa89(oNdg5FdJQg0w4SWlVz70N07gDYlcVgmg86WpOvqavQBOtKzdRoCgbiVdTQVf3z8wCH4eI1CrzVNNT1eInS1DNqmA0OJliIVmQkYJrC6PfhdfovMB(KfRSy2IzLYLAmrV6elECSxuINp1I3drzzo(xqS0fW)cK8UotxixIBMsUICQztLVsYSftG9tYje7TRNqSRatLNhx7fetJGlsrb4vGxf((WlbVXi46A1J46QFdv)xBEuFsNllNtXkXSgPuG5fDvK7pGZy7n3XPrfKuKp25C7DqMKAkAnRu102Mwh(HbMMUf(xB)TcsvTT8CozAQXTfVHVIoZwkwQeC5tpcm6dr7jRKpRARLomEA48SsfWe83Fh(7rzVVjRxy1Hhn0iSuGriceVv552y96KLFVy51abjpCH48Q7JXOo8T)STWYEeDU4(tEX9WkXZdouIMbRKFeNZ03OcUq1fRDAvtwR9wxrOlJ6eJQnrqMUeeHT1fw4dMDZ1XYxLPkoBwo8c4srGPG3Z5T37zHEtSkUHwfV6uIBDBt9MWmcWjZCn5hCcwfdiMqRGuZo7ibjeajb4cQsZxQ08ZD3XHKqkOgFYbPLKr3bKjOwcK9uW1he(qupNdMl0Opm3R32Od5zECyEOqBNnxZZ0(hlMz5EmZmJ3I4ublMucwaUbiZ9FqzyP7paCZpgzmCbWc(XWhbQ1zIRO7sCfi3(PJcvIWsNcGsOqhfWmDChc9EUZW76o3QolFRhbmBceOkceOoySd3T50AHBXouqiWXk(xRGWNZ5x8wRuB951wszHK5MewgwbAearTp5fzuKByGFsieXX4PrUUlr3hYXYwSS2Xc5s0l5ota56PY5oKdtLDtU9OSqi5I3AUKRUuZSnvtVCmoedtwmjal9HqbZ934X)DEUFBdaBE1nJ84j(q4WGikkWDLhEGpp0J1gkboRJArXqiIDxA1CfZKn9ZmFO3XWMQ8j8HYjUlE(81jgydzKeTji4Z8hC54Rlu7Za7C(F0aDyhr5s8w1MSuY8x2CXKzkZLaHYLNMBSTIsvE)H5HWAEmat5DdZdG58OQ7peo68fs5RSso9mfm2dhnYw0aXOCxCDdo0cbkc)zFWlZrm3jVD12USXO28Gvw9)VmIjo8gX)xTLidjPvdMWTDlDrTFoZnE67FNoDJm0gV1Lk3m(LsADJPsukWlVCpLI7RJKvAvoXmLKZ9SYm6Emau289q5f3fp3pB1SV)IY38I5s9(fC6aThbNCOj8ez(Ih)34pJL2h7PlS(lzi7YF1MDIvuumtGVT7kRbEX(xyvo3(IYdH38yaL52fkpawZJSp7q6NzsMopTAm(HCMt4FS7Dj)v9EGO4TYmz2K6tPR3GooJUx5oFqNvu3l34ZUdSEmqp5JIr8yytrs5RBqxQEJvK04GKXMqJiJPS93U6t40iTmFn0nm)02(PUCImh6axJ3kgG7RB8D6YnU5pJ6f7xi(gwBTZZn6BCqnN)NTXlll2jIXmByhMxPbX5cBZ5aygci2ZaTcXATOZn)cftjTa(lBZlYzuEN)0ZhPrFhYPdKkDCRTfm9(OAoyhr25S95x)Rfl8QdOlVVpIcRD6Jkb7fZepOAjZ5)9CU3(Wvi0Jj03UqBNUafBOAFMDF0RwDKlyQQBj8N7836gVv5sl(HRlT4ul0Cjw9aMKT7Qgh1cG3DId5pkEhriJeTfHmRnJo)69v7HcMIKv9jwAK2AV)4ZzTxNd5070573ZgSJkxT3eSdHhtlGW83eQU(D4Np9Yq)2aneVeWuSsaDD4CuDYi5rUsiwqcvxHLzI3A1mU6XERmxoXA0EFAk3B2UuAx9R7(PQ8GmN)bTp1ptMIgSEpX)qR9Vw6)c

This WA shows in real time the Mods that a GSE Sequence has seen.

image

Using a WeakAura to update a Macro Icon

There is no direct link between a GSE Sequence and a WoW macro. You can however use a WeakAura to update the icon. This WeakAura has two triggers. One to update the MacroIcon to the sequence button and the other to update the MacroIcon back to the ? at the end of combat. Create this aura to load always.

Trigger 1:

  • Type: Custom
  • Event Type: Trigger State Updated (Advanced)
  • Check on: Event(s)
  • Event(s): GSE_SEQUENCE_ICON_UPDTE
  • Custom Trigger
function(allstates, event,sourceName, spellinfo, ... )
    if event == "GSE_SEQUENCE_ICON_UPDATE" then
        
        -- Update this list.  First key is the GSE Sequence, second key is the WoW Macro to update
        local SequenceList = {
            ["Pally_RET_Sod"] = "SoD_Ret"
        }
        if sourceName and spellinfo and SequenceList and SequenceList[sourceName] then
            
            local body = GetMacroBody(SequenceList[sourceName]) 
            
            SetMacroSpell(SequenceList[sourceName], spellinfo.name)
            return true
        end
    end
end

Trigger 2:

  • Type: Custom
  • Event Type: Event
  • Event(s): PLAYER_REGEN_ENABLED
  • Custom Trigger
-- Create a SetMacroIcon line for each sequence
SetMacroIcon("SoD_RET", "INV_MISC_QUESTIONMARK")

The WA

!WA:2!vE1tVTnYv8yRMUTmBtDKtC3KD7UecPboBTfsCrcWwKaurzkBLilPqsBNSlwipKCK4utXHz4qBlx0dvyXICwx2l9Ko1fON0NGc)jyGq)cuFOFaC)c03muso2P(qfGTM5nV59NFZ7FAUDYN4(KIp(Rk(v57M3pV)7wBaI5vdh1Hh8DlDQlL5JzgiV99z044fmcjhFmI5R7qPHCs8yukpGYAeZj0OenwVgTBNG5B(pCV7F9AWNZsOm(M9CzeFhKBiEj2g2Mv9OrbdBNggwMW8cX71Nrp0og5HZXqEkj9uReoIX1mireUMBB4RKaT(CgPthml5EpGnz53p0h7M2UTtVymBtZAnRSDndoSXcLYqR1pjghgw1pr70Kux8b4iUnWn5OrTkxY2PLTtjlhRiux87Xrtgg4WYUPzTAwkkUBIrH8aJuWACJdr9WSbPrtmbTrE0W0UrzEGld5tst(UpUFAcUgPlHhyHcjDIClBw3X0c8vos6JZne0NfUJc463rIqGzxWADJqkYVIrc5y8swDtbywZaCdVLeFPMLxikjrUYLJcbltUCqcoSDtkjIBuZSIZy3jpxLPHu2lYLlxZCpQ4todohZIqH7aaiO0FKHIiDrCCWiuKh8iQKG4(wjEGKZn0dl5xzt1SCZcecgM9TPFhC8TSFBkIH1RapK67gq44bjCCCPOoH4VycJ2GtCDdzqGrencpKP8xPqpXVha7eVomAA8OmURgbXo5wlL4pA5xwFRx)1l)KNwAzRqjkEJtHOgiOiIxbIrOmxRsRxDB7bsGBxIpp4gNKjKSiWF(GmVd02tfFCfXIINDcgLGT5mvS9hn2hIpKh3sgTWsWG49t6l5rAEINz0frIuxuS5hjQkEH4LWYBEzkd5uVdYq0F2k)Nce)4fHqCDlmxxgNRVDSpGXJAZGymq5iokhepehGYDwgSxrEIuLU2LTmnRZoAAoe9FTSmhYfetBshndaQo0YQ6gB6mbVYEGNBU5YzLid(U(qPtqYYfhrIAtzzqGgdqozS6C59U37E4qcWNnnL5H)SRnc5)htHho)TirZl(PZj(DI7p2dsV9PhgzFijgV3jt3kF3de3aqunXn1e)cnXV8ZFGyH3D7tHG9wix4H2DlQpKrl3lZw2BOhiCAxjwmV4wI8I7kUNyr3mQX5p)EYum1DhlPPs7KVm7j(enXD0eF64Y0UUiUUP8KKbZyi(onRv6nMwTSm3WSER1RAxcsdwxSK4xnr31baEEH3r5Y1onsvFzzuyiGiCCYk6kbTsIcnKCUIUQMHe9wrVyXI6puth(qANXP(ZFUEb4fULT5R22SEzZwvl3OERTBUEjhZc68aCKIF5NzlwD1jXbW5Ke9qscVOUEfc8SOVpUNoqdUOUmWXg)2uCKN0muHKV)57s3vFlKhJQZP6PkbotfHuiTD2TRbAq)56)Pzhl)8nfAc(DpaOGcFu)cFlWrbB66TGG1cZ48ppBf4YNdl6iWwMHmQDxqzxMW3C(v)2lIkxazo30DP(9adAdmx5IgW2LVkb(q9RwARUky3ruUEcuFoQtrO3H)YsH)EpSfLv8F4hAw2tuUTKXRu7FGGUK(XHj4lr6)hHxOA9DATvv7YTGamBNQnQVvjRxw4d0sK)fOWW8uwKoNLEUYNYJ8B5FWNrz5eQQEJu5azbswEbyV9fFAwlWK4p5QIXf)AXNpvibeFSfN0f7l(cnOqW3lpekq6jIIV9fslnRNLvcAqwfO)0QV5FSWl(rtHgzvILZcjnDkC1qHiw8wqJX3soUWbyNSgXYQh)9RjE8pE2(yOpKSNj3sQLaXgQMaqvBzX7P1YR9buU5LPatxKG4sBfQ79GF)sIfhdDTLnyL9TI8F3DIZZXhXBLeGGcKVoR09CX3vru9VSIWTsMSq8SbZoRWVjkEH376Nxp)0mQZ6RxABNgXlQictCrLv19uD9mkbBpltrKJWzTc)lJZAT8MjMZjQZLv5jT7j2zOAeeSdq0OEJ6MIfzGtj5zOIrVPZnKBWepiIhVqfg5y9xLI8L9W0DCUGJpvtJv0oe6oTldf3F3jlYmGdijeygW9(FGorZqNtYm9wXs)o(wvRxhIHmA440ylvRVXZmj5Sf3DIN(6lOF5PQbcBSTtTQ1n)3J7espScllLRxZFYJkU2tY8A5bNanC2iCc8hmqsYwndK6AobeV9JWjj5gj3o1tvSnBcRCdLBZgB(o9vxd0)y3uoNg1aMpaMz0qsoqjKPM7jYnRpjviNsK1iGUULsCgzZC5gGjDc4)Gy5DeRkN3tSI6))w1SFQgOHqsWEIhkjeVaqP0Kw6qtD0rbxMejkq8Cd5maIRRj(6hmcWEpCwF196lNNUtnANarrX9pF4a0rZhF7PZbidDwNKiNO3pq8hgvAJEKTFrvNkSngc6AYpoiq8kHLXXuA35enZj2kB(Obt(fa6RjAKtnaq5jsfYFH0v8EwhkdI)bRZJdfoAqTC5yw4GtJz0om49iBaMV8ZU28I)2EI3O1FQ1fiSNl)b)Zx)Fd