promotional bannermobile promotional banner

Grouper LFG

Grouper is a looking for group tool for WoW Classic
GrouperSearchFilters.png

GrouperSearchFilters.png

GrouperSearchResults.png

GrouperSearchResults.png

GrouperCreateGroup.png

GrouperCreateGroup.png

GrouperMyGroups.png

GrouperMyGroups.png

Description

Grouper - Server-Wide Group Finder for WoW Classic Era

Tired of spamming trade chat looking for a group? Grouper is a powerful server-wide group finder addon for World of Warcraft Classic Era (and TBC Classic) that lets players browse, create, and join groups for dungeons, raids, quests, PvP, and more — all from a clean, tabbed UI with no chat spam required.

The Problem

WoW Classic's built-in LFG tools are limited: LookingForGroup channel is text-only chaos, trade chat clogs quickly, and there's no structured way to advertise roles, level ranges, or specific dungeons you're running. When you finally find a group the information is already stale.

Meanwhile raid leaders have it worse — tracking 20-40 recruits across whispers, manually counting class slots, and reposting announcements every few minutes is tedious busywork that takes focus away from actually playing.

The Solution

Grouper uses a dedicated addon communication channel shared across all Grouper users on your realm. Group listings are broadcast automatically, updated in real time when members join or leave, and displayed in a structured UI with rich filtering — so players see only the groups relevant to them, and leaders spend less time managing chat.

Core Features

Server-Wide Group Discovery

  • Browse all active Grouper groups across your entire realm in one place, regardless of what zone you're in
  • Groups are sorted by recency and auto-expire when stale — no dead listings cluttering the view
  • Listings update live as leaders sync changes without any manual refresh needed

Smart Filtering

  • Level range filters — set a min/max level band; groups outside your range are hidden automatically
  • Activity type checkboxes — filter to Dungeons, Raids, Quests, PvP, or Other independently
  • Conditional sub-filters — when Dungeon is checked, a "Filter by Dungeon" dropdown appears; when Raid is checked, a "Filter by Raid" dropdown; when PvP is checked, a "Filter by Battleground" dropdown — all three can coexist
  • Role filter — show only groups that still need a Tank, Healer, or DPS
  • TBC-exclusive content (Eye of the Storm, TBC raids) is version-gated and only appears on TBC clients

Dungeon Group Management

  • Multi-dungeon selection — list multiple dungeons in a single group posting
  • Role slot tracking — Tank, Healer, and DPS slots displayed with current fill status
  • Auto-join system — players can request to join via whisper handshake; the leader receives a popup to accept, assign a role, and confirm level
  • Automatic role enforcement — a second tank or second healer cannot auto-join a slot that is already full
  • Guild restriction — mark a group as guild-only; only members of the specified guild will see it in Browse results

Raid Recruitment Tracking

  • Dedicated raid group type with configurable raid size (10, 20, 25, 40, etc.)
  • Role quota tracking — set targets for Tanks, Healers, and DPS; counts decrement automatically as members join
  • Class slot tracking — specify how many of each class you need (e.g. "2 Priests, 1 Warlock") with live fill counts
  • Loot system field — advertise your loot method (Master Looter, DKP, EPGP, Loot Council, Soft Reserve, /roll, Free for All)
  • Clear status field — advertise your raid's progression status (Fresh, Partially Cleared, Farm Mode, Specific Bosses)
  • Reserved items field and voice info field for Discord/Vent details

Announcement Integration

  • Announce button posts your group to /LookingForGroup channel with size, roles needed, and class needs formatted automatically
  • Per-channel announcement preferences — choose which channels (LFG, Guild, GreenWall confederation) receive announcements
  • GreenWall confederation support — announce to your cross-guild confederation channel
  • Quest link reconstitution — quest group postings include a clickable quest link in the announcement
  • Rate-limited to prevent accidental spam (3-second cooldown per announce)

Group Management Controls

  • Sync — broadcasts your current group state to all Grouper users; updates member counts from the live WoW party/raid roster
  • Edit — modify group title, type, dungeons, roles, or description without disbanding
  • Assign Roles — reassign Tank/Healer/DPS roles to any group member via popup
  • Transfer Leadership — hand group ownership to another member with a dedicated popup showing only leader selection — no role reassignment clutter
  • Disband — cleanly removes the Grouper listing without disbanding the underlying WoW party/raid

UI & Customization

  • Tabbed interface: Search Filters, Search Results, Create Group, My Groups, Options
  • Minimap button with group count tooltip; left-click opens addon, right-click opens config
  • TitanPanel integration — displays active group count in your TitanPanel bar
  • Configurable border and background colors
  • Font selection
  • Window position and size persist across sessions and /reload
  • ESC key closes the window cleanly via UISpecialFrames

Group Types

  • Dungeon — 5-man instance groups with role slots (Tank/Healer/DPS), multi-dungeon selection, level range, and auto-join support
  • Raid — large-group recruitment with role quotas, class tracking, loot system, and clear status fields
  • Quest — questing groups with quest link integration in channel announcements
  • PvP — battleground groups with battleground selection (Classic Era and TBC battlegrounds supported)
  • Other — free-form groups for world events, role-play, or anything else

How It Works

Communication System

Grouper uses AceComm-3.0 over a custom addon channel (Grouper) to broadcast group state across all users on the realm. The communication flow is:

  1. On load — Grouper broadcasts a REQUEST_DATA to populate the local cache from any active leaders
  2. On group create / sync — the leader broadcasts a GROUP_UPDATE message containing title, type, size, roles, members, allowed guilds, and a timestamp
  3. On member leave / disband — a remove notification is broadcast so all clients drop the stale listing immediately
  4. Auto-search — Grouper periodically re-requests data to catch leaders who joined after the initial load

Security & Taint Safety

  • All SendChatMessage calls pass through an IsSecureContext() guard combining InCombatLockdown() and issecure() — preventing ADDON_ACTION_BLOCKED errors from tainted execution contexts
  • Auto-join invite calls use a separate InCombatLockdown()-only check because InviteUnit does not route through the deprecated chat API and does not require the full taint guard
  • Cross-faction filtering is automatic — Horde players never see Alliance groups and vice versa

Slash Commands

  • /grouper show — Open the Grouper main window
  • /grouper hide — Close the Grouper main window
  • /groupercd — Print dungeon cache contents to chat (debug)
  • /groupercgm — Print group member cache contents to chat (debug)
  • /grouper debug on|off — Enable or disable verbose debug output

Requirements

  • Ace3 (AceAddon-3.0, AceComm-3.0, AceDB-3.0, AceGUI-3.0, AceTimer-3.0, AceConsole-3.0)
  • VersionCheck-1.0
  • WoW Classic Era (Interface 11507–11508)
  • TBC Classic (Interface 20505)
  • WotLK Classic (Interface 30405) and Titan Reforged (Interface 38000)
  • Cataclysm Classic (Interface 40402)
  • Mists of Pandaria Classic (Interface 50502–50503)
  • Retail / The War Within (Interface 110207+)

Recent Updates

v0.8.1 (Latest Release — 2026-08-05)

  • fix: Auto-Join works again. It could never send an invite on Classic Era after Blizzard's recent client update changed how addons invite players. Grouper now checks which method your client supports instead of assuming, so it works on every game version
  • fix: The Auto-Join confirmation popup is back. When someone asks to join your group you get a "Invite them?" prompt with Yes and No, instead of the invite being sent behind your back. You stay in control of who joins, and it is also what lets WoW allow the invite at all — that popup is required, and without it the whole feature was blocked
  • fix: Auto-Join no longer floods your screen with "AddOn 'Grouper' tried to call a protected function" errors. Every successful invite was producing eight of them, and the updated group list never reached anyone
  • fix: When an invite fails, the group leader is now told and the person trying to join gets a whisper explaining it. Previously it failed in complete silence, which made Auto-Join look like it simply did nothing
  • fix: Join requests from players on another realm could be recorded under the wrong name, so the leader's group list did not match who had actually asked
  • fix: Long dungeon names are no longer cut off mid-word in other players' group lists. "Lower Blackrock Spire" was showing up as "Lower Blackrock Spir"; it now shows as "LBRS", which is what people call it anyway
  • fix: Turning Auto-Join off now actually turns it off. The setting existed but did nothing, so leaders who switched it off kept getting join requests. Players who try to Auto-Join you while it's off are told to whisper you instead
  • fix: Removed the "auto-accept invites" option. It promised to skip the confirmation popup, which WoW does not permit — that popup is what allows the invite to happen at all — and it never did anything regardless
  • fix: Auto-Join now actually works. It was turning down anyone the group had already seen — which included every player the leader had synced, and anyone who clicked the button a second time — so most requests were quietly declined instead of getting an invite
  • fix: Group leaders were being whispered "…disband your party first" out of nowhere. That message was meant for someone trying to join a second group, and it was being sent to the leader by mistake
  • fix: The "2nd Role" column was showing a dash for everyone, on both the Search Results and My Groups tabs, even after roles had been assigned. Everyone's second role now shows properly — including when it's the same as their main role, which is a perfectly normal choice
  • fix: The Assign Roles window no longer lets you leave a member's second role blank. You always pick two, and picking the same role twice is fine
  • fix: If you had the LFG channel ticked in the announcement settings but weren't actually in that channel, your announcements were skipped there without a word. Grouper now joins the channel for you, and tells you if it can't
  • fix: Shamans now show in the correct class colour on Classic Era, where Shaman and Paladin share the same pink. Other game versions are unchanged
  • fix: The version at the bottom of the window ran straight into its label, reading "Grouper Version0.8.0". It now has a space
  • fix: Players on Burning Crusade were being told they had version 0.6.1 no matter which version they actually had installed
  • fix: The Search Filters and Create Group tabs were only drawing part way down the panel — several filters and form fields further down were missing entirely. Both tabs now build completely
  • fix: Group leaders were sometimes not recognised as the leader of their own group, which could leave the wrong controls showing on the My Groups tab. Player names are now matched consistently everywhere, including for players from realms with a space in the name
  • fix: When a large group listing arrived incomplete, Grouper asked for the missing piece many times over instead of once, adding needless chatter on the shared channel. It now asks once, then once more if it still hasn't arrived
  • fix: /grouper status always showed "Players: 0" no matter how many players Grouper had seen. It now shows the real number
  • fix: Typing /grouper on its own now opens the window, instead of just printing the command list
  • fix: Closing and reopening the window repeatedly could produce an error blamed on whichever other addon happened to draw a panel next. Grouper now cleans up its panels properly

v0.8.0 (2026-06-10)

  • fix: Fully resolved the retail error spam — while you're in a Mythic+ key, a raid boss encounter, or a PvP match, Grouper no longer touches the protected player information the game keeps private, which also clears up the unrelated world-map and crafting-order errors some players were seeing. Outside those situations, everything works exactly as before
  • fix: Group member join/leave is still tracked correctly even during Mythic+ keys, raid encounters, and PvP matches — Grouper reads your live group roster in those situations instead of the protected system messages, so nothing is missed
  • feat: Pick a primary and secondary role when joining a group — if the primary slot is already filled, you automatically fill the secondary slot instead, no extra back-and-forth with the leader needed
  • feat: Group member lists now show each player once with their secondary role displayed next to their name in a "2nd Role" column, color-coded by role — so you can see everyone's backup role at a glance
  • feat: The Assign Roles popup now has a Secondary dropdown for each member — leaders can record both roles when organizing the group
  • feat: Your last-used secondary role is remembered across sessions
  • feat: Smarter group announcements — when you Announce a dungeon group, Grouper works out exactly what you still need from everyone's primary and backup roles. If a current member can flex, it says so: e.g. "Need 1: Tank or Healer" instead of demanding both

v0.7.3 (2026-05-25)

  • fix: No more Lua error spam when running dungeons on retail — Grouper now safely skips the protected system messages Blizzard's retail client marks as off-limits to addons

v0.7.2 (2026-04-13)

  • fix: Minimap right-click now opens ESC > Interface > AddOns > Grouper instead of a standalone floating config window (CFG-001)
  • fix: SetupOptions() deferred via C_Timer.After could leave options unregistered if called before the frame fired — now runs synchronously in OnInitialize
  • fix: InterfaceOptionsFrame_OpenToCategory removed in Classic Era 1.15+ (returns nil) — replaced with Settings.OpenToCategory
  • fix: Category ID stored from AceConfigDialog:AddToBlizOptions return value and used directly in Settings.OpenToCategory — string name lookup was unreliable on some builds

v0.7.0 (2026-04-03)

  • feat: Multi-client support — Grouper now runs on Classic Era, TBC Classic, WotLK Classic, Titan Reforged, Cataclysm Classic, Mists of Pandaria Classic, and Retail
  • feat: Grouper.IsExpansionAllowed(expansion) — per-client allowlist gates instance data to the correct expansion set; Titan Reforged (TOC 38000) detected via interface range check
  • feat: Data/InstanceData.lua expanded from 53 to 199 entries — full dungeon, raid, and battleground coverage through The War Within
  • feat: Expansion filter dropdown in the Create form — filters the instance picker to a single expansion; only expansions available on the running client appear in the list
  • fix: Level ranges in the Create form and submitted group data clamped to GetMaxPlayerLevel() — prevents historical expansion levels from exceeding the active server cap
  • fix: GameTooltip:IsOwned(self) calls on FontString widget labels replaced with unconditional GameTooltip:Hide() — eliminates "Wrong object type for function" crashes across GrouperCreate, GrouperBrowse, and GrouperResults (12 sites fixed)
  • chore: TOC audit — MoP interface numbers (50502, 50503) added; Titan Reforged (38000) treated as WotLK-era client

Bug Reports & Feature Requests

Found a bug or have a suggestion?

If you have any questions, comments, or anything else, please feel free to reach out on Discord!

Credits

Developed by:

  • Pimptasty - Author

Special Thanks:

  • The Old Gods guild community for real-world testing and feedback
  • Ace3 library maintainers for the excellent addon framework
  • WoW Classic community for bug reports, suggestions, and support

License

Grouper is open-source software. See the LICENSE file for details.

The Grouper LFG Team

Forgeborn tier frameprofile avatar
  • 2
    Followers
  • 27
    Projects
  • 415.0K
    Downloads
Donate

More from PmptastyView all