Filtering applicants when creating a group
athei opened this issue · 8 comments
When creating a group for a popular key or raid group there are so many applicants that it would be very useful to apply to them the same filters as when looking for groups.
I understand that not all filters make sense when filtering applicants and not groups. But some would be very helpful like raider.io properties or classes.
Is it even possible to do that?
Hard to get it right and bug-free, because the testing time for this addon is limited to 15 minutes of group forming per week.
Hmm can you elaborate? I create M+ groups regularly. My group forming time is certainly longer than 15 minutes. Never encountered such a limit. What do you mean exactly?
And looking at the structure above, some questions arise: how should rio filtering work when a group applies for your raid and one member has rio=900 and the other rio=1000, but you set rio>=1000?
I think the question only exists for variables that apply to only the group leader. That seems to be exception. For the other filters like classes that apply to the whole group the current concept naturally extends to creating groups when you treat applicant groups in the same way as the current groups: When I say dhs == 1 or rogues == 1
then only a group with only a dh or only a rogue or with both would satisfy the filter.
For the rio problem: Off the top of my head there is this intuitive behaviour: All players must satisfy the filter. In your example the applicant group would be filtered away because both players must satisfy the filter.
I think this would be possible. A quick look at Blizzard's interface code shows that you can get all the necessary information and apply a hook to the sorting function just like PGF to filter out applicants.
C_LFGList.GetApplicantInfo(applicationId)
returns a table with applicantID, applicationStatus, pendingApplicationStatus, numMembers, isNew, comment, displayOrderID
And for each member index, C_LFGList.GetApplicantMemberInfo(applicationId, memberIdx)
returns name, class, localizedClass, level, itemLevel, honorLevel, tank, healer, damage, assignedRole, relationship
. Using the name, it is possible to get the raider.io ranking of the applicant.
However, this sounds like a separate addon to me. Also, this is even harder to test than the PGF. Not only do you need a subscription, you also have to create raid groups regularly. Hard to get it right and bug-free, because the testing time for this addon is limited to 15 minutes of group forming per week. And looking at the structure above, some questions arise: how should rio filtering work when a group applies for your raid and one member has rio=900 and the other rio=1000, but you set rio>=1000?
Hmm can you elaborate? I create M+ groups regularly. My group forming time is certainly longer than 15 minutes. Never encountered such a limit. What do you mean exactly?
There is no hard limit. It was just meant to demonstrate that you cannot test at arbitraty times but are limited to group forming times. I currently don't have a raid and I'm not forming groups, so I would have a hard time testing at the moment.
Regarding the UI: would a single advanced expression box be enough for filtering or would you prefer a UI with checkboxes and input fields like in PGF? A full UI can be a lot of work. Also I'm wondering which keywords are important enough to be put in the UI.
Regarding the UI: would a single advanced expression box be enough for filtering or would you prefer a UI with checkboxes and input fields like in PGF?
I never used the UI. I always forget the interaction between checkboxes and the expression box and therefore find it mostly distracting. If it would be only for me the UI could be removed all together. That said, I guess that there are people that find the UI useful. I am just not one of them.
I created a new project for filtering applicants: https://github.com/0xbs/premade-applicants-filter.
This is still an early alpha version, I did not even bother to load the addon in-game. A user interface for entering an expression is completely missing, but the addon sceleton is done and logic is half-way implemend. I can't promise any progress the next days/weeks, busy with work and my free time is very limited, but will try to my best.
Alright, have a look! A beta version should also be available via CurseForge/Twitch Client soon. Note that you have to press the reload button after you change the expression to update the view. Thinking about adding an "apply" button. Please open issues regarding PAF at the new GitHub project.
https://github.com/0xbs/premade-applicants-filter
https://www.curseforge.com/wow/addons/premade-applicants-filter