Tuesday, August 10, 2010

Introduction to Starcraft and Heidegger (Part 2)

(This is a two-part essay on Starcraft II and its relation to Heidegger's writing using Sirlin's excellent write-ups, for relative novices who don't play Starcraft multiplayer.)

Last time...
  • I was about to lose a game of Starcraft II -- the guy had micromanaged his forces, with one army slowly but surely killing mine and another army about to attack my now defenseless base.
  • I talked about Heidegger and his ideas about technology: We can't manufacture raw resources; they are created by the earth, as with coal being formed from fossils over many years, etc. However, modern technology makes us think we control these resources, through a mental construct called enframing -- the process of re-orienting ourselves to these raw resources to give the illusion of control. When we mine / store / "control" coal, it's actually just a different state of mind.
So, first, since Heidegger's all about these raw resources -- what are the raw resources of Starcraft? Minerals, gas and time? Maybe even "map territory" I guess?

Wrong. You're thinking too narrowly. Yes, those are the raw resources within the construct of the game, discrete variables tracked by the computer -- but what about the raw resources of your opponent?

For one thing, he can only commit so much attention to one part of the map at a time. Also, the state of his intel -- does he know where my base is, where in the tech-tree I am? Lastly, can he predict what I am going to do, using what Sirlin calls yomi? (More on yomi later.)

Close management of your resources is called macromanagement or "macro," in contrast to per-unit or army-level "micro." 

You build supply depots with minerals and gas, spend time to train your army, train unit types based on your intel, manage production when attention permits, etc. Through these processes and re-orientation of raw resources, your standing reserve army is now a "processed" resource in itself to be shifted around the map. In this sense, Heidegger might argue that your army is an illusion / a mental construct.

If you buy into this construct too much, focusing too much on your current army, you are essentially enframing yourself. Why waste your time managing an illusion? You must be flexible, willing to change your strategy / army composition at any moment.

* * *

SURVIVAL. Now first, I have to ensure my survival. I know he has many more units than me and I can't catch-up. To protect my base, my only hope is to block the ramp leading up to it.

However, if I use buildings, he can easily attack and destroy those buildings with the spider robots. Their ranged attack allows them a lot of flux, the ability to do damage. (Comparatively, an army of zealots would have very little flux on a ramp, because only the two or three at the front are close enough to attack.)

Having built only basic zealots which require minerals, I had a lot of vespane gas left, which is used to build advanced units -- like "dark templars", which are basically invisible zealots with much more powerful swords. If the units are invisible, his spiders can't target them -- and they can't teleport past them because he can't see up the ramp. Building a "Dark Spire," to let me train dark templars, was relatively straightforward because I already had a "Twilight Council" to upgrade my zealots.

I can also produce these dark templars quickly because I have attention to invest into them -- the Protoss command center, the "Nexus," has a special ability called "Chrono Boost" that can temporarily boost the production rate of anything by 50%. By investing my attention into macro, I can change the make-up of my army relatively quickly.

I have three gateways and each can produce one dark templar at a time. That's a total of three dark templars I can produce at a time.

I use two of them to block the ramp. In doing so, I can hold him off, but only temporarily because it is merely a matter of time before he builds "detector" units that can see my invisible ones. So, I need to kill him quickly.

COUNTER-ATTACK. I already have more intel than him: I know the layout of his base from a previous (failed) attack. Namely, I know that (a) he has barely thought about building an expansion base yet, (b) he has not blocked off the ramp to his own base, (c) he has invested in gateways but has not built many advanced structures. Comparatively, he doesn't know much about my own base.

I can send in my third dark templar to attack his mining probes. By attacking his mining probes, I cut-off his supply of minerals and gas so he can't build anymore spider robots or advanced structures or anything.

However, I notice he has a Forge in his base. The forge lets him build photon cannons, static turret structures that can see invisible units. If he builds photon cannons in his base, it will be strong enough to kill my single dark templar and protect his base.

DISTRACTION. So that's why I send my loyal zealots on a suicide mission to attack his spiderbots: I need to trick him into investing all his attention into one conflict, one part of the map -- because if he looks at his base, he'll notice a dark templar; if he looks at his other army, he'll notice they can't get up the ramp and realize there are dark templars there. It would only take 40 seconds for him to build a photon cannon, about the time it would take my dark templar to even get to his base and kill a single probe.

In this way, attention is the most important raw resource in Starcraft because it is extremely selective and extremely limited.

Micro is a form of enframing, either intentional or unintentional. Many players lose track of all their raw resources when microing. Lots of players will get too caught up in an attack, only to return to their base after the attack with thousands of unspent minerals and gas. You unnecessarily accumulate minerals and gas instead of spending them on production, losing time in the process; your attention and intel are focused on this single, very small part of the map.

However, he would only be willing to invest his attention into this battle IF he believed I was stupid enough to continue throwing zealots at him without trying something else. By pretending I had enframed myself into building zealots, I had tricked him into enframing himself.

"gg" he says, all his probes destroyed, his Nexus in blue flames -- and so he surrenders. He was a better player in many ways, and score-wise he was probably winning -- but he still lost.

Thus, the higher-level goal of Starcraft is to trick your opponent into enframing themselves... by tricking them into thinking you've enframed yourself.

Did that make sense? I didn't think so. Well, that's just Heidegger's terminology. Let's use someone else's...

In this game between a Zerg and Terran player, the Zerg player wants to attack his opponent quickly, but knows the ramp to the base will be barricaded by strong buildings. And so he builds "banelings," relatively slow / weak explosive kamikaze units.

The commentator emphasizes, a few minutes into the game, that it is all over for the Zerg player if the Terran player's scout sees the baneling building in the base, because then the Terran player can counter accordingly.

However, to some extent, the Terran player has already anticipated the baneling strategy with the supply depot in front of the bunker. The Terran doesn't really change his strategy upon realizing what has happened.

This is yomi, which isn't actually reading about the opponent's mind, but rather it's about understanding their state of mind and their possible choices, and limiting those choices to the ones that will favor you.

By the time they attempt a strategy, you already have a counter in-place; and when they counter your counter, you already have a counter to their counter in-place. (If a game has at least three of these "yomi layers," then Sirlin argues that the game mechanics have some sort of depth that can loop back on itself.)

* * *

In part one, I talked about how computers can micro well, but humans must work to develop that skill. So what are computers bad at? A lot of things. Language processing, reading emotions... and humans are much better at holistic thinking.

Let's imagine your opponent has a base with lots of guards. Will you attack it?

A human can look at the enemy force, compare them to their own, and quickly come up with a pretty accurate estimate of whether it would be wise or not. A computer can't do that. Maybe it would assign every unit a point-value, then add all the points up for the entire garrison -- and do the same for its own units -- and simulate what would happen.

But is that point value accurate? Would some units have different point values depending on how they're used, depending on the player? Can a computer predict all this easily -- or more specifically, can we program an AI to look at all this information intelligently and convincingly that still seems fair to human players? It's really really difficult.

At the end of his essay, Heidegger proposes a way out -- roll-back "technology" to the Greek sense of it, "techne," a revealing of how things work, causality, and thus truth. To reveal truth, one uses art and poetry; creativity. I'll even go as far as saying that to play Starcraft is to be artistic.

Creativity, as in, sacrificing most of my standing army to make him think he was winning, so that he would focus on that illusion as I destroy his economy and ability to fight me. Creativity is the stuff of the most legendary Starcraft matches:
  • "poisoning" your own mechanical air units to create an "eraser"; they won't take damage because they're not organic units, but everything else around them will
  • secretly "allying" yourself with your opponent until their forces are directly over your spider minefield, and then de-activating the alliance
  • using Terran Vultures in Starcraft 1 as intensely microed offensive harassers. Like the double push in inline skating, it is now an incredibly common strategy and represents one of the biggest shifts in multiplayer play
  • prevent your burrowed unit (a lurker from Starcraft 1) from attacking (previously thought to be impossible) by telling it to attack a distant out-of-range building; when your opponent thinks there's nothing there, cancel the order and ambush them -- a similar technique as used in this famous match
  • including a random, distant unit in a control group to "stack" air units on top of each other for precision control to negate the default movement AI that tries not to stack
  • building entire "fake" bases in other parts of the map so opponents won't know where to attack
  • using a large, lifted-off airborne building to fly over your units, preventing your opponent from clicking on these units and attacking them specifically
  • and, I'm sure many more will emerge over the life of Starcraft 2.
So, was this all incredibly obvious to you? Good. Then this article wasn't for you.

Does this article make you not want to play Starcraft multiplayer, ever? Sorry.

Did I totally misinterpret Heidegger? Please tell me so.