Defeating Bots in Hearthstone

Tags:

By: Aaron Jencks

Views: 890
Posted on:

April 1, 2023, 4:49 a.m.

Please login to vote!

1 👍 0 👎

I've been playing a bunch of Hearthstone recently, and it appears to have become riddled with bots after the current release of the new class "Death Knight".

But just like in chess (prior to Deep Blue), these bots have weaknesses. Mainly because the Hearthstone card library is constantly changing and rotating. Also because the game is complex and not easy to write a bot for.

Game complexities

One such fail point that I've found is using health instead of mana. Because of the difficulty of managing state during the game, it's difficult for bots to handle complex state change. For example Commander Ulthok causes your opponent's cards to cost health instead of mana for their next turn. Unless programmed correctly, a current hearthstone bot will continue spending their mana as mana, not tracking their health. Used late-game this can cause a bot to spend 10 health on their turn or more.

Bugs like this are exploitable, because once a bot is engaged, it's not easy to change mid-game.

Core Cards

Another downfall of bots is that most of them are restricted to the core card set. This is because the programmer wants to be able to launch their bot with an initial deck that they don't have to bother trying to collect and then let it run indefinitely. This is good to get their account up to gold or so in standard. But if you study strategies to counteract a default deck, then the matchup becomes trivially easy.

You can see below, two of the bots I played actually were using the same deck (see cxz and sdbxcb)

Timing

Something I noticed in lower ranks is that bots often rope their opponents. Whether it's a learned behavior or one programmed in by their creator is up for debate, but one thing's for sure, patience is a virtue when fighting a bot. A free win is a free win.

Another note on timing, to avoid detection, a lot of bots will ensure that they have something like a 1 second delay between all of their movements, which they may vary randomly, but it's pretty consistently 1 second. This makes them seem like a real person at least to the server, even if to you it's excruciatingly slow to watch.

Identifying a bot

Usernames

There are some tricks you can take when trying to identify bots, a lot of times their usernames are unpronouncable/unreadable (one such bot I faced, their name was gfdewq). This is because they aren't interested in pronouncable usernames, they just need usernames, so they generate either random strings, or autoincrementing ones.

Here's a list of bots I've played against:

  1. frewd (Deathknight) 3/12/2023 replay
  2. cxz (Deathnight) 3/13/2023 replay
  3. gfdewq (Deathknight) 3/16/2023
  4. sdvsd (Deathknight) 3/16/2023 replay
  5. dfds (Deathknight) 3/17/2023
  6. hxcn (Deathknight) 3/17/2023
  7. sdbxcb (Deathknight) 3/17/2023 replay
  8. gfdsfds (Deathknight) 3/17/2023 replay
  9. dfdewq (Deathknight) 3/18/2023 replay
  10. gf34 (Deathknight) 3/18/2023
  11. dddsa (Deathknight) 3/18/2023
  12. ccxx (Deathknight) 3/18/2023
  13. fdsads (Deathknight) 3/18/2023 replay
  14. HRDT (Deathknight) 3/20/2023 replay
  15. ewq (Deathknight) 3/21/2023
  16. dsadsa (Deathknight) 3/21/2023
  17. sdv (Deathknight) 3/21/2023

Communication

A lot of times programmers won't program their bots with communication. So if you state a greeting, they won't respond, nor if you state a 'well played' message. They can't communicate.

Misplays

As a death knight your hero power is to make a 1/1 ghoul with charge that dies at the end of the turn. But if you don't attack with it, what's the point of spawning it? Or wasting your coin? In lower leagues bots are riddled with errors like this, they often misplay, amidst DC or roping, this makes the game more annoying, but easier as well.

Conclusion

Since Blizzard doesn't have a way to report potential bots, the best thing we can do is learn how to beat them. Sure it won't get rid of all of them, but it'll get rid of the incompetent ones, once they realize that they can't actually climb rank with it.

Unfortunately, once somebody makes deep blue for the hearthstone world, the players are kind of screwed, especially if they make it open source, the game will become flooded with bots, and consequently, unplayable.

Comments

You are not logged in, please log in here to comment

Current Comments