TimothyLuke / GSE-Advanced-Macro-Compiler

GSE is an alternative advanced macro editor and engine for World of Warcraft.
https://discord.gg/gseunited
MIT License
218 stars 73 forks source link

How to use GSE with Classic (SOD, Era and Cata) #1657

Closed cwland closed 2 months ago

cwland commented 2 months ago

🔵 Describe the bug: My macros are no longer working in classic. The icon changes images when the button is clicked, but no spells are cast. It simply cycles through the spells but does nothing.

🔵 To reproduce: (Steps to reproduce the behavior) Use any macro you have in GSE on classic

🔵 The error: No error message, the icon changes but nothing is cast

🔵 Screenshots: If applicable, add screenshots to help explain your problem.

🔵 Expected behavior: When a macro is used, the spell will be cast

🔵 GSE.lua file: Please provide your GSE.lua file or the export string for the specific macro that is causing an issue.

🔵 Desktop (please complete the following information): -Mac OS - Sonoma Version 14.5

🔵 GSE Version: 3.1.69 Curseforge

🔵 Additional context: Add any other context about the problem here.

TimothyLuke commented 2 months ago

Classic has inherited Retails new rule that a macro (like on your action bar) cannot /click another macro (like a GSE Sequence). However it hasn’t inherited the rest of a Retails changes. It is unlikely that GSE will work with Classic in the near future.

TimothyLuke commented 2 months ago

What you can try is /run SetBindingClick(key, button, object) but you will need to do this on every character and change these whenever you change spec. EG to use 2 on a sequence called GSESequence

/run SetBindingClick("2", "GSESequence", _G["GSESequence"])
/run SaveBindings(2)

NOTE: This will unbind the key/button from your action bar and bind it directly to the GSE Sequence.

TimothyLuke commented 2 months ago

Also you will need to watch character count. Your actions need to be under 255 characters now.

TimothyLuke commented 2 months ago

I have also asked the GSE Patrons playing this mode how they want to proceed.

richard5150 commented 2 months ago

What you can try is /run SetBindingClick(key, button, object) but you will need to do this on every character and change these whenever you change spec.

/run SetBindingClick(“2”, “GSESequence”, _G[“ GSESequence”]) /run SaveBindings(2)

Hi Timothy, thank you for creating this amazing addon.

I tried this fix you suggested but I'm not sure if I'm doing it right. I put it into a macro and clicked that macro. when I did that I got a lua error pop up window that was just blank. after that my GSE sequence macro was still not working. It will scroll through but nothing is casting.

My sequence is named "DIE" and I have it on my action bar 2 and keybind is mouse scroll down.

seems like blizzard killed the /click functionality because i have some other simple macros that have /click in them and they are broken...

this may be unrelated but also noticing on mac computer it won't recognize when i press CMD + ` (the button to the left of the 1) anymore.

TimothyLuke commented 2 months ago

A macro cannot /click another macro anymore. Welcome to what Retail has been dealing with for 2 months and to quote myself from earlier:

Classic has inherited Retails new rule that a macro (like on your action bar) cannot /click another macro (like a GSE Sequence).

The other limit is your actions need to be below 255 characters when compiled. This includes variables like KeyPress and trinkets etc.

charli1740 commented 2 months ago

The workaround works great for me, but is there somehow i can save it like that? just keeps reseting everytime i log out and i have to redo it.

the

/run SetBindingClick("2", "GSESequence", _G["GSESequence"]) /run SaveBindings(2)

TimothyLuke commented 2 months ago

The SaveBindings is supposed to do that,

charli1740 commented 2 months ago

The SaveBindings is supposed to do that,

Dosent seem to work for me, like the work around is perfect like no issues at all, but it just wont save for me - everytime i exit client or just relog.. i have to type it in again.

TimothyLuke commented 2 months ago

https://warcraft.wiki.gg/wiki/API_SaveBindings

According to that the 2 is meant to save it as a character keybind. You could change it to a 1 but then you would have to reset it every time you changes character but it would work for the same character.

charli1740 commented 2 months ago

https://warcraft.wiki.gg/wiki/API_SaveBindings

According to that the 2 is meant to save it as a character keybind. You could change it to a 1 but then you would have to reset it every time you changes character but it would work for the same character.

Alright, forgive me.. i was just being stupid.

/run SetBindingClick("2", "GSESequence", _G["GSESequence"]) /run SaveBindings(2)

Works great, just that i was changing the /run SaveBindings(2) to same number as keybinding. Awesome so now i can still enjoy GSE in SOD thank you most kindly.

Hope its not the end for GSE for SOD/classic - even tho blizz did change stuff. Maybe some sort of lite version of the addon? that works with 255 chars?

Regardless cheers.

TimothyLuke commented 2 months ago

Hope its not the end for GSE for SOD/classic - even tho blizz did change stuff. Maybe some sort of lite version of the addon? that works with 255 chars?

It's a case of they brought the restrictions from Retail to Classic but they didn't bring the other UI benefits. Once Classic catches up to Retail then I can bring GSE back to it. At the moment there is about half of the things GSE depends on that are simply missing. Its also a case of demand. Compared to Retail there simply isn't a lot of people playing Classic. Of those not playing SoD, most classic people stopped with WotLK.

GSE's development is guided by its Patrons and there currently are not a lot of classic patrons.

nihilninja commented 2 months ago

can someone explain how to implement the workaround. do i just run that in chat? pls help I had to skip raid because I suck with out this add on lol! (im disabled)

nihilninja commented 2 months ago

https://warcraft.wiki.gg/wiki/API_SaveBindings According to that the 2 is meant to save it as a character keybind. You could change it to a 1 but then you would have to reset it every time you changes character but it would work for the same character.

Alright, forgive me.. i was just being stupid.

/run SetBindingClick("2", "GSESequence", _G["GSESequence"]) /run SaveBindings(2)

Works great, just that i was changing the /run SaveBindings(2) to same number as keybinding. Awesome so now i can still enjoy GSE in SOD thank you most kindly.

Hope its not the end for GSE for SOD/classic - even tho blizz did change stuff. Maybe some sort of lite version of the addon? that works with 255 chars?

Regardless cheers.

HALP lol

TimothyLuke commented 2 months ago

This information has been incorporated into https://github.com/TimothyLuke/GSE-Advanced-Macro-Compiler/wiki/KeyBinding-and-Actionbar-Overrides#manually-creating-a-keybind-useful-for-classic-variants

Closing this out.