hewisaurus / PrancingTurtle

A web-based CombatLog parser for RIFT
GNU General Public License v3.0
6 stars 3 forks source link

Role matching revamp #2

Open Bamux opened 6 years ago

Bamux commented 6 years ago

I think your current system based on a number of listed abilities with a role assigned to them works very well. Perhaps you can add a field priority to the table abilityrole (value 0-3).

0 is the default value and your previous rules for the role identification works. Otherwise, if a player uses multiple abilities that are present in the list, the ability with highest value (priority ) determines the role.

hewisaurus commented 6 years ago

Good idea. I've done something similar with BossFights where the same name pops up twice - my only concern is that in the future we may need to add something with a higher priority again over time and end up with heaps of different priorities. The only other alternative that I can think of is a table where we put abilities together, and if that combination appears or part of that combination then a specific role is selected.

hewisaurus commented 6 years ago

The priority field would be by far the fastest implementation of this though.

Bamux commented 6 years ago

Meanwhile I am even the opinion that a change is not really necessary. Trion forces most classes to use 61 points in one soul that means that you can use max 15 points in other souls. So if you use only abilities above 15 points to identify a role, there should be almost no overlap. So if there are problems you have to change only a few abilities in the list.

Do you have examples where the role matching does not work? In my parses of the last months there were only problems with the primalist support or if there was not enough data (used abilities) for a player because of a disconnect.

hewisaurus commented 6 years ago

I agree with you in theory, but have been having to make periodic changes to the ability list for long enough to want to do it proactively before other things crop up. When souls are reworked, someone figures out a better hybrid, someone uses a weird macro with odd abilities, legendary abilities having different IDs, etc... that can muck it up. While these scenarios are rare, they could be avoided if there was an ability system that was a little better. I like the priorities being able to override, but have seen that each soul really needs at least two abilities to make the system work properly, 3 or 4 is even better, depending on whether players choose to use the abilities we've selected.

I have fixed a bunch of examples where roles weren't detected and it wasn't obvious why - and this is outside the tank / primalist support issues, too. I can check the encounters that don't have 10 roles detected, I assume there are still a few of those.