September 17, 2017

Methodical Rigor III: Getting Primed Up

A look into the the premise of AI within Left 4 Dead, and why Half-Life's water shading is so damn important.

Methodical Rigor III: Getting Primed Up

The game we know and love as DotA2 is endless when delving into technical aspects.

From mechanics to pathing, optimization to map design, and all of the stuff in between, it is truly a masterpiece of both balance and execution.

We’re going to get primed up on several topics so we have a better grasp for them next time when we break them down further.

Scratching the Surface of Mechanics

The topic of a single mechanic is an extremely in-depth, technical, and harrowing area within game design. Even more complex, we can combine a single mechanic to make an entire slew of mechanics. So what are they?

Seemingly passive, a single mechanic within a game takes a lot of work depending on what kind it is, and it may require a lot of steps before it comes to life. For now, let’s say a game mechanic is an entity within a game that connects a player and the game’s main purpose. Something that is invoked by a player which results in interaction. A more pragmatic view would be: do something, see result. Input, output.

One mechanic, collision size, is vital to the basis of DotA2, and acts as one of the critical components that keeps the game at the forefront of the industry and MOBA umbrella. Collision size is the size of a unit within the game (heroes) in relation to something else that it collides within 3D space (objects) during movement throughout the virtual environment. This is extremely relevant to the deep neural networks used for AI pathing in Left 4 Dead 2, and serves as a critical mechanic within DotA2 as a MOBA. Again, seemingly passive in theory, but very complex.

Often overlooked, it is the mechanics of a game that allow the player to enjoy it at a high level, and it is an aspect which contributes to the determination of how high a skill cap can ascend. Depending on the depth of a mechanic (both from the perception of game play and programming), a game’s possibility within the field of play will shoot up or down (in most cases, exponentially, depending on metric).

These come in handy and serve as one of the most volatile, discussed, and preserving features of any given video game. DotA2 more so, due to the sheer size of the player base and amount of tinkering needed to maintain and upkeep the balance and meta rotation in play at all times.

Creating A Smooth Path

A valid object bumps into another. It makes contact if possible, and something happens. This is the very foundation of Valve’s physics creation (seen below applied to Left 4 Dead) and with some virtual magic, how DotA2’s collision boxes work with size of heroes.

Objects within the map of DotA2 all have “pathing”, whether they actually move or not. In one way or another, they are programmed into the game with a path which they are set on, be it stationary or dynamic. This may be a bit confusing to grasp, since the name implies movement or rotation — not always the case.

One of the most revered games for pathing and the usage of modern video game AI is Left 4 Dead, which influenced the structure and aesthetic which DotA2 took for such aspects of its mechanics. Surprisingly, despite being contrasting topics, AI and physics of collision size(s) have a considerable amount of overlap. Extraction of resources from games past is important.

The usage of previously employed techniques (such as L4D’s pathing for AI) allows for such to be more refined over time, through both end user testing and internally. Read more here, courtesy of Valve’s long-time engineering lead, Dirk Gregorius.

L4D2 path optimization

The AI premise in L4D is simple: create complex behavior, make it re-playable, and pace the game appropriately — throughout, Valve always likes to optimize things with algorithms and other means, something that they’ve been revered for at a very high level beyond normal industry standards. Notice the aforementioned techniques apply directly to nearly all Valve games, in the same manner and approach, extensively.

Over the course of gaming history, the idea of reactionary pathing has evolved each year, becoming more smooth and refined. Take Blizzard’s Brood War for example, and its horrible pathing — at one time, it was cutting-edge and the best around, but these days, it’s less-than-stellar.

We can even take a closer look at the infamous Dragoon pathing, and analyze it for how terribly inefficient the algorithm was for that unit. This is fine, as it was created in the very early stages of game design for modern techniques, and gets a pass.

A metaphor using a baseball and Frisbee was made by Sean Plott (seen above), relating it back to how different units have different pathing, appropriately serving that units purpose.

By extension, this overlaps with collision size (or hitbox, in FPS games), and could be applied to four heroes in DotA2 — Lycan, Monkey King, Naga Siren, and Phantom Lancer, all which have a collision variable of 8, opposed to the rest of the game’s heroes having 24.

Map Influence: Big If True

The playing field in which the game takes place on is interesting to say the least. Not a symmetrical map, and not one that has the same elements on each side, it’s a strange way to approach an in-game map, but it works. Very well, in fact.

The map itself influences more than we care to think about. The way people play, the collision routes for each moving object within the game, player-controlled or not, and the way we make decisions to employ strategy.

A battle between combat and economic decisions serves as the base for the map. Pull times, camp ticks, spawn rates, and other end user-based locations and timings (where to gank most effectively at what time, when to camp, where to lay low or be aggressive) are all fragments of a larger structure.

The map itself also has an incredibly heavy bearing on the game’s time and duration — game pace is insanely important to developers, and can make or break a game of executed poorly. If we take a look at League of Legends, Heroes of Newerth, and DotA2, we can see stark contrasts between each game’s approach and pacing structure. Note that pace does not necessarily mean actual time, but rather, the rate at which a game or match progresses in terms of phases.

Lesser-appreciated variables need to also be refined, through such means as algorithms, past experiences, utilization of rigid game design, and overall creativity. Lane widths, structure widths, amount of tiles each little piece takes up on the map — these things create a masterpiece, but never are really thought about or picked at.

Rigid game design — this is important, critical perhaps. There’s a lot that this has to do with collision, that few ever really look into. Objects with prismatic constraints can be tied back into collision size, while closed loops for position orientation relates with how we size manifold applied to laning or strategic movement(think: there is a limit to how many heroes can fit horizontally in one lane at a time, or any given space within the map). Again, getting primed up here; we’ll look into this in-depth in the future.

Closed loops in game design work a lot like a fishing net; able to hold fish that are filtered and maintain support, creating a natural size manifold.

Invalid Nick, our designer and Steam Workshop friend from the first part of this series, had the following to say in regards to the mechanics of DotA2 and how the map is influential for players:

There are many interesting things within DotA2. It’s one of the most well-executed games ever, from a technical point of view, combining design, art, and sound, into a visual smorgasbord. Other games do this well, but DotA2 is magic. The only similar game I’ve played that has matched this was World of Warcraft, which is nothing like DotA2. I can apply similar strategies games have taught me for the past 20 years.
DotA2 has a large amount of heroes and equal abundance of items to select from (compared to say, TF2), all with their own unique abilities. The combinations seem endless, and even so, it is very easy to detect patterns among them — this is where DotA2 shines. Only after a few games, you’re able to identify and execute decisions based on situations heroes from your own team have and which heroes your opponents are using.
Some have narrow play styles, making them powerful early on or later in the game. All heroes are good at something, all items are good at something, while the balance maintains that no hero or item is good at everything.
The map is somewhat even and balanced, however, it’s not mirror nor rotational-symmetrical compared to classic CTF [capture the flag] maps in other games. The camera angle is the same for everyone and can’t be changed (sans zooming in and out), which may lead people to have a favorite side. I like Dire simply because I think its art style is more cool.
One of the most significant things with the DotA2 map is that you can play it with different art than your teammates or opponents, as there are different versions of the map spanning from the default map to winter, and the most recent one, underwater. All versions come with new models and effects.
Apart from that, what makes DotA2 into what it is today is the community that has been building up for years, carefully groomed by its current creator, as they listen to feedback and are responsive to both fix bugs and release new content.

Each part of the map is specifically placed where it is for a reason. The hidden shop is where it is for a reason, the lanes are structured around trees and turn where they do for a reason, but what is that reason?

That has to do with various depths of pathing and clipping, mixing into everything related to collision size, shallow vs. deep contact points, among other such optimization as reduction of contact points tying in with reactionary pathing and how algorithms adjust and fluctuate based on the designer’s needs and wants for the game’s balance.

Wrapping It Up

There’s a lot of stuff to cover, but we’re just becoming familiar with all of it for now. Many parts of game design go unnoticed or unappreciated, and they’re very important when we take a step back and look at the bigger picture, taking for granted the masterpiece of a game tens of millions play around the world.

The goal here is not to become a game developer or a genius about the design that Valve’s slapped onto DotA2, it’s to have a better grasp of lesser-known parts so we can appreciate them more. It takes years to fully understand and master these types of things, and we’re quite barely scratching the surface.

DotA2 as a game is ever-evolving, and has to remain that way if it’s to maintain its glory and reputation. Balance changes and meta shifts are always present, allowing a game nearly half a decade old to feel fresh and new at all times.

Interesting to dig into and explore, the world of game design and application of Valve’s techniques are unique in their own right, making trends and references across their titles subtle and clever, yet effective and powerful.