
[BUG] LUA error when calling to in-game macro
LarryThiessen opened this issue · 5 comments
🔵 Describe the bug:
- LUA SecureActionButton (SATB) caused from Calling an In-game macro
🔵 To reproduce: (Steps to reproduce the behavior)
- Create a Sequence
- Create a MacroBlock
- Use standard method to call to an in-game macro
- Use Sequence
🔵 The error:
1x ...aceBlizzard_FrameXML/RestrictedExecution.lua:430: Call failed: ...aceBlizzard_FrameXML/RestrictedExecution.lua:126: [string "compressedspelllist = newtable([=======[macro=SLG-SHM-ENH-OPN|t..."]:729: function or expression too complex near '[=======[macrotext=/targetenemy [noharm][dead]
/startattack [harm,@playertarget,exists]
/use [known:Windstrike] Stormstrike
/cast [combat] Stormstrike|type=macro]=======]'
[C]: ?
[Blizzard_FrameXML/RestrictedExecution.lua]:430: in function <...aceBlizzard_FrameXML/RestrictedExecution.lua:419>
[tail call]: ?
[tail call]: ?
[Blizzard_FrameXML/SecureHandlers.lua]:499: in function <Blizzard_FrameXML/SecureHandlers.lua:473>
[C]: in function 'SetAttribute'
[Blizzard_FrameXML/SecureHandlers.lua]:743: in function <Blizzard_FrameXML/SecureHandlers.lua:725>
[tail call]: ?
[GSE/API/Storage.lua]:1074: in function <GSE/API/Storage.lua:997>
[C]: in function 'pcall'
[GSE/API/Storage.lua]:1130: in function 'CreateGSE3Button'
[GSE/API/Storage.lua]:283: in function 'OOCUpdateSequence'
🔵 GSE.lua file:
- In-game Macro being called
- GSE-Sequence Below
- SLG-SHM-ENH-AOE
de0ehaakbDksXTKk1WeXXOOLbv9mv00GORbHTrsFtOmoI6CsfheLwOujpesMikCrKAJkLpksJuGtsLwPO8sr1mb5Mk0oLu)ekdvQ6OiSuLQNQQMksUQq1wrrFfsnwQ4SawlP0EvWHvYIPkpMQAYOYLPuBMiFguJwIonIwnL8AGMnjUTkSBc(TegoP64Q0YfYZv00PW1LY2vLVtOXdvoVKSEu1dMdudF9vLsXIBGA4ZCfrU8uSNdudgd)XLFuXCGAWy4tRyFylyGQOjymuBo8)23MTGV9CGA4)Hs7(hm2nneD3Sy0dFoYeA41szAs1KWdn7tyANG(cY4i)FyPYpHgH7tmVeFHExMbThCnbacslQIaIZEccysRxz7L4lnvd8TgXUeXXMoWreeHy2erUnidWMyprYX7HyCsgZ(QXUh99b(OAbnAc3(PeUxF7)EphCpWh9(6ecKcNRNceNbVdOtMNapeHIcR2j6Aj3iJjIeWECgGJcRZrc8ceHuGC12L4EpweK0XZhlsmHiWxmJ2QZRKbHqrNIxhuP5MTYNJiW5OdR(sYe0GxgPLaEYLIujpiqA(oyH)f0jAS(IQdYNt0AAvaGuGeroF4tolGwQtLwMc6yo45AW2nliNUUawzCytqTgKXPr5jLc5MTYNOYTGln8fewanqoFICaKcKiYD8AwqwS9twSdAUzbVFGOep1k8HKmeztvw7whuhNMikLLvGvbyHyKmlJjylmZTnOv94PwH9JrYQX6PIbqZTJfD5I4icm9B48s9gTtiJMn9twk3ho8DrMqqUlHv8RB6UfYYkWQaSncrrrrqS1VHk3cU0Wxqyb0aZ4WMGgjtOKl)9c1Gz6zvFqZnl49deL4PwHpKKHiBQYA36G640erPSScSkaleJKzzmbBHzUTbTQhp1kSFmswnwpvmaAUDSOlxehrGPFdNxQ3ODcz0SPFYs5(WHVlYecYDjSIFDt3TqwwbwfGLbwyiOuBH)Hk3PRlGLbzcb5UeAM(LoL1Z6TW96meXl0KwV5CXjU)ZevRygGf5MxbyOtUlHw38Wf3MofdC47QssWNLK9k8ftvbxhOZtHTMUQie3FFvaAUarjEQLGSHeTCf6)v3RvshkXXGNQc9)Q7jVjQC500ckpT6aYlzguV5CXjMPglBAw8prhYcW6HwlZkmLDtOWqSozUDG9Paby9qRLzfMYUjuiMHjZjpQ1BYt77yMPW5tKdGuGerUfCPHVGWci5D9WeDIGz6zvFeGf5MxbyOtUlHw38Wf3MofdC47QssWNLK9k8ftvbxhOZtHTMUQie3FFvaAUarjEQLGSHeTCf6)v3RvshkXXGNQc9)Q7jVjQC500ckpT6aYlzguV5CXjMPglBAw8pVyph2WZWCodrLlNMwqz98ruWWKGtxJBq8pmerJHkXR2elmmHGkMMV4swwbwfGTTTXAI)bxEHAJ1xuDqcKMc2FqZnl8GSy7NSyR8jC5fQnUD2tQnT3VZP2aKQoq8aAWxJcL5IeB93rsMDMMBmEXErIkPBsfU6fqfAKXPxQLbJqpDnUbX)I8Lujo0Crz2wo510xrL0ncEBMH0SXI)prdYANCtszROwMVvvQLNWm32ulL4ELjuhyFkqawpwK1GYiDs5dO9XkKLvGvbyDs5dO9rQ5lMch27Rh3q9basWPRXni(h28SeIGrfZG7U7xCjlRaRcW222ynX)GTBwqoDDbSY4WMGAniJtJYtQnwjdf(wi3oaiOwK7UzhriKvGbJExpP2iLIGGEmlXhk724MO0jmedoTm4b7PYlyvumNksujrN1hsqysm4eCIGvHwT1hWKmJLKOLvchNPyqj)wxz2whtHyi2RIRKL5rIO6bZtJpJGHnpmw0sdVTFLZO(oqt(Jq3QponkVQtGjipiaYoWPvOoSsoqGu1bcd0irRVO(QTMwCxT1ahAadDUmDP)iohl17DG5HHSHvu9rduabG8MHrU6XWGCfzH45yIokLVvW0napay6ZU5sK6dIrUgmgmg(gv62dFuyqq0OOCXQhmggaa
- In Game Macro
- SLG-SHM-ENH-OPN
/targetenemy [noharm][dead]
/startattack [harm,@playertarget,exists]
/castsequence reset=combat/target Flame Shock, null
/castsequence [known:375982] Primordial Wave, Primordial Wave, Chain Lightning
/castsequence Flame Shock, Chain Lightning
🔵 Desktop (please complete the following information):
- Windows 10 64bit
🔵 GSE Version:
- GSE v3.2.24-13-g068b174-PatronBuild
- Downloaded From: [GSE-Discord]
The key to this is this comment in the error: function or expression too complex near '[=======[macrotext=/targetene
. It’s not the call to the macro. It’s the sequence has too many items in it. It’s borderline on the limit so GSE’s simple check doesn’t pick it up before hand.
If you create this as a single block sequence and call your macro it works. It’s just in this combination. This may be a by product of #1768
OK I'll condense it to:
/targetenemy [noharm][dead]
/startattack [harm,@playertarget,exists]
/castsequence reset=combat/target Flame Shock, null
/castsequence [known:375982] Primordial Wave, Primordial Wave, Chain Lightning; Flame Shock, Chain Lightning
should fix it then - unless it wont look past whats not known [thats been off/on lately]
I used to be able to do this
/targetenemy [noharm][dead]
/startattack [harm,@playertarget,exists]
/castsequence reset=combat/target Flame Shock, null; [known:375982] Primordial Wave, Primordial Wave, Chain Lightning; Flame Shock, Chain Lightning
The Game really hate that one - but it used to work
OK I'll condense it to:
/targetenemy [noharm][dead] /startattack [harm,@playertarget,exists] /castsequence reset=combat/target Flame Shock, null /castsequence [known:375982] Primordial Wave, Primordial Wave, Chain Lightning; Flame Shock, Chain Lightning
should fix it then - unless it wont look past whats not known [thats been off/on lately]
I used to be able to do this
/targetenemy [noharm][dead] /startattack [harm,@playertarget,exists] /castsequence reset=combat/target Flame Shock, null; [known:375982] Primordial Wave, Primordial Wave, Chain Lightning; Flame Shock, Chain Lightning
The Game really hate that one - but it used to work
The macro here (SLG-SHM-ENH-OPN) isn’t the problem. It’s the sequence it’s being called from that is causing the error. Condensing the macro won’t fix the problem. Condensing the sequence will. Hence why I wonder if it’s tied to the count and repeat blocks. I haven't started looking at that yet.
The STEP Count thing is completely different and unrelated. I changed the in-game macro a bit and it fixed the LUA error. Just odd because I wasn't (cant be) over the limit in an in-game macro.
This is one of those where I need you to listen to what I am telling you. You have a placebo solution. What you are changing was neither the cause or the solution to the lua error you got. It's not related to the problem you reported.
If I use a car analogy, the check engine light has come on and then gone off. You put gas in the car so think that the solution to the check engine light was putting a different octane of gas in the car.
GSE Sequences program a thing called SecureActionButtonTemplate. SABT doesn't know what is in your macro in /macro. It just knows that if you click at that time - tell WoW to call that macro. Changing what is in the macro wont, change the injector being stuck, which was throwing the check engine light.