top of page

AI and Dota 2

Dota 2 is the most lucrative esport in the word.

What began as a mod by a fan on the existing game of Warcraft has become an enormously popular game in its own right. Professional players have competed for over $100 million in prizes since the game was first made public (by invitation only) in 2011. Besides the professional players, hundreds of thousands of people play Dota 2 every day.


Dota 2 displays some fairly typical characteristics of “AI” in video games. Each of the heroes can be controlled by a bot, which may be either an ally or an opponent in a game of 5v5. Players can play against bots only, against a mix of humans and bots, or with humans only.

The thing is - the bots aren’t that good. Dota and Dota 2 are famous for their steep learning curve. It’s very difficult to get good enough to compete against other human players, due to the high complexity of the game. But it’s very easy to get good against the bots.

The bots come in five difficulties (Passive, Easy, Medium, Hard and Unfair). The Dota 2 gamepedia perhaps best summarizes the difference in the levels with the chart below.


A chart like this makes it painfully clear that bots are hard coded. In fact, look at that last column. Unfair bots are cheating, and receive 25% extra gold and experience beyond what a player would get for the same actions. And yet, they are still easy to beat in comparison with the average player online.

This is due to a multitude of factors, including poor intuition, repetitive actions and lacking teamwork. In order to get the game to become difficult, when a player is playing in single player mode on Unfair, the bots on their team will try to throw the game, through various actions such as missing targets on purpose, running headfirst into groups of enemies, or not coming to the assistance of their base when it is being attacked.

This leaves the player two options, to continue to play against bots that pose little challenge, or to play online. For many people, the latter is not an enjoyable option, as Dota games are typically quite competitive and this can lead to poor sportsmanship. (In fact, Dota has quite a robust reporting system and system of punishment for those players who are consistently reported for bad behaviour.)

So what is the solution here?

The players themselves have attempted to write new bots. There are mods in the Steam workshop which replace the game’s bots with a different version. One could create bots of an even higher level with a higher level of cheating in order to challenge the player. Or one could create an altogether different type of AI to challenge a player.

OpenAI created a player that, in August 2017, defeated one of the top human players in a best of three match. This wasn’t an ordinary matchup - instead of 5v5 it was 1v1, and both players played the same hero, Shadow Fiend, which is a complicated hero requiring good timing and aim. It’s also worth noting that once humans had a chance to see the bot and its tactics, they were able to defeat it. But the achievement remains that a bot defeated a human at a game that it learned through experience.

For most AI companies, the focus is on research, and this is no different. The intention behind Open AI’s project is to continue to figure out how to problem solve, and how to approach complex situations. At Decisive AI, what we want to do is to go beyond research and into the practical realm by creating a bot, or rather, a true AI in the form of an Intelligent Artificial Player who doesn’t need to cheat. We want to entertain people, to give them a fun challenge.

But it’s highly complex. Elon Musk said it best - this isn’t chess or Go. This is Dota.

bottom of page