LFG Filter for Premade Groups

LFG Filter for Premade Groups

13.7k Downloads

LFG Filter for Premade Groups, v9

It's great to have built-in Premade Group finder (aka LFG internally) except all the groups are mixed together and you need to carefully scan list to find that one raid or difficulty you've interested in or use TEXT based filter and risk missing groups you'd want.

Features

  • Sorts all groups by raid/difficulty, so, say, all you heroic groups for some specific raid are together.
  • Allows you to filter search lists to only results you want, removing everything else from list.

Filtering expressions

To filter results, enter a search expression into filter editbox on group search screen starting with =. Both text and expression will be used if you have some text before =. Expressions are constructed from variables that hold info on each found group and use Lua syntax and if you're unfamiliar with it, a short summary will be presented below. If you make an error while writing expression it will be printed in chat when you try to search and result list will be empty.

Supported variables

Logical values:

  • normal - group is running normal difficulty.
  • heroic - group is running heroic difficulty.
  • my_server - group is running on my server. Useful for searching for trash runs or guild runs if you wish to join them later in mythic.
  • Raids and individual bosses:
    • highmaul, hm - group is running Highmaul raid.
      • kargath, bladefist, kargath_bladefist - Kargath Bladefist
      • butcher, the_butcher - The Butcher
      • tectus - Tectus, The Living Mountain
      • brackenspore, bracken - Brackenspore
      • twin_orgon, twins - Twin Orgon
      • koragh, breaker - Ko'ragh
      • imperator, margok - Imperator Mar'gok

blackrock_foundry, brf - Blackrock Foundrty * oregorger, oreg - Oregorger the Devourer * gruul - Gruul * hansgar, franzok, hans, franz, hans_and_franz, twins - Hans'gar and Franzok * beastlord, darmac - Beastlord Darmac * flamebender, kagraz - Flamebender Ka'graz * operator, thogar - Operator Thogar * blast_furnace, bf, blast, furnace - Blast Furnace * kromog - Kromog, Legend of the Mountain * iron_maidens, im, maidens - The Iron Maidens * blackhand - Blackhand

hellfire_citadel, hellfirecitadel, hellfire, hfc = Hellfire Citadel

All raid and boss variables are as shown, no matter what language your client is. Boss values show defeated bosses, but there's two more values for convenience so you don't have to remember that. Just compare boss variable with "alive" or "dead", so if you need groups with Kargath Bladefist already cleared, use "kargath == dead". Generic boss1, boss2, etc. values are also available in any recognized raid even if I didn't add readable names yet.

String values, all strings are automatically converted to lower case to simplify your searches. You can use string functions listed below:

  • name - group's name - that big yellow text.
  • comment - longish comment entered by group leader, that place where people usually put "bring curve" or something.
  • voice - name of voice chat program set by leader. Will be completely absent (nil) from groups without voice, so you first must check if it is present before trying to use string functions on it - e.g. "voice and voice:find('ts')". Obviously this can also be used as logical value to exclude any voice groups: "not voice".

Number values:

  • ilvl - minimum ilevel required by group.
  • defeated - amount of bosses defeated.
  • members - people already in group.
  • tanks/healers/damagers - amount of players in tank/healer/damager role.
  • warriors/deathknights/paladins/monks/priests/shamans/druids/rogues/mages/warlocks/hunters - amount of players of respective class.

For each variable that have plural name there's also a copy with singular name for convenience. So both "mages" and "mage" or "tanks" and "tank" will work, for example.

Short summary of Lua syntax

  • and, or, not - logical operators. "highmaul and normal" will find Highmaul normal raids, "highmaul and (normal or heroic)" will find Highmaul normal and heroic and will hide mythic.
  • == - equal, ~= - not equal, comparison for everything.
  • < > <= >= - comparison for numbers.
  • :find - a string function, true if requested substring is present.
  • :match - a string function, can be used for more complex searches with regular expressions. Look it up in Lua manual.
  • () can be used to group and define precedence.

Examples

  • =highmaul and heroic and defeated == 0
    • Fresh Highmaul Heroic.
  • =highmaul and ((normal and (name:find("imp") or defeated == 6)) or (heroic and defeated == 1))
    • Find Highmaul raid groups, either normal with 6 bosses defeated or "imp" mentioned in name, or heroic with just one boss defeated.
  • =highmaul and name:find("trash") and name:find("mythic") and my_server
    • Find Highmaul mythic trash runs on your server.
  • =(heroic and breaker == alive and kargath == dead) or (normal and breaker == alive and twins == dead)
    • Just an example of runs I was looking some time ago: either heroic run with Kargath dead (that I already killed) and Ko'ragh still up, so I won't get Imperator-only runs or normal on Ko'ragh (the single normal boss I still didn't kill that week) - that is he's still alive and boss directly before him is dead.
  • =members > 3
    • Find groups with at least 3 members. It will skip some groups that's just starting, but will also reliably hide recruit ads and other spam.

Change log

2015-07-07 v9

  • TOC update for 6.2.
  • Fix incompatibility with new other language search in 6.2.
  • Hellfire Citadel raid tokens: hellfire_citadel, hellfirecitadel, hellfire, hfc.

2015-03-11 v8

  • New "voice" string or nil value for voice chat set by leader.
  • Readable names for BRF bosses.

2015-02-14 v7

  • Fix "defeated". I filled it with alias to "dead", forgetting that I already use it as counter of defeated bosses.

2015-02-05 v6

  • Generic boss1, boss2, etc. names for recognized instanced so there will be something to use while I write readable names.
  • Support for Blackrock Foundry boss detection, using generic names for now.

2015-02-05 v5

  • Support for Blackrock Foundry, available as "blackrock_foundry", "blackrockfoundry", or "brf".

2015-02-04 v4

  • General support for aliases and short "hm" alias for Highmaul raid.
  • Support for state of each specific boss in Highmaul.

2015-01-24 v3

  • Support both plural and singular names for variables that hold amount of something.
  • Add variables for number of players of specific class.

2015-01-21 v2

  • Complete filtering rework: now works with expressions entered directly into group search filter field.

2014-11-12 v1

  • Initial implementation: sort + activity ID search.