February 16, 2008

DotA Game-Mechanical Analysis: Part 1

As previously promised, I'm going to attempt to do a simple analysis of the game mechanics of DotA (Defense of the Ancients, a mod for Warcraft 3). The goal is to get a general sense of the forces at work in a typical game. By modifying just a few rules, we might be able to come up with very interesting modifications to the game. I'll note some of the intriguing possibilities along the way.

In most games, there are five unique Heroes on each side. Each Hero is defined by the primary statistics of Strength, Agility, and Intelligence. These in turn define the lower-level secondary statistics: maximum health, health regeneration rate, maximum mana, mana regeneration rate, armor (damage resistance), attack speed, and damage. A Hero's attack range, movement speed, and main statistic (i.e. the primary statistic that determines damage) are usually static and predetermined for each Hero.

What if players could allocated primary statistics at will upon leveling up? What if players had direct control over secondary statistics?

Heroes also have a certain amount of gold. An initial deposit of gold is given at the start of the game, and a small amount is generated as time passes, but the majority of a Hero's gold comes as a reward for killing enemies. Gold can be used to buy items, of which a Hero may hold up to six at any time. Items can be combined with each other to form better items. Any item can boost primary or secondary stats by a specific amount. Some items confer new active or passive abilities upon the Hero.

Each Hero has four natural abilities that can be learned as it levels up. These include three lower-level abilities and one "ult" ability. Abilities vary immensely in function; much of DotA's variety comes from the different abilities at play. In most cases, an ability costs a certain amount of mana and, in return, either confers a stat bonus on the player or inflicts a stat penalty on the enemy. Some abilities apply passive bonuses, some of which are activated randomly according to a specific probability.

Already we can see how changing small rules produces very different gameplay; DotA excels in this sort of experimentation. What if an ability affected a usually static statistic such as attack range (Dwarven Sniper)? What if an ability used up health instead of mana (Sacred Warrior)? What if one Hero's damage potential was based on the difference between the stats of that Hero and its target (Obsidian Destroyer)?

In order to destroy the enemy Ancient (and thereby win the game), a team must destroy all of the towers that defend any one of the three "lanes" leading to the base. The lanes are asymmetric, with the middle lane being both shorter and less safe. Also, in a full game with five players on each side, one lane for each side will be covered by a single Hero, which is more dangerous but also allows the Hero to grow powerful more quickly.

Each lane is protected by three towers, which increase slightly in strength as they appear closer to the base. Towers heal extremely slowly, so damage to them is mostly permanent. They also do a significantly large amount of damage, and are capable of destroying lower-level Heroes in one-on-one combat.

What if towers grew in strength as they killed creeps, or as the Heroes around them grew. What if a tower could be strengthened through a combined purchase by its allied team?

Periodically, a group of "creeps" (weak monsters allied with one side) are spawned and try to run down their lane, destroying everything in their path. They are usually met by the opposing creeps. One side will win this battle; the winning side, by virtue of its comparatively higher numbers, almost inevitably wins the following confrontation. This produces "creep momentum", in which a group of creeps can grow larger and larger as it moves down the lane. Creep momentum is usually stopped by a tower, but not before the tower sustains damage.

As time passes and more towers are destroyed, the number of creeps spawned each time increases. Occasionally, a "siege engine" is included with the creeps, which is especially effective against towers and other siege engines. This amplifies creep momentum.

What if creeps were made stronger when closer to their own base, thereby destroying creep momentum? What if we did the opposite, making creep momentum a major force in the game? Or what if creeps grew stronger as they dealt more damage?

More to come...

No comments: