Elo System for AW match-making - maybe not as hard as you think

And now to address some of @Brobb’s points raised in the link in the post above…

You’d still be collecting relatively few data points to base an individual rating on, so it would be very noisy.

True… but the algorithm makes the scoring more granular. You are making up for low rate of AW encounters with more detail per encounter which gives you more data for a better / more accurate balance.
Besides, think of it in the chess context… it works there, and chess players are playing in competitions less often on average than we’ll be partaking in AW.

The Point #2 you admitted is not specific to the mechanic of this matchmaking system (which I agree) so will not cover it here.

It would be opaque, or at least very complicated, and in each war round 50% of alliances would still lose. Losing players would still complain that they were being mismatched. The difference would be that they would not be able to explain why. (So they’d invent crazy theories based on victimisation.)

An excellent point… but I don’t think “The players may complain because they don’t understand it” is a basis to block it. On that basis the entire game would not have been developed given SG’s proven lack of transparency on how the mechanics work. Really it will only be a problem if it is producing rediculous match-ups… and I feel the way it’s designed that it is less likely to do so than the current systems employed.
(Edit)
And a simple solution: Improve transparency. In Raids ‘cups’ are really the Elo Score. So you’d do similar for AW and represent the player’s individual Elo Score in their stats, as well as the Alliance Elo Score as a whole. Call it ‘Alliance War Trophies’ or whatnot.

It would require a lot of development resources even to beat together a beta, and I presume there would be more than a few teething problems to iron out before it was workable.

Addressed in my original post. The development would be non-trivial, but I don’t feel so complicated as to be a massive barrier. Guess SG would need to assess this if they are interested. I fundamentally agree with your point, however, that it’s not worth doing if it does prove over-expensive in time… after all it would really just be to address the perception of ‘fairness’ in the system and to cut down on some of the complaints / noise.

2 Likes

It’s a sensible algorithm, based on reading it through only once. I like the general principles. But as always, the death is in the details, which is where most of the effort is usually expended, and you don’t have much by way of details.

  • Units seem to be implied for Health Elo, which is measured in health points, and Avg Points Elo, measured in battle points. These units are, obviously, different and not well suited for combination.

  • No units even seem to be implied for Power Elo or Defence Elo (presumably they’d be the same).

  • Related: Player Elo is an average of each individual component Elo, “with weightings as appropriate”. Seems like an implicit recognition that scaling is an issue that will need to be addressed. That is likely to take a lot of fiddling.

  • There is obviously a similar issue for Total Alliance Elo, where you propose a “+ve boost” for victory - unit and scale issues loom.

So I don’t think the job is done. You’ve made a start (a start that I find really appealing) but it’s just a start. I look at the algorithm and see a day the two of us spend together at a table with a whiteboard and a couple of laptops figuring out the details, then all the coding, then weeks of messing about just to fine tune it in beta.

There would also be something of an issue with player understanding. One of the advantages of using Alliance Score or just Titan Score (bleh) for matching is that everyone can see what is happening. This sort of layered process would be totally opaque. I can’t see players liking that.

Having said all of that, and remaining deeply sceptical about the resources required to implement it all, I would love to see SG try this - I think it would work.

Is it the best use of their resources, though? Match using Alliance Score, or Titan Score if you must, I say, and devote those development days (Weeks? Months?) to Season 2.

1 Like

We can’t call this an ‘Elo type’ system any more, btw. It’s no longer even a distant cousin. (Doesn’t mean it’s bad, it’s just not Elo.)

1 Like

Well, semi-Elo in as much as it uses your score against the opponent’s to modify your score based on the result - at least at the Alliance level. Even the original Elo score for chess actually factors in aspects outside of just the plain outcome.

Whatever… we digress - don’t want to turn this in to an academic argument about Elo. It needs a name to call it so let’s just stick with the current one in the interim… accurate or not.

I won’t get into addressing your individual points about the algorithm outside of just saying “it’s a high level algorithm… the devil is in the detail”. The point about health, however… the health points taken are the basis of calculation of the score. So really the score would be based on the amount of health taken from the enemy as compared to some form of norm or baseline.

I address your point about transparency in my subsequent answer to your issues. You won’t get total transparency, but you can alleviate it by exposing the calculate per-player and per-alliance scores as a basis for players to decide if they were ‘fairly’ matched by being able to compare theirs with other alliances and players of known quality. If the system is producing fair match-ups then this won’t be too much of a problem I feel.

I feel we should leave it out there for SG to assess and determine in terms of detail… but if anyone can think of a MAJOR gotcha as to why it won’t work at all as a concept then it bears discussion.

1 Like

This is a good point. I think you’ve mitigated my concerns here.

We agree. But that seems like a pretty good argument for sticking with the status quo (Alliance Score) which seemed to be working fine.

That’s a good idea that I like. But the problem remains: how ‘Alliance War Trophies’ were calculated would continue to be opaque, and the source of much moaning and complaining. I guess you could make the algorithm public. I don’t think that would help with understanding.

I can get over, around or through everything else: this is really the only deal breaking issue I have with what I think is a really great idea you have developed.

1 Like

I have no idea what an ELO system is ( and probably would not understand it anyway), but if it allows individual players to opt out of AW before the matchmaking is done, then it just might be a good thing :slight_smile:

1 Like

I would like to say that this Elo System for AW match-making does seem like a good idea, as opposed to the past systems based on alliance score and the current system based on titan score. I do agree, after some further thought, that the current metric used for matchmaking based on titan score is inherently flawed as it attempts to assess someone’s performance in one aspect of the game completely unrelated to another aspect of the game. The way I see it now:

  1. The titan score component of alliance score is based on the alliances historical ability to defeat titans of a certain strength and is used to help match a titan of appropriate strength to the capabilities of the alliance.

  2. The individual players’ number of cups is based on their historical ability to defeat other opponents of a certain strength (who have also proved themselves) and is used to help match another player of an appropriate strength to the capabilities of the player who raids.

So, I am basically thinking why shouldn’t alliance wars be the same way? There should be a score that is reflective of an alliance’s historical ability to defeat other alliances of a certain strength (who have also proved themselves) that can be used to match different groups together. Although I see the need to address several issues at once such as mercing, alliances splitting, multiple alliances that share their members, etc., I disagree that simply storing more performance metrics is a necessary solution to make a good Elo system.

Instead, I am proposing here for the introduction of an Elo system that evolves from as close of a matchup that can possibly be made using other performance metrics already available in the game. Here is my idea:

A) Take a survey of members in the alliance who would like to participate in an alliance war
B) Use the survey results and add take the average trophy score of these members
C) The average trophy score represents (as accurately as I can come up with) the initial Elo score for AW
D) Let the alliance partake in a single war with another one who has the same number of willing alliance war participants and a very similar average trophy score calculated in B).
E) Let the Elo score respond to victories and losses accordingly, just like with raids. The difference here is that each time, the Elo point ratio will be +x/-x for every war, and never with an uneven points distribution. Never perform future matchmaking based on steps A)-D) after an alliance has had its first war.
F) Stay the hell away from average trophy score after this point (since its continued use has detrimental consequences on future matchmaking as explored in past threads) and let the alliances find their appropriate positions on the Elo leader board based on their past historical performance while also continuing to allow for the ability of members to opt out (remove their war defense teams from the battlefield).

Based on this system, matches might be initially unfair, but the continued ability of the system to respond to alliance victories/losses and use past historical performance data to determine future matchups is better for the long term. I will try to address as best I can possible ways this system could be abused in a different post; in particular, B) and C) can be problematic with respect to Elo responsivity if an experienced alliance that wars for the first time under this new matchmaking system intentionally tanks cups or if its members intentionally exclude themselves from the initial matchmaking while including themselves all at once suddenly in subsequent matches.

1 Like

I appreciate the support and the counter-proposal @Mezbot9754

I like the concept of seeding the initial Elo starting point with Cup ratings (as a one-off starting point) and the thought behind the survey… but from there it looks like it’s a straight results-driven Elo system.

My concerns with this are:

  • You probably won’t get the participation in the initial survey to make it anywhere close to representative… unless of course you mandate it for AW entry I suppose.
  • The system I devised is designed to allow the concept of individual player opt-out as well as individual player migration between alliances without prejudicing the old or new alliance’s matchings in the war. Running a traditional Elo system as you propose makes it vulnerable to this. It will balance after a time, sure, but there will be constant ‘churn’ due to aspects such as mercing and normal coming-and-going of members (in teamed alliances, etc) that I fear the Elo score for such will remain unstable.
  • My original fear is that you won’t have sufficient granularity given the number of encounters to allow it to be properly responsive, so alliances may find themselves with essentially uneven match-ups for quite a while in real time before it balances.

As such I proposed the ‘modified’ Elo in tracking individual players’ performance as well as that of the alliance as a whole, to allow some players to opt out from time to time, or move to other alliances temporarily or otherwise, and their performance will exit or move with them, thus modifying the Elo score of the the old and/or new alliance and making it more responsive.

It may well be, however, that the simpler system you propose would be good enough… but I feel some thought may need to go in to people movement and/or opting out. This is the main difference between an individual Elo (such as for Chess, or Raids) that is only sensitive to a single person versus an Alliance-based Elo that has a lot more ‘moving parts’ that determine the performance of that alliance.

It really is a non-trivial subject this… I suspect few would have realised just how deep it could go if you wanted to make it a truly ‘fair’ system. :slight_smile:

1 Like

Merging another thread in.

What is wrong with the cups system used for raiding? Can’t this be used for alliance wars as well? Let’s have a rating count for alliances that is not tied to titans or trophies. Have this as a third rating system for the leaderboards.

Give everyone some score today (maybe start with the titan kill score). Then, adjust the score based on each war win/loss. If you win, you gain score, if you lose, you lose score. If you beat someone with a much higher score, then their adjustment is bigger (like with trophies). That way, people who keep winning will ultimately be matched against someone who is their level. People who keep losing will be matched down with a better matchup.

There are many factors that affect an alliance’s performance in wars- roster depth, player participation, team coordination…let the people who try hard fight other people who try hard. And let the casual people fight wars against other players who are not hardcore.

1 Like

I literally just proposed that in Little Infinity’s Elo thread. Check it out and let me know what you think:

Elo System for AW match-making - maybe not as hard as you think

@Rook, can you please close this thread, since this is already being discussed elsewhere? Thanks.

I disagree that you said the same thing. The ELO thread, including your post, is suggesting a more complex system tied to individual players’ performance combined. I’m suggesting that the scores should be tied to alliance. The option to “opt out” of a war would be unnecessary since that person who opts out would always opt out and the war performance would reflect that.

I don’t think people will abuse this system.

The current system is NOT being intentionally abused. It’s just not accurately accounting for alliance strength.

Okay, sure not EXACTLY the same thing, but we do share this idea:

In my case, I am saying maybe start with the average trophy score and the count of members who are interested in participating instead of the titan score.

The olther thread is about ELO System matchmaking, as per its title. I think both threads can coexist. :wink:

EDIT: Errrr nope, @Mezbot9754 made good arguments. Merged it is!

2 Likes

Looks to me like the ideas between @Mezbot9754 and @goldensurfer779 are sufficiently close.

Your call as to whether the threads stand alone… but I did post some concerns about the proposed system (that surprise surprise applies to both) in the other thread… so guess we’ll just have to link between them.

My rebuttal and/or reasons for not proposing a straight overall alliance Elo system as is suggest here and by Mezbot are linked below. (Believe it or not, I did give it some thought and settled on the more granular system I proposed. I’m also convinced it can be implemented without massive resource… it took me all of 15min to come up with the high-level algorithm / approach).

To answer the initial question: cups should not be used in any matchmaking system because players can fluctuate cup numbers at will.

If we want a fair system to match players up for war, these combatants should NOT be able to effect any significant changes on their own score that are outside the game-controlled system.

EDIT: Nonexistent “War Cups”, maybe. :grin:

2 Likes

That’s not quite what OP was asking… OP is asking for a cup (like) system to match groups in AW; these “war cups” would definitely not be the same as raid cups. Alliances would have a certain number of “war points/cups” used as criteria to determine future matchups. This falls under the idea of an Elo system, already being discussed in other threads, which is why I suggested closing the thread in the first place.

Yeah, no kidding, but certainly worth all the discussions that are taking place.

1 Like

I do see here what your point is about all the moving parts in an alliance. I just helped Zappercat’s 16 person alliance recently build up to 29 people with a merger and my alliance also lost 7 players over the weekend wars after we were (“unfairly”) matched based on flasking down a stronger 9* titan as a retirement gift for one of our long time co-leaders who left. It seems we could go on and on about how often changes like this happen versus how quickly the Elo is expected to take to respond, but it looks like some actual number crunching would be helpful in order to put arguments about granularity to rest.

I never hear about people complaining that titan matchups or raid matchups (okay, well… reroll, right?)

  1. Titans: do the titans suddenly drop stars just because players left your alliance? No, the system takes TIME to adjust to the change (maybe a handful of escaped titans). Certainly, whoever is left would not be complaining that the titan that they got was “unfair” and would not be petitioning for matching titans based on a different system.

  2. Raids: let’s say you accidentally consumed your entire 4* A team for raiding. Do raid opponent team strengths who you roll suddenly match up appropriately to your lower level 3* B team? No, the system takes TIME to adjust to the change (maybe through the use of 12-18 losing raid flags). The raid opponents you got matched against were certainly not “unfair” matches because they were reflective of your successful past raiding history.

My point here is that we have to be careful of what we call a fair and unfair match up when it comes to Elo like systems and just because a system takes some time to respond to a change does not make it unfair. Trying to get as close of a match up as possible by attempting to store more performance metrics and use those for matchmaking comes at high costs that might just not be worth it…

I guess we are on the same page here. I could say the same thing about a Chess player that suddenly develops a health condition that interferes with his ability to play. It will indeed take some time before they get match ups that are “fair” for them. Some thought would definitely be appreciated on the devs’ end regarding alliance motions if an Elo-like system was ever to be implemented for Alliance Wars, but it is completely understandable if every issue can’t be addressed at once due to limited dev resources.

1 Like

I agree the current matchmaking has room for improvement. It’s sensitive to manipulation and it involves a variable that doesn’t really correlate to AW strength at all.

I’d prefer a KISS solution though: total sum of all player’s 30 most powerful heroes. Extremely unlikely to be manipulated, decent correlation to AW potential strength because it involves a full roster. And very, very simple.

The only reason SG didn’t do this, is because they took the even more simple route of taking a variable that was already in game.

2 Likes