-
-
Notifications
You must be signed in to change notification settings - Fork 75
GSE Rules and Restrictions ‐ Relationship to WoW's Combat Limitations
GSE is an addon that allows the user to create a sequence of complicated macros. Unlike WoW's macros, it doesn't get hung up on the success or failure of the current actions. It sends the commands to WoW and moves on to the next set of commands. This allows for creative approaches to overcome some of the limitations of WoW's macro system. GSE can't break the rules, but it can make them more manageable. Every command available to WoW macros is available to GSE.
Throughout this wiki, the following terms have the following meaning.
- Macro - A macro is a set of commands stored in /macro
- Macrotext - A Button in your UI that has been programmed to ask WoW to execute a series of macro commands when it is clicked. This isn't a macro but uses the same commands a macro is written in.
- Sequence - A collection of actions stored as blocks. Each block contains different things. The most common is an Action Block containing macro commands via Macrotext or spell references.
- GCD - Global Cooldown
- Client - Your copy of WoW running on your computer
- Server - The game server is running in Blizzard's data centre.
- hardware event - a physical keyboard button press, mouse click or mouse button, or gamepad controller action
Blizzard allows macros to perform limited logic but has the following unbreakable rules. Blizzard enforces these on the server.
- A macro cannot /click another button that has Macrotext attributes. These macrotext attributes will be silently ignored.
- Buttons using the Macrotext attribute are capped at 255 characters. This is the same length as a macro.
- One hardware event enables the ability to attempt one GCD. If that ability is on cooldown, the GCD is in effect, or you don't have the necessary resources, that attempt is used, and any following GCD abilities in the set of macro commands are ignored. An unlimited number of non-GCD abilities can be combined with a GCD ability, provided the resulting command is less than 255 characters in total.
- GSE cannot create custom macro commands.
- Game Mods (like GSE) can operate in one of two possible modes. It can blindly cast a preset sequence of abilities (like GSE) or look at health and mana combo points and draw things onto the screen to make you, the player, aware of things to act on (like WeakAuras). Once a game mod looks at those values in combat, it can no longer perform abilities like using abilities. The sequence of abilities has to be set outside of combat and cannot be changed or altered till combat finishes
- Some normal macro commands like /say are restricted in combat.
- A limited form of if-then-else logic is available to macro commands through WoW's Restricted Environments macro conditionals. GSE is not able to alter or add extra macro conditionals.
- User Creates or Imports a Sequence (with optional supporting macros and variables.)
- GSE creates an invisible button with the name of the Sequence. The name of this button has to be unique and cannot be a generic term like PVP as this will conflict with other addons. This button has a sequence of commands or spells, and at each hardware event, GSE sends the current set of commands (the current block) to WoW to execute and moves on to the next set of commands. When the button reaches the end of the list is at the end it returns to the first item and continues until combat is finished.
- Every time you zone, exit combat, change target while out of combat, enter or exit PVP, enter or exit a dungeon, scenario, raid or battleground, GSE checks the configuration tab and recompiles the sequence incorporating the current values of any variables. This allows for different setups in raids vs PVP, for example.
Once combat starts, GSE cannot edit or alter the sequence of steps. It cannot make any decisions for you. The only decisions that can be made are from the macro conditionals within the block of commands. The server handles these decisions and decides whether you can perform the actions. GSE waits for a hardware event, sends the current set of commands and gets the next set before returning to wait for the next hardware event.
While GSE cannot check if something can work, it can try and fail and move on. For example, GSE can't tell if Execute will work, but it can just send it to WoW and move on. If you are clicking the button faster than the GCD, you can simply try the next action. This is also not automation as GSE is not deciding if you can use Execute or not it's just sending the Execute command to wow and moving on.
This question is outside GSE's reference. GSE is a wholly contained in-game mod. It cannot automatically click or bypass the Hardware event requirement. The closest you can get to this is keybinding your mouse wheel, as WoW classes each notch in the mouse wheel as an individual hardware event.
Some people use third-party out-of-game tools to click the button for them. This is against Blizzard's End User Licence Agreement Section 1.C.ii.1. You also give Blizzard permission to monitor your computer in Section 4 to check for third party software mentioned in Section 1.C. Section 12.C also states that just because they don't actively enforce this doesn't mean they are waiving enforcement of these clauses. GSE does not recommend any use of third-party tools to automate spamming a button.