Grid is the original compact unit frame addon.
The compact grid of units lets you select a group member quickly, while keeping a good overview of the whole group. Grid is designed to show you only what you need to know, and not overload you with irrelevant information. It is highly configurable, letting you choose exactly what is shown, and how it's shown. There are also many plugins that add even more features!
For options, type /grid
, right-click the tab on the Grid layout frame, or right-click the Grid icon on your minimap or DataBroker display.
Need Help?
- Report a bug
- Suggest a feature
- Check the Frequently Asked Questions
- Post a comment on the CurseForge project page or the WoWInterface download page
Do not use comments to report bugs or request features. Such comments will be deleted. Use the links above to post a ticket instead!
Localization
Grid works in all languages. It is translated into English, Deutsch, Español, Français, Italiano, Português, Русский, 한국어, 简体中文, and 繁體中文. To add or update translations for any language, please enter them in the CurseForge localization system. New and updated translations will be automatically included in the next version of Grid!
Credits
Grid was originally conceived and written by Maia and Pastamancer in late 2006. Phanx has been the primary developer since late 2009. Jerry wrote the original pet support code. Mikk designed the icon. jlam added some advanced options for auras. Greltok and Stassart have helped a lot with bugfixing. Finally, lots of people have contributed translations!
Hello it bugs everytime someone is battleRez in fight, any idea/help ? Thanks
This addon was great, when it worked.
In reply to mspykez:
it is still working, guess u too lazy to read comments ..
https://github.com/hobulian/Grid
Made fixes for those who want to use grid.
In reply to 호불:
hello sir, what fixed did u make?
In reply to 호불:
Thank you, I really don't like Grid2 and was hoping this could be fixed.
In reply to 호불:
Looks awesome. Thank you!
In reply to 호불:
You are amazing thank you! I am so used to this addon. I logged in and reset my account just to thank you.
Another Grid alternative is https://www.curseforge.com/wow/addons/aptechka
Grid is continued and being actively maintained as Plexus. It contains many plugins in-built, and most of the Grid plugins work with it.
https://www.curseforge.com/wow/addons/plexus
Any news on when the addon is going to be updated so it will work with the latest version of Retail WoW?
Edit: this is the error I think I'm getting in regards to grid currently when I log into WoW Retail. I currently do not see Grid at all on my screen.
Message: Interface\AddOns\Grid\Layout.lua:783: attempt to index field 'frame' (a nil value)
Time: Sat Oct 17 11:17:04 2020
Count: 1
Stack: Interface\AddOns\Grid\Layout.lua:783: attempt to index field 'frame' (a nil value)
[string "@Interface\AddOns\Grid\Layout.lua"]:783: in function `UpdateTabVisibility'
[string "@Interface\AddOns\Grid\Layout.lua"]:606: in function `PostEnable'
[string "@Interface\AddOns\Grid\Core.lua"]:227: in function <Interface\AddOns\Grid\Core.lua:219>
[string "=[C]"]: ?
[string "@Interface\AddOns\Dominos\libs\AceAddon-3.0\AceAddon-3.0.lua"]:70: in function <...ce\AddOns\Dominos\libs\AceAddon-3.0\AceAddon-3.0.lua:65>
[string "@Interface\AddOns\Dominos\libs\AceAddon-3.0\AceAddon-3.0.lua"]:527: in function <...ce\AddOns\Dominos\libs\AceAddon-3.0\AceAddon-3.0.lua:520>
[string "=(tail call)"]: ?
[string "=(tail call)"]: ?
[string "@Interface\AddOns\Grid\Core.lua"]:623: in function `EnableModules'
[string "@Interface\AddOns\Grid\Core.lua"]:429: in function <Interface\AddOns\Grid\Core.lua:422>
[string "=[C]"]: ?
[string "@Interface\AddOns\Dominos\libs\AceAddon-3.0\AceAddon-3.0.lua"]:70: in function <...ce\AddOns\Dominos\libs\AceAddon-3.0\AceAddon-3.0.lua:65>
[string "@Interface\AddOns\Dominos\libs\AceAddon-3.0\AceAddon-3.0.lua"]:527: in function `EnableAddon'
[string "@Interface\AddOns\Dominos\libs\AceAddon-3.0\AceAddon-3.0.lua"]:630: in function <...ce\AddOns\Dominos\libs\AceAddon-3.0\AceAddon-3.0.lua:615>
Locals: <none>
Second Edit: actually I see another line of errors in regards to Grid as well. <sigh> I guess I'll have to go back to using Healbot.
Bartender is updated and working, so I am not sure why they wont co-exist anymore ?
4x Grid\Layout.lua:955: attempt to index field 'frame' (a nil value)
[string "@Grid\Layout.lua"]:955: in function `PlaceGroup'
[string "@Grid\Layout.lua"]:1125: in function `LoadLayout'
[string "@Grid\Layout.lua"]:969: in function `ReloadLayout'
[string "@Grid\Layouts.lua"]:246: in function `?'
[string "@Bartender4\libs\CallbackHandler-1.0\CallbackHandler-1.0-7.lua"]:119: in function <...er4\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:119>
[string "=[C]"]: ?
[string "@Bartender4\libs\CallbackHandler-1.0\CallbackHandler-1.0-7.lua"]:29: in function <...er4\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:25>
[string "@Bartender4\libs\CallbackHandler-1.0\CallbackHandler-1.0-7.lua"]:64: in function `SendMessage'
[string "@Grid\Roster.lua"]:248: in function `UpdateRoster'
[string "@Grid\Roster.lua"]:92: in function <Grid\Roster.lua:82>
[string "=[C]"]: ?
[string "@Bartender4\libs\AceAddon-3.0\AceAddon-3.0-13.lua"]:70: in function <Bartender4\libs\AceAddon-3.0\AceAddon-3.0.lua:65>
[string "@Bartender4\libs\AceAddon-3.0\AceAddon-3.0-13.lua"]:527: in function <Bartender4\libs\AceAddon-3.0\AceAddon-3.0.lua:520>
[string "=(tail call)"]: ?
[string "=(tail call)"]: ?
[string "@Grid\Core.lua"]:623: in function `EnableModules'
[string "@Grid\Core.lua"]:429: in function <Grid\Core.lua:422>
[string "=[C]"]: ?
[string "@Bartender4\libs\AceAddon-3.0\AceAddon-3.0-13.lua"]:70: in function <Bartender4\libs\AceAddon-3.0\AceAddon-3.0.lua:65>
[string "@Bartender4\libs\AceAddon-3.0\AceAddon-3.0-13.lua"]:527: in function `EnableAddon'
[string "@Bartender4\libs\AceAddon-3.0\AceAddon-3.0-13.lua"]:630: in function <Bartender4\libs\AceAddon-3.0\AceAddon-3.0.lua:615>
Well, I missed the comment below about Plexus and a friend bugged me to update Grid, so I did it myself.
Sounds like Plexus is the better long-term option, but in case anyone else just wants an in-place update, this version of Grid should work in 9.0.1: Link Removed: http://www.mediafire.com/file/fcnc44llosidw6e/Grid for 9.0.1 v2.zip/file
Had to update 4 CreateFrame functions to use BackdropTemplate and remove a previous 'IS_WOW_8' hackfix that made things fall back to Legion functions.
Edit: Updated above file to have newer Ace3 libraries. May fix issues others were having.
In reply to MMOSimca:
WoW great. Thank you for this.
In reply to MMOSimca:
Thanks for the update! I tried downloading it but the bars are missing. The background is there like a big black box, I can still click where the frames would be and heal.
In reply to BlanStolak:
Interesting. What's the error you get (should give you a line number and error message if you use something like BugSack and BugGrabber), and do you use Clique?
I thought I handled every code path with backdrop issues, but I might have missed one somehow. The code is pretty hard to trace in some areas. My friends also didn't have any issues when testing as far as I know, but I'll check with them.
In reply to MMOSimca:
Yup, I downloaded it and got the background and no frames. Also, I had a couple more issues, but can't be sure it was Grid related or not, but after switching back to Grid2 (which I don't like at all) somehow some of my spells would not cast, as if somehow something had gone seriously wrong. Nothing seemed to get them to cast. Luckily I had backed up my Retail folder, so I restored everything back to before downloading Grid. Again, the second issue may or may not have been related, and it seems silly to think Grid could somehow have caused some big problem with my UI and spells casting, even after turning it off.
My point? Back up your setup.
Regardless, thanks for your efforts. If you get this working I will be first in line. :D
Oh, also, at least for me, Plexus does not do the job. The fact that you can modify, tailor and customize Grid extensively is what I like about it.
In reply to fluffyclucks:
plexus is grid just updated with fixes and more statuses. How does plexus fall short if grid is ok? (seriously interested if you have any concerns/info) Im more than happy to try and help.
In reply to fluffyclucks:
Hey, do you use other Grid addons, like Grid Indicator Dynamics? After downloading the newest Grid version from @MMOSimca my Grid had the same issue until I deactivated the Indcator addon.
I I activate it again, I get this error:
Message: Interface\AddOns\GridIndicatorsDynamic\Box.lua:15: attempt to call method 'SetBackdrop' (a nil value)
It refers to Ace3, so it might be possible to fix this, if you update Ace3 (Interface>Ace3) manually: https://www.wowace.com/projects/ace3/files/3078383 - I can't test if this works at the moment, cause the servers don't work... ;-)
Okay, updating ACE3 did not help :( I still get the error:
Message: Interface\AddOns\GridIndicatorsDynamic\Box.lua:15: attempt to call method 'SetBackdrop' (a nil value)
Time: Thu Oct 15 20:37:57 2020
Count: 1
Stack: Interface\AddOns\GridIndicatorsDynamic\Box.lua:15: attempt to call method 'SetBackdrop' (a nil value)
[string "=[C]"]: ?
[string "=[C]"]: ?
[string "@Interface\FrameXML\RestrictedFrames.lua"]:673: in function <Interface\FrameXML\RestrictedFrames.lua:672>
[string "@Interface\FrameXML\RestrictedFrames.lua"]:811: in function `CallMethod'
[string " RegisterUnitWatch(self)
self:SetAttribute("*type1", "target")
self:SetAttribute("toggleForVehicle", true)
local header = self:GetParent()
if header:GetAttribute("unitsuffix") == "pet" then
self:SetAttribute("useOwnerUnit", true)
self:SetAttribute("unitsuffix", "pet")
end
local click = header:GetFrameRef("clickcast_header")
if click then
click:SetAttribute("clickcast_button", self)
click:RunAttribute("clickcast_register")
end
header:CallMethod("initialConfigFunction")
self:SetWidth(75)
self:SetHeight(37)
self:SetAttribute("initial-width", 75)
self:SetAttribute("initial-height", 37)
local attr = self:GetAttribute("*type2")
if attr == "togglemenu" or attr == nil then
self:SetAttribute("*type2", nil)
end
"]:17: in function <[string " RegisterUnitWatch(self)..."]:1>
[string "=(tail call)"]: ?
[string "=[C]"]: ?
[string "@Interface\FrameXML\RestrictedExecution.lua"]:484: in function <Interface\FrameXML\RestrictedExecution.lua:447>
[string "@Interface\FrameXML\SecureGroupHeaders.lua"]:116: in function <Interface\FrameXML\SecureGroupHeaders.lua:110>
[string "@Interface\FrameXML\SecureGroupHeaders.lua"]:173: in function <Interface\FrameXML\SecureGroupHeaders.lua:130>
[string "@Interface\FrameXML\SecureGroupHeaders.lua"]:495: in function <Interface\FrameXML\SecureGroupHeaders.lua:394>
[string "=[C]"]: in function `Show'
...
[string "@Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua"]:70: in function <Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:65>
[string "@Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua"]:527: in function <Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:520>
[string "=(tail call)"]: ?
[string "=(tail call)"]: ?
[string "@Interface\AddOns\Grid\Core.lua"]:623: in function `EnableModules'
[string "@Interface\AddOns\Grid\Core.lua"]:429: in function <Interface\AddOns\Grid\Core.lua:422>
[string "=[C]"]: ?
[string "@Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua"]:70: in function <Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:65>
[string "@Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua"]:527: in function `EnableAddon'
[string "@Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua"]:630: in function <Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:615>
Locals: <none>