The impossibility of "solving" Splinterlands

avatar

Image created with Microsoft 355 Copilot

From time to time I think about how one would go about identifying the best teams to play for any given match configuration in Splinterlands. We know that some players are extremely good at consistently playing strong lineups, but are they really the best, or are they simply good enough in the current competitive environment?

The task of identifying the best teams is not an easy one. Spliterlands is a complicated game, and there are many many nuances to consider for a human trying trying to figure out what is optimal. In my guild (PeakMonsters Legion), we have regular discussions about various strategies and theorize about how to optimally play them. Now, we generally discuss strategies that are fun, like @arrrchmage's signature redemption strategies, or my own Skargore strategies (I feel like I'm the only one playing her - Don't underestimate how good of an ability Enrage is!). Generally, theorized strategies don't work out that often in practice. They have to be battle tested to figure out what their strengths are.

separator.png

The Splinterlands ladder, at least early on in a developing meta, is a big experiment in trying to figure out the best lineups. In a well balanced situation, the meta should be constantly changing as strategies fall in and out of popularity, and countermeta strategies develop, take over, and are countered again, and so on.
The last year of the modern ladder has unfortunately not developed in this way, but the meta has changed mostly with the introduction of over-the-top powered promo cards, not to mention Eternal Tofu. A digression. I was going to talk about identifying the best teams.
We have about 20k battle a day now in the modern ladder. Some portion of these occur at the highest level. Keep that number in mind, it is important for this discussion.

We can assume that a human player is able to analyze the stats and abilities of the cards pretty well, and think of how to combine the cards effectively. So a player is likely able to filter out a lot of bad card combinations. Nevertheless, exact positioning is generally difficult, at least between positions 2-5, and often there are many cards that feel like they are equally good inclusions given how the rest of the team has been chosen.

separator.png

Can a computer do it?

If we formulate the problem as a pure brute-force math problem, we can consider how many different teams that are possible, for example for a selected summoner. Starting with the current situation in Rebellion (EXCLUDING CHAOS LEGION, KEEP THAT IN MIND TOO), and restricting ourselves to a single-element summoner to start with, we have roughly 24 elemental cards and 20 neutral cards. (I simply counted cards on PeakMonsters, maybe there are more or less for some elements, but its ballpark correct anyway). So 44 cards, and we can choose 6. This is a classic X choose Y problem, and order matters. The general solution to that is

X!/Y!

and for the situation we considered we get the staggeringly high number 5,082,517,440. That is 5 billion teams. That's for a single-element summoner. If we consider a dual summoner we have 68 cards, and that gives us 78,806,407,680... 78 billion. We also have tactics. With two tactics targets, there are 15 ways to select them on your own team, and with three there is 20 ways. So in the most extreme case we have 78 billion times 20 teams = 15.6 trillion (15.6e9 in scientific notation) that must in principle be considered to figure out which is the best one.

So how do we figure out what the best one is? Well, we would need a battle simulator. To be thorough, all teams must battle all the other possible teams for all possible summoners, and we track the results and examine which one is the best against all the others. So we take our 15.6 trillion teams, multiply them by 17 summoners which all have some number between 0.1 and 15 trillion teams depending on tactics options, (lets say the average is 1 trillion for simplicity). That is 2.65 times 10 to the 24th unique battles, and battles much be run at least 30 times to get any reasonable estimate of how often one team wins over the other. The numbers are getting out of hand - Consider how much more there is if we include Chaos Legion ...

If it was not already clear, such a direct simulation approach is not even remotely feasible, even if you are a tech giant with unlimited access to the largest supercomputing clusters in the world. And that is the cost of finding the optimal team for one ruleset/mana combination. I could go on and add how many ruleset/mana/element combinations there are, but I dont think it would make much difference at this point.

Image created with Microsoft 355 Copilot

separator.png

Considering everything is irrelevant, what if I use some of my game knowledge?

Lets consider a situation which is more reasonable. Lets say we select our Summoner, we have three reasonable tank monsters, 7 candidate midline monsters which we want to slot into positions 2-5, and our Dr. Blight which we put in the back. This gives us 3 x (7!/4!) = 630 teams. Maybe we have three viable ways to select our tactics. Thats 1890 teams to consider for one summoner.

Lets say then that there are 3 summoners that are relevant for the match, each with this same number of possible teams, so that there are 5670 teams to consider. The number of unique battles simulations we in principle have to do is (5670*5670) which is 32 million (if we run each battle once). This is possible on a standard computer, but will not be very quick. Maybe we need an hour.

We can drop the requirement to simulate every team against every team to make it faster, but then we are beginning to lose our rigor. We will no longer know which was the best among the ones we considered available, but we will likely find a good one.

Image create with Microsoft 355 Copilot

separator.png

Some final thoughts

Combinatorics is a devil. The number of ways to combine things become extremely large very quickly with numbers of things to choose from. It literally makes it impossible to "solve" Splinterlands with the constraints we have on computing. This is why we still are able to fight roughly head-to-head with bots, at least if you are among the good players in this game. That is good for the game.

On the other hand, this is what makes it difficult for developers to balance the game. They can't know if they are missing out on some team combination that is horribly unbalanced. That's fine if that variation is very hard to find, and if its something that is unbalanced only in certain rule combinations or so, then its also not a problem. Devs also have much more limited ability to play-test than what the players have once a set is released. We have to give them some slack, and accept some skewness in card power.

I do however think that we should expect better balancing than what we have had with Rebellion. Grimbardun Smith, Venka and Tofu have been total failures in terms of balancing. We will see what happens with the upcoming Conclave Arcana release.

separator.png

Final words

Are you also playing Splinterlands? If not, you should join today. Click the referral link below to get started.



Join Splinterlands


Best wishes
@Kalkulus

separator.png



0
0
0.000
5 comments
avatar

The best battle helpers use battle history not battle possibilities. It will only consider lineups and configurations with historically strong results, thereby eliminating a large number of possible, but inferior, lineups.

0
0
0.000
avatar

Yep that's right. Its how I run my tiny bot for Legion too. That puts in on the level of good players, but "good" is all its ever going to be with that approach, not "great" or unbeatable.

0
0
0.000
avatar

I had no idea you managed to program your own bot service. That is some mighty technical prowess.

0
0
0.000