Screenshots of the Android game "Euchre - Card Game Offline" by Topy Games
I was born and raised in southeast Michigan. This means three things:
I say "ope!" at least once a minute
I am a die-hard Detroit Red Wings fan
Euchre is my card game of choice
#3 is particularly difficult when you live in Arizona. I have yet to find another person who knows the game, much less 3 at the same time. As a result, I've taken to playing Euchre - Card Game Offline from Topy Games on my phone. The playing experience of the game is genuinely the best I've found for any mobile card game. However, the bots you play against are extremely simplistic and that's what this post will focus on.
Briefly, Euchre is a game extremely popular in Michigan. Most of our family get-togethers involve hours of continuous playing. I won't get too detailed about the rules – it's very boring to explain, as Family Guy pointed out – but here are the basics:
4 players
Each player gets 5 cards from a deck of 9, 10, Jack, Queen, King Ace
On each hand, a suit is called (known as "trump")
Aces are high EXCEPT in for Jacks the same color as trump, i.e. bauers. The Jack of trump (the "Right Bauer") is the most powerful card and the Jack of the off-suit in the same color (the "Left Bauer") is the second more powerful, followed by Ace -> King -> Queen -> 10 -> 9 of trump
Each turn (a "trick"), a player leads out a specific suit and the other players must follow suit unless they do not have it. In that case, they can play a trump card to win the trick
There's much to it – including scoring, strategy, etc. – but the above should be enough for the next bit to make sense.
The AI of the bot is, in my opinion, the second simplest form of game AI. The most simple is just randomly choosing moves each turn that meet the rules of the game. This game is better than that, but not by much. After trump is called, it pre-assigns scores to each card in the deck. For example, if Hearts is trump scoring table would be something like this:
♥️ Hearts | ♦️ Diamonds | ♠️ Spades | ♣️ Clubs | |
---|---|---|---|---|
Ace | 180 | 100 | 100 | 100 |
King | 170 | 90 | 90 | 90 |
Queen | 160 | 80 | 80 | 80 |
Jack | 200 | 190 | 70 | 70 |
10 | 150 | 60 | 60 | 60 |
9 | 140 | 50 | 50 | 50 |
As you can see, Hearts (trump) and the Jack of Diamonds are higher in value than the rest of the suits. On each turn, the bot will play its highest card that the rules allow it to unless it cannot follow suit, cannot trump, or its partner is winning the trick – then it will play the lowest value.
If it runs into a scenario where two cards have the same value, it will randomly choose one.
It does seem to recalculate after each play. For example, if it has the Ace and Queen of Spades and someone plays the King of Spades one trick, it may play the Queen instead of the Ace on the next trick. It seems to understand that the Ace and Queen have the same value in that scenario.
The AI's simplicity – there is no strategy to it – can be infuriating at times. Your partner will always lead out trump even when that actively hurts your odds. For example, if the other team picks up the right bauer, it is not uncommon for your partner to lead with the left bauer making it useless.
That being said, it's also advantageous for the human player since you know exactly how the opponent is going to play. As a result, having both bauers and a suitably strong hand otherwise is often enough to call alone and make it, gaining 4 points instead of the typical 1 or 2.
You can also often trick it into playing cards it shouldn't – you play a lower card in a suit and the bot will come in swinging with its biggest card. For example, if you have a 9 and a Queen and the bot has a 10 and an Ace, if the 9 is leading the trick and the bot is the last player, it will always play that Ace even though the 10 would be fine. This means the tides turn and the Queen becomes the high card between you and you split the suit's tricks instead of the bot getting both like it should.
These and other abuses mean it's very difficult to lose to the bots. Really, the only time it happens is when your bot partner screws you – something which unfortunately does happen semi-often.
A better bot AI would actually incorporate basic strategy.
It would remember what cards it's already seen – with some variability to make it feel more human – and make decisions based on that. If it knows the other team has the Right Bauer, it won't play the Left.
It wouldn't lead out trump if it's relying on its partner because that draws their trump out
It would occasionally understand that leading out with a Queen is a poor idea and it's better to lead out with the 9 to try and make the Queen good
It would choose suits smarter – if you have just one card in a suit, that means everyone else has a lot of that suit. Playing it likely means no one will be able to trump it
Those additional rules would improve the bots significantly and wouldn't be that complicated to implement. More advanced mechanisms – like calling it alone on 3 cards and then having to play non-trump after 2 tricks to safeguard yourself against going set, for example – could be added too but not as easily.