promotional bannermobile promotional banner

GRIP - EMS: Macro Sequencer for One Button Rotation Macros

Enhanced Macro Sequencer (EMS): free macro sequencer that puts a one button rotation on a single key, with a visual editor, raid, Mythic+, PvP and solo versions, and import from other sequencers, for Retail (Midnight) and WoW Forever.
Back to Files

v2.4.23

File nameGRIP-EMS-v2.4.23.zip
Uploader
sirsataanasirsataana
Uploaded
Nov 5, 2026
Downloads
2.0K
Size
2.7 MB
Flavors
RetailForever
File ID
9452506
Type
R
Release
Supported game versions
  • 12.1.5
  • 12.1.0
  • 12.0.7
  • 12.0.5
  • 12.0.1
  • 1.60.1

What's new

Changelog

Created: 2025 (pre-stamping; exact date unknown) Updated: 2026-11-05 (EMS v2.4.23: the v2.4.23 section dated for the release and the v2.4.21 section removed, so the file holds v2.4.23 and v2.4.22; 2026-11-04 EMS v2.4.23 Phase 47: the v2.4.23 Fixed bullet saying v2.4.22's note on WoW Forever names that share a first part was wrong for the character list, the index of each character's sequences and CVar Health's history, and the one-time move to the full name; earlier the same day EMS v2.4.23 Phase 46: the v2.4.23 Fixed bullet for the error the sequence editor showed on WoW Forever when a second sequence opened; earlier the same day EMS v2.4.23 Phase 45: the v2.4.23 section opened with one Fixed bullet for the repair of stored spell names that re-checked every saved sequence after each fight; 2026-11-01 EMS v2.4.22: the v2.4.22 bullet under Fixed for the keys the main window kept from the game after Simplified Mode; earlier the same day EMS v2.4.22: the v2.4.22 section dated for the release and the v2.4.20-hotfix section removed, so the file holds v2.4.22 and v2.4.21; earlier the same day EMS v2.4.22 Phase 40: the v2.4.22 bullets for the layout pass, ten under Fixed; 2026-10-31 EMS v2.4.22 Phase 39: the v2.4.22 bullets for the wording pass, two under Changed and seven under Fixed; earlier the same day EMS v2.4.22 Phase 38: the v2.4.22 bullet for the Repair window's issue names and their help reading the player's language; earlier the same day EMS v2.4.22 Phase 37: the v2.4.22 bullets for the import window reading the player's language and its hint naming the Preview button; 2026-10-28 EMS v2.4.22 Phase 36: the v2.4.22 bullets for eight more counted lines, the labels that now read the player's language, /gems help listing every command and its four lines that misdescribed their commands; earlier the same day EMS v2.4.22 Phase 34: the v2.4.22 bullets for the number keys in the /gems settings window, a Macros tab Refresh after a mid-session enable, and step toggle keys in /gems keys; earlier the same day EMS v2.4.22 Phase 33: the v2.4.22 bullets for /gems testlocale, Export Raw, the dimmed Fix button's colour and the auto mark on an unticked row, and the spell picker opening on Class on WoW Forever; 2026-10-27 Phase 32: the v2.4.22 bullets for a step dragged below the last row, Escape on the popup editor's unsaved-changes prompt, the popup editors Simplified Mode left open and the drag and keys that changed its steps; Phase 31: the v2.4.22 notices file, the download without its unloaded test files, the What's New scroll bar and the hotfix that no longer reopens its base version's notes; Phase 30-polish: the v2.4.22 spell picker, two-part name, Key Press line and CVar Health introduction bullets corrected) WoW Patch at last update: 12.1.5 Midnight (Retail LIVE)

All notable changes to GRIP - Enhanced Macro Sequencer are documented in this file.

This changelog follows a variant of Keep a Changelog. It tracks the current release and the previous one only. Earlier release notes live in the git history.

[v2.4.23] - 2026-11-05

Fixed

  • EMS no longer re-checks every saved sequence after each fight. In v2.4.22, a character that keeps sequences for other classes never finished a one-time repair of stored spell names, so every refresh of the spell list walked all of them again, and a spec whose spells change during combat gets that refresh a few seconds after a fight. Each pass also rewrote the same steps back and forth and rebuilt their sequence. The repair now leaves other classes' sequences alone and writes each step's name once, and if steps it cannot fix yet remain, it tries again at the next login instead of after every refresh.

  • On WoW Forever, the sequence editor no longer shows an error when you open a second sequence. In v2.4.22 on WoW Forever, opening a sequence after another had been open in the editor showed the error "Regions must have a frame parent", and every sequence opened after that showed it again until the next reload. Deleting the sequence open in the editor left it in place. The editor now hides the lines of its Dependencies list and reuses them for the next sequence.

  • On WoW Forever, characters whose names share a first part now keep their own records. v2.4.22's notes said they already did, and on WoW Forever that was wrong. v2.4.22 still read only the first part of the name there, so Grip Ems and Grip Two on one realm shared one entry in EMS's character list, one entry in its index of each character's sequences, and one name in CVar Health's score history. Neither character was offered to the other under Copy to character, neither saw the other's sequences, and a sequence or variable you made carried only the first part as its author. EMS now reads the first part and the surname the game gives and joins them. The first of those characters to log in takes over the character list entry and the index entry kept under the first part, with any sequence copied to that name, and this happens once. The other gets entries of its own. Where a record under your full name already exists, the one under the first part is left as it is. Your settings profile is still keyed by the first part of the name. A retail character's name has one part, so nothing changes there.

[v2.4.22] - 2026-11-01

Added

  • A notices file names the libraries EMS bundles. THIRD-PARTY-NOTICES.txt sits in the GRIP-EMS folder. For each library in Libs it gives the author, the address the download fetches it from and its licence, and the licence texts follow.

  • A sequence can have more than one keybind. The Keybind tab lists every key, each with a button that removes it, and Add Key binds one more. Every key presses the sequence's one button, so its steps advance in one order whichever key you press. Change still replaces the keys and Clear removes them. The sequence list shows the first key and how many more there are, and names every key when you hover the row. /gems bind <name> <key> --add adds a key from chat and /gems unbind <name> <key> removes one. Plugins read every key through a new keybinds field, at API version 5.

Changed

  • The download leaves out the test files the game never loads. v2.4.21 shipped 83 Lua files under Test that nothing in the game reads: the tests EMS runs outside the game, and two in-game test files the addon never loads. The download now leaves them out. The tests /gems test runs still ship.

  • Eight more chat and Repair lines take the right word for the number in every language. In v2.4.21 they hedged a count with "(s)", so /gems variants printed "My Rotation: 1 variant override(s)". It now prints "1 variant override" at one and "2 variant overrides" at two, and each language takes its own form for the number. The other seven are the two lines /gems revalidate prints, the line /gems decompress prints on what it decoded, the Repair window's detail on steps that still hold spell tags, the two lines EMS prints when it heals your sequences after you change the game's language, and the legacy import's line on spell IDs it could not turn into names.

  • More labels read your language. The step details' Name, Cond and Seq labels, the Add menu's note on the nesting limit, the step label field, the spell warning's "and N more" line and the version bar's buttons were English in every language in v2.4.21. They now read your language. The version bar's buttons grow to fit their labels, where each had a fixed width.

  • /gems help lists every command. In v2.4.21 it had no line for /gems tour, simplified, cvar, sqw, fs or overlay. Each now has one.

  • The import window reads your language. Its title, the heading over what it will not import, the warnings about entries it skips or cannot read, and the line that names the version a sequence was exported from were English in every language in v2.4.21. They now read your language.

  • The Repair window's issue names and their help read your language. Each issue's name, the help when you hover its row and the tooltips on its Fix button were English in every language in v2.4.21. They now read your language. The detail after an issue's name is unchanged.

  • English text no longer sets off a clause with a double hyphen. In v2.4.21, 177 English lines, tooltips and descriptions used two hyphens between spaces as a dash. Each now uses a colon, a full stop, a comma or parentheses, as its sentence needs, and says what it said before. A language that still shows the English text for a line shows the new English.

  • Chat lines no longer repeat the addon's name. Every EMS chat line already opens with the addon's tag, and in v2.4.21 some of them, among them the CVar auto-fix line on login, the CVar Fix All and reset lines and the profile import lines, then opened their text with GEMS:, GRIP-EMS: or EMS: as well. The text now follows the tag directly.

Fixed

  • Restoring lost keybinds brings back every key of a sequence. A sequence with one key in a loadout and another for the spec had both in the saved set /gems binds restore reads, and v2.4.21 brought back only the last of them: each key it restored replaced the one before. Each key is now added beside the others.

  • The spell picker's Class tab lists your spells on WoW Forever. In v2.4.21 it listed none of your tree spells there: no skill line in the Forever spellbook names a spec, so every tree spell went under Other. Now, on a client whose spellbook names no spec at all, every line that is not General, your race or a profession counts as your class. That part is a WoW Forever fix. On such a client the spell picker now opens on its Class tab once EMS has read your spellbook, where v2.4.21 opened it on Spec, which lists nothing there. On every client, the class line also counts when its name is your class as the game writes it in your language, in either gendered form: v2.4.21 compared it with the English class token alone, so a Death Knight's line and a German Mage's line (Magier) went under Other. A German client's race line now goes under Race too.

  • Two WoW Forever characters whose names share a first part keep their own records. A Forever name can have two parts, and v2.4.21 read only the first. Two characters named Grip Ems and Grip Two on one realm shared one character record, and a sequence or variable you made carried only the first part of your name as its author. EMS now reads your full name in both places. Records you already have keep their keys, and nothing is moved. Your settings profile is still keyed by the first part of the name, so those two characters still share it. A retail character's name has one part, so nothing changes there.

  • A new profile opens the main window at its full height. v2.4.21 gave a new profile a saved size of 800 by 500, and the window opened 500 pixels tall, 140 below the 640 it is built for. A new profile now starts at 800 by 640. A saved size below the window's 720 by 640 minimum, from an older profile, comes back at the minimum, and so does the size the window returns to after you minimize it.

  • The sequence name box stays readable while you have unsaved changes. In v2.4.21, on an editor 500 pixels wide, the name box shrank to 28 pixels, about one letter, once Save and Discard appeared. They sat to the left of the Disable and Export buttons even while those were hidden. They now sit next to the nearest button that is showing: the box measures 174 pixels there, and 220 with the disabled badge showing and Save hidden. When the box grows again its text goes back to the first letter, unless you are typing in it.

  • The Key Press status line no longer draws over the macro stub preview. In v2.4.21 the line under the Key Press box ended 13 pixels below the editor's header, on top of the preview row under it, and further down with Large targets on. The header is now tall enough to hold the line with Large targets on or off.

  • CVar Health leaves out the CVars your game does not have. WoW Forever has no encounterTimelineEnabled, encounterTimelineHideForOtherRoles or encounterTimelineHideQueuedCountdowns. In v2.4.21 each one counted as wrong: /gems status counted a warning for it, the health score could never reach 100, the page showed rows no fix could change, and Auto-Fix CVars on Login, with one of them ticked, tried to set it at every login. /gems status, the score, the page and the login fix now leave them out. /gems status and the score line say how many they left out, and the page's summary and the first-run introduction count only the CVars you have. This is a WoW Forever fix; a game that has every CVar sees no change.

  • The CVar Health introduction no longer opens by itself. In v2.4.21 it could pop up while you were on another page of the EMS options window, because building that window's list of pages opened it. It now opens when the game's Options show the CVar Health page, when the EMS options window opens on that page, or when you pick that page or one under it in the EMS options window, and still only until you have seen it once.

  • What's New has a scroll bar. In v2.4.21 the notes scrolled with the mouse wheel alone, and nothing showed that more lay below. A scroll bar now runs down the right of the notes, and the mouse wheel still scrolls them.

  • A hotfix no longer opens What's New for notes you have already closed. After an update from v2.4.20 to the v2.4.20 hotfix, What's New opened at login with v2.4.20's notes again. A hotfix now counts as the version it fixes, unless it brings notes of its own.

  • A step dragged below the last row lands last. In v2.4.21 it landed second to last, in the step list and in the detail pane. A step dropped just below its own place moved nothing, yet the sequence counted as changed, and in the step list Undo gained a step that did nothing. That drop now changes nothing.

  • Escape on the popup editor's unsaved-changes prompt keeps your edits. In v2.4.21 Escape on that prompt closed the popup editor and threw its edits away. Escape now closes the prompt alone, and the popup editor stays open with its edits. The prompt's buttons read Save, Discard, Cancel from left to right, where they read Save, Cancel, Discard.

  • Turning Simplified Mode on closes the popup editors. In v2.4.21 it left them open. A popup editor with no unsaved changes now closes, and one with unsaved changes stays open under its unsaved-changes prompt. A popup editor you open while Simplified Mode is on stays open.

  • In Simplified Mode a drag or a key no longer changes the steps. In v2.4.21 a step row there showed a drag handle that worked: a drag moved the step, in the step list and in the detail pane, and Alt+Up, Alt+Down and Delete moved or removed the selected step. The rows now show no drag handle, a drag moves nothing, and those three keys go on to the game as keys EMS does not use.

  • /gems testlocale leaves your sequences as they were. In v2.4.21 it tested locale healing on the first of your sequences with spell IDs stored. It marked that sequence as written in another language, ran the healing over every sequence you have and kept what the healing wrote. If the healing raised an error, the command stopped there and the sequence stayed marked. It now heals a copy of that sequence alone and puts your sequences back afterwards, and a healing that raises an error reads as a failed test.

  • Export Raw shows the saved data of a sequence that could not be loaded. In v2.4.21 the button handed the export window that data without the sequence's name, and the window opened on its list of sequences with the data nowhere in it. It now opens on the data under the sequence's name, with a line that tells you to press Ctrl+C and keep the copy somewhere safe.

  • A Fix button you cannot press no longer takes the Save colour. In the Repair window of v2.4.21, the dimmed Fix on an issue EMS cannot fix for you kept the Save colour of the Fix its row had shown before, since the list reuses its rows. It now takes the plain button colour, as it does on a new row.

  • Unticking a row EMS ticked for you takes its auto mark away. In v2.4.21 a variable or macro in the export window, or a variable in the import window, kept its auto mark after you unticked it. The mark now goes when you untick the row.

  • The number keys work in the /gems settings window. In v2.4.21 the window left every key to the game, so on the CVar Health and Accessibility pages 1 to 9 pressed your action bar buttons. They now move the keyboard cursor to the page's sections, as they do on the game's Options pages, and TAB, Space, Enter and Escape work there as in the theme editor.

  • A Macros tab Refresh files a shared macro under the sequence that holds its button. Two sequences whose names differ only in punctuation, such as Fury and Fury!, share one button. In v2.4.21, with one of them holding that button and the other enabled later in the session, Refresh on the Macros tab filed their shared macro under the one you enabled, which did not hold the button. Refresh now files it under the sequence that holds the button.

  • Step toggle keys show in /gems keys. In v2.4.21 a step toggle key that a sequence key, a variant chord or a saved binding already held did nothing, and the only word of it was one chat line at login. One that another addon took later showed nothing at all. /gems keys now lists each step toggle key, says which binding holds one that was not set, and offers Fix for a saved binding.

  • /gems help says what four commands do. In v2.4.21 it said /gems test advanced a step by hand, where the command runs the in-game test suite, or one test by name, and /gems test prep prints the preparation. It said /gems tracker toggled the tracker HUD, where each use moves it to the next of never, always, in combat and with a target. It said /gems record captured spells into a sequence, where a stop prints how many spells it captured and makes no sequence. It showed the class ID of /gems loadclass as optional, where the command needs one. Each line now says what the command does.

  • The import window's hint names the button it has. In v2.4.21 the hint over the paste box said to click Import, a button the window no longer has: the button under the box reads Preview. The hint now names that button by its own label, in every language.

  • The Chinese descriptions of the two empower settings name no class. In v2.4.21 the Simplified and Traditional Chinese descriptions of the empower tap and empower hold CVars named the Evoker. They now translate the English description, which names no class.

  • /gems status reads Russian in full. In v2.4.21 its key-down line in Russian left out the note that buttons override the setting, which the English line carries. It now carries it in Russian, with the CVar name and value as before. The Discord line in Simplified Chinese now has the space after "Discord:" that the other languages have.

  • French and Italian lines take the right word for the number. In v2.4.21, 15 French lines and one Italian line still hedged a count, as "(s)" does in English. They now take the form for their count, and a second count in the same line follows a colon.

  • The provenance tooltip names the modification chain the way its window does. In v2.4.21 the tooltip said "Modifier chain" while the chain window's header said "Modification chain", and that header was English in every language. The tooltip now says "Modification chain", the header reads your language, and each language's tooltip names the chain with its header's words.

  • German text says Sie throughout. In v2.4.21, 31 German lines still addressed you as du, among them the warning that keybinds were lost and its hint. They now say Sie, with their umlauts written out.

  • The Priority step function's tooltip says which step plays most often. In v2.4.21 it said higher-numbered steps fire more often. Priority plays step 1 most often, in the order 1, then 1 2, then 1 2 3, and the tooltip now says so in every language. The step bar and the popup editor show the description the step function carries.

  • Turning Accessibility Mode off no longer says the stock defaults are back. In v2.4.21 its chat line said so, while turning the mode off brings back the settings saved when it went on. The line now says that, and the toggle's description says what turning the mode on sets and what turning it off does.

  • Greyed-out buttons show their tooltip. In v2.4.21 the export window's Export Selected, with nothing ticked, and the step bar's Dup, Up, Down and Del, when they could not act, showed nothing when you hovered them. Each now shows its tooltip and stays greyed out.

  • The Accessibility page's Re-detect button holds its label. In v2.4.21 it had a plain button's width, 170 pixels, where its English label needs 254 at 7 pixels a character. It now takes the double width the page's other long buttons take.

  • Accessibility Mode warns about a small display at the scale it sets. In v2.4.21 it measured your screen against the main window's 640-pixel floor at a scale of 1, so with the game's interface 768 or 900 pixels high it gave no warning, though the window needs more than that at the mode's scale. It now measures at the mode's scale.

  • The popup editor shows every line of a step. In v2.4.21 each step row was one line and 24 pixels high, whatever the step held. A row now grows 14 pixels for each line past the first, and a one-line step stays 24. An edit to a step stored as a list of lines, or as a compiled step, is now stored back in that form, the compiled step's other fields kept, where v2.4.21 stored it as plain text.

  • The export window's format buttons stay between Back and Export String. In v2.4.21 each format button was as wide as its name, so a long name ran the row under Export String. The buttons now share the room between the two, a name cut to fit ends in "...", and hovering a cut button shows the whole name.

  • The version bar's Live badge moves to a line of its own when the bar is too narrow for it. In v2.4.21 it stayed at the bar's right end and drew over the version buttons on a narrow editor.

  • The import window's provenance badge no longer covers the row's button. In v2.4.21 it sat at the row's top right, 16 by 7 pixels over the row's action button. It now sits left of the status badge, and the row's text makes room for it.

  • Buttons in 15 windows and tabs hold their labels in every language. In v2.4.21, 52 places that build a button gave it a fixed width too narrow for its label in at least one language at 7 pixels a character, among them Save in French, the export window's Back to Selection in English and the Keybinds tab's Set in French. Each now takes its label's width plus 16 pixels and never less than its old width. The Repair window's Fix All grows with its count, and the default version and popup version buttons grow when their numbers change.

  • The number keys pick the tab you see. In v2.4.21 keys 1 to 6 picked the tab at that place in the full tab list, hidden tabs counted, so with Variants hidden key 6 picked the hidden Variants tab where the sixth tab shown was Raw. Key N now picks the Nth tab the strip shows, for any key from 1 to as many tabs as it shows, in Simplified Mode too.

  • Keys the main window does not use reach the game after Simplified Mode. In v2.4.21, once Simplified Mode had been on, the open main window kept keys it does not use from the game until you reloaded, with the mode still on and after you turned it off. A number key past the tabs it shows did not press your action bar button, and Enter did not open chat. Those keys now go to the game. The window keeps Tab, the arrow keys, Space, Delete, Escape and the number keys of its tabs.

  • The Key Press and Key Release boxes keep their width. In v2.4.21 each box took its width from its scroll frame alone, so a box whose scroll frame was moved or given another parent, as a plugin can do, was 0 pixels wide. Each box is now anchored to the row it sits in.

This mod has no additional files