An Overview of Dota 2 Modding

   Dec 30, 2022     1 min read

DotA 2 (short for Defense of the Ancients) is a game by Valve, which contains a built-in “Arcade” in which people can create and publish independently made modifications. This Arcade is inspired by Warcraft 3 - a game released by Blizzard Entertainment which in turn contained a custom game system that spawned the original DotA.

Although the DotA 2 engine is far from perfect, it is extremely powerful. The majority of code is written in LUA (the C++ code upon which the engine is built is obscured from modders), with user interface components written in XML/CSS/Javascript.

The majority of my work in the DotA 2 engine was contributing towards the SWAT: Reborn arcade game. SWAT: Aftermath was a popular modification for Warcraft 3 almost 10 years before, and with the release of a new game with support for modders, the community came together again. The game is popular because of the level of teamwork needed, and its difficulty, especially at the higher levels. The hardest difficulty level - Extinction - has been beaten only a few dozen times, requiring the best players from around the world to gather together.

I joined the game’s team shortly after its “1.0” release, working on it for 3 years. During this time, I:

  • Added a new map offering a different twist to the objective mode
  • Fully overhauled the user interface
  • Helped with significant balance changes across the board

As well as my work on SWAT: Reborn, I contributed frequently to the rest of the DotA modding community. I have created open-source libraries for some of the more advanced features we built for the SWAT gamemode, which see use in several mods by other developers.