Improving Tournament Pairings in Lorcana
How to add more draw/play equity in how we pair.
The bottom line up front: Rolling for who plays or draws first in a major tournament adds unnecessary variance to the format. Swiss-pairing tournament software already exists in other games to pair people based on their bracket and whether they need to play first or second in a match. We can increase the game’s capacity for skill expression by ensuring people have equal access to play and draw games.
Background and Proposition
Rolling dice can be an efficient way to get a round of Lorcana going at the local level. However, this choice mechanism can make a tournament experience lopsided toward players on the positive side of variance by allowing players to choose sides they prefer over others. For example, on day one at a DLC-level event, rolling dice to determine play/draw in a 2,048-person tournament will create 16 people who win or lose all eight die rolls. In the 4,096-player events in Europe, roughly 32 players will have the tail ends of variance.* In the 2,048-person tournament, 744 people will have an unlucky day one, and 744 will have a lucky day one. Alternatively, only 560 players will have a fair (50/50) distribution of play and draw games in a typical Day 1 tournament.
If we accept that there is some advantage to being on the play, then those who are on the play more often are more likely to win. Those who are more likely to win will have a higher seeding at the end of the Swiss portion and will play in the top cut, while their less-lucky opponents will remain on the draw. In the current system, die-roll luck bakes in an advantage for later in the tournament.
Naturally, winning the die roll is not everything; however, it does give the player choosing to play an edge. While variance is part of competitive card games, this is a controllable one that has been solved for decades in other games.
Swiss-pairing tournament systems have existed since the end of the 19th century, and their primary, early usage was for chess. In chess, it is vitally important to ensure everyone has an equal number of games on white and on black. As such, what side each person is on is determined before the match begins and presently dictated by tournament software.** The priority is to match people within the same bracket, and then, within that bracket, match people based on what side of the matchup they need to be on. As tournaments grow in size, this becomes increasingly easier to accomplish.
Chess is not the only type of event that needs software to handle this kind of side-equality. Debate, which strives to ensure people have equal numbers of appearances on both the affirmative and negative sides of a topic, had this solved with computer software decades ago. There is both a perceived disparity in the draw and play, and likely a real gap based on publicly available data. Regardless of how substantial that disparity might be, we can resolve it on the software side. This is a far more parsimonious solution than a 2-game format, as we still can allow for the more skill-intensive best-of-three format while decreasing the role of variance in players’ overall exposure to being on the play or draw more often than average.
There are a few additional benefits to this system. First is data. Right now, who plays and draws is not tracked within the Playhub client, as it happens at the table, but with the decision made by the system and displayed to the players, Ravensburger would have that data and a real sense of how much it matters. Likewise, it would naturally be included in API output, so players and sites like Inkdecks would have access to more refined data and could assess
Also, it reduces another opportunity for unscrupulous players to gain an advantage in a match through angle-shooting or other means to try to manipulate the initial die roll. As above, we do not have a way to determine whether someone is systematically winning every die roll. Draw and Play data is entirely self-reported in tournament reports, and, as I discussed above, some people are going to be lucky in any big tournament.. However, if someone had somehow gained an advantage in this system, it would show up in the data like a flare in the night.***
FAQ:
A few questions I can answer ahead of time:
Q. This doesn’t stop me from being on the draw against my bad matches and on the play for my good matchups. Isn’t that still a situation where some will get lucky and some won’t?
This is definitely possible and a source of variance, but this problem already exists in the current format. This at least makes sure you have the same opportunities as others to play on the draw and play equally. Even if you do not get those opportunities in the order you prefer, at least you get them.
Q. Won’t this create de facto pods/pools of players since you can only match with players who played the opposite side last round?
Generally, on odd rounds, the brackets are freer for pairings, as usually people will have an equal number of draw and play matches in their history. Having the software pair matches based on play/draw side equity does not lock people into subpools of the tournament.
Q. This will take more time to implement and take away from other priorities. Is this really worth working on?
Any change does require development time, but this is already a solved problem for any game where being on different sides matters. So yes, it would take some development time, but it would be otherwise trivial to incorporate into a Swiss tournament. If being on the draw or on the play is a different experience, then we can make these experiences more equitable. Another question to ask: If you knew ahead of time that you were going to be on the draw for all eight rounds of a DLC, would you still participate in the main event? I would not. A system that guarantees me greater equity in that exposure would increase my confidence in attending future events.
Q. What if the tournament has an odd number of rounds?
That’s okay. Yes, in a nine-round tournament, some people will have five on the play and four on the draw, and others will have four on the play and five on the draw. While there is some disparity, this would still exist in the current system for those in the middle, and it would also include people at the extremes. Giving everyone here a close-to-similar experience is the goal, and an odd number of rounds means we will have odd splits.
Q. Would this be for all tournaments/league nights or just large events?
Small tournaments do not benefit as much from this as larger ones, but it would still be nice to have some parity at league night. If your regular league night is three rounds, some people will have two rounds on the play and some on the draw. This is still superior to having some people play all games on the draw. As you increase in size, the number of rounds increases, and the disparity will typically decrease. A five-round set championship will have everyone on a 3/2 split between draws and plays (or vice versa), which will give people a better sense of fairness of the event than the person who wins all five die rolls.
Q. Variance is part of TCGs; why is this uniquely bad?
Shuffling decks and pairings are all part of variance, and you need to be both good and lucky to do well in a major event. However, we can reduce the luck factor in one area. The player who wins all their die rolls, and there will be about 16 of them on day one, is going to have a much higher chance of going to day 2 than the people who are not experiencing the high side of variance. Winning a die roll is not skill-based and is not required in a tournament.
Q. Didn’t the two-game format solve this?
The two-game format solved a related problem about draw/play disparity, but in a very different way. It did not entirely eliminate the draw/play advantage due to the information gap (which is still solvable), and it created a situation in which drawing was much more common, leading to other unsatisfactory outcomes that I do not need to rejudicate here. The advantage of this solution is that it doesn’t change the fundamental structure of tournament outcomes and break points for day 2 or elimination rounds.
Q. What if there is an eight-person tournament during a meta where you always win if you are on the play? Doesn’t that break the system?
In an extreme situation where you always win on the play, the system essentially defaults to rolling dice. If two people have equal win/draw records, the computer rolls the dice to determine who is on the play or draw. Likewise, if two people are both due to be on the draw at the same time and it can’t pair within the bracket, it rolls the dice. So, at its worst, in the most extreme case, the system is just as good as rolling dice.
Q. If you got your bad luck out of the way at one event, your next DLC will have all winning rolls. Won’t it all balance out in the end?
Each dice roll is an independent draw and has no memory of previous rounds. Bad luck in one event does not create good luck in another. It is better to have a system that can limit luck in places where we don’t need it to play a role as a fundamental game mechanic.
Notes:
*Obviously, we don’t see all 16 or 32 people do this, as people who lose three or more rounds will drop, and their data will be right-censored in a fully realized sample.
**Sometimes, there will be some subset of people who will have an extra game on white/black to make pairings work, but these are the exception, not the rule. In the current system, deviance from parity is the majority’s experience.
***An injection exploit should not be feasible, as any determination of play/draw is done before the pairings are shown to the client, and the client’s only function is to display pairings and report wins/losses. There are other security features, such as the fact that any randomness is not public (e.g., simulated dice, coin flips, draws from rand()-like functions, etc.). There are matches where a player may think their side is randomized, but it is not because they are matched with someone who needs to play or draw.
****Thank you to all those who provided feedback, support, or just asked good questions, including: Piecetinker, dabsense, TLL-Scot Jurgenson, Blakelyman, [TLL]Wonk Daddy, Pyro, Rowdy Porterfield, 3vo, s4iler, 1ambofgod, TLL|SoneUser, and Gabriel.


