{"id":1581,"date":"2008-03-27T08:00:22","date_gmt":"2008-03-27T13:00:22","guid":{"rendered":"http:\/\/www.shamusyoung.com\/twentysidedtale\/?p=1581"},"modified":"2008-03-28T01:57:25","modified_gmt":"2008-03-28T06:57:25","slug":"starcraft-artificial-military-intelligence","status":"publish","type":"post","link":"https:\/\/www.shamusyoung.com\/twentysidedtale\/?p=1581","title":{"rendered":"Starcraft: Artificial Military Intelligence"},"content":{"rendered":"<div class=\"quote\">The United States military (Waterhouse has decided) is first and foremost and unfathomable network of typist and file clerks, secondarily a stupendous mechanism for moving stuff from one part of the world to another and last and least a fighting organization.  <\/p>\n<p>Neal Stephenson, <em>Cryptonomicon<\/em>, p442. <\/div>\n<p>As I said before, I love the logistical aspects of Starcraft, and I am more or less annoyed by the direct tactical aspects of the game.  I realize this post isn&#8217;t really anything new. This is just a remix of the ideas I put down yesterday.   <\/p>\n<p>I think the strategy parts are unfulfilling because I never feel like I&#8217;m doing well.  No matter how carefully I guide my units, I always leave the battlefield with the impression that I oversaw the wasting of  potential.  I spent so much effort carefully crafting this army of badasses, and half of them perish because they are too stupid to fight in a sensible manner and I&#8217;m too busy to tell them how to do it right.<\/p>\n<p>The following is going to be very familiar to RTS players, but I&#8217;m going to set this down anyway for the curious: Consider a battle between two evenly matched forces.<!--more-->  Perhaps I have a group of marines from the Blue Team who are working to bring peace to the galaxy by wiping out the filthy mongrels that comprise the Red Team.  During this noble endeavor, we have a couple of lines of marines who encounter one another.  Assuming both groups are arranged in an optimal manner (a line facing the enemy) and each unit fires at his closest foe (the one directly across from him, which is what the AI will do by default) then the battle will go to whoever happens to shoot first.  If units employed one-shot kill weapons then all battles would be more or less a coin flip.<\/p>\n<p><table width='256'  cellpadding='0' cellspacing='0' border='0' align='center'><tr><td><img src='https:\/\/www.shamusyoung.com\/twentysidedtale\/images\/battle1.jpg' class='insetimage' width='256' alt='Red vs. Blue' title='Red vs. Blue'\/><\/td><\/tr><\/table><\/p>\n<p>But typically units have to take several hits to die.  The two sides exchange fire for a few rounds, chipping away at each other&#8217;s health until someone dies.  Again, the outcome is a coin flip &#8211; one side will perish and the other side will be left with eight guys, all of which are one hit away from death. But now there is room for some strategy.  Let&#8217;s assume I&#8217;m willing to micro-manage a bit, and that I know that it takes eight shots to drop an enemy. Let&#8217;s also assume that because the Red Team is comprised of dishonorable cowards that they got the first shot.  If I let nature take its course, my units will all die and Red will leave the field with each disgusting sub-human unit having a single hit point left. But I can direct all my righteous Blue warriors to gang up on one particular member of the vile and hated Red Team:   <\/p>\n<p><table width='256'  cellpadding='0' cellspacing='0' border='0' align='center'><tr><td><img src='https:\/\/www.shamusyoung.com\/twentysidedtale\/images\/battle2.jpg' class='insetimage' width='256' alt='Red vs. Blue' title='Red vs. Blue'\/><\/td><\/tr><\/table><\/p>\n<p>At the end of the first volley one loathsome member of the Red Team is dead (hooray for justice!) and each of my guys has taken one hit, bringing them down to seven hit points.  <\/p>\n<p><table width='256'  cellpadding='0' cellspacing='0' border='0' align='center'><tr><td><img src='https:\/\/www.shamusyoung.com\/twentysidedtale\/images\/battle3.jpg' class='insetimage' width='256' alt='Red vs. Blue' title='Red vs. Blue'\/><\/td><\/tr><\/table><\/p>\n<p>At the end of the second volley, two Red guys have died, one blue guy has seven hit points, and the rest have six.  <\/p>\n<p><table width='256'  cellpadding='0' cellspacing='0' border='0' align='center'><tr><td><img src='https:\/\/www.shamusyoung.com\/twentysidedtale\/images\/battle4.jpg' class='insetimage' width='256' alt='Red vs. Blue' title='Red vs. Blue'\/><\/td><\/tr><\/table><\/p>\n<p>You can follow this all the way to the end, where I end up with this:<\/p>\n<p><table width='256'  cellpadding='0' cellspacing='0' border='0' align='center'><tr><td><img src='https:\/\/www.shamusyoung.com\/twentysidedtale\/images\/battle6.jpg' class='insetimage' width='256' alt='Red vs. Blue' title='Red vs. Blue'\/><\/td><\/tr><\/table><\/p>\n<p>Instead of Blue defeated and Red near death, Red is exterminated like the vermin they are, and Blue is in respectable fighting shape.  It&#8217;s obvious that micro-managing doesn&#8217;t just give you an edge, it completely transforms the outcome of the battle.  Things get more complicated if the number of hitpoints is not equal to the number of units on each side.  If we have eight men to a side (assuming you&#8217;re willing to call the savages on the Red Team &#8220;men&#8221;, an undeserved compliment to be sure) with four hitpoints each then having all eight of my heroes attack a single Red guy will be overkill: Half of their attacks will be wasted and the outcome will once again be a disaster for me.  If I want to optimize, I need to break my line into two groups:<\/p>\n<p><table width='256'  cellpadding='0' cellspacing='0' border='0' align='center'><tr><td><img src='https:\/\/www.shamusyoung.com\/twentysidedtale\/images\/battle5.jpg' class='insetimage' width='256' alt='Red vs. Blue' title='Red vs. Blue'\/><\/td><\/tr><\/table><\/p>\n<p>It gets more complex once you start talking about battles between different types of units with different upgrades on unpredictable terrain, but no matter what the situation, my units will always fare much better if I&#8217;m hovering over them, guiding their every move.  <\/p>\n<p><table width='384'  cellpadding='0' cellspacing='0' border='0' align='left'><tr><td><img src='https:\/\/www.shamusyoung.com\/twentysidedtale\/images\/starcraft_base3.jpg' class='insetimage' width='384' alt='Red vs. Blue' title='Red vs. Blue'\/><\/td><\/tr><tr><td class='insetcaption'>My fleet of Battlecruisers will cleanse this world of the malignant infestation that is the Red Team, while I focus on running my base and making sure everything is just so.<\/td><\/tr><\/table>But babysitting my virtuous yet sadly misguided Blue warriors takes me away from the part of the game I enjoy doing:  Optimizing the performance of my war machine.  I can stay home and tune the machine to bolster its output, thus leaving my soldiers think for themselves.  Whatever gains I made by increasing production will be quickly squandered by their haphazard tactics.  I&#8217;ll end up writing a bunch of letters to the Blue Wives of the Blue soldiers, letting them know that their husbands perished in a heroic but utterly stupid way while attempting to secure a better, safer future for Blue-clothed people everywhere.  If I constantly guide them in battle, my base will languish and I&#8217;ll have less soldiers to work with.  <\/p>\n<p>This is not a problem I have with Starcraft, this is a problem I have with the genre. It&#8217;s not the fault of the game that I find the inefficiencies of combat displeasing. Combat is 60% of the game, and I&#8217;m just not rewarded by combat.  Maybe the fun I&#8217;m looking for is better found in another genre.  Maybe the game I want to play doesn&#8217;t even exist. <\/p>\n<div class=\"dmnotes\">For the curious: My usual strategy is to turtle in during the early stages of the game, and eventually deploy low-maintenance units like capital ships.   Battlecruisers and Protoss Carriers do an excellent job of taking care of themselves. This works really well against the AI and allows me to maintain a phenomenal kill ratio. But I have no illusions about how I would perform if I dared to take this act online against real human beings.  It would be like a kid becoming an &#8220;expert&#8221; in playing Madden Football and then being sent into a real, actual football game against professional linebackers.  He wouldn&#8217;t live long enough to see his own effeminate shrieks of pain being replayed on the jumbotron.  <\/p>\n<p>How I managed to get ten years of entertainment from such a one-dimensional strategy remains a mystery.  My base-building probably is probably a balm for an obsessive-compulsive disorder I&#8217;m not even aware of.<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>The United States military (Waterhouse has decided) is first and foremost and unfathomable network of typist and file clerks, secondarily a stupendous mechanism for moving stuff from one part of the world to another and last and least a fighting organization. Neal Stephenson, Cryptonomicon, p442. As I said before, I love the logistical aspects of [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[],"class_list":["post-1581","post","type-post","status-publish","format-standard","hentry","category-reviews"],"_links":{"self":[{"href":"https:\/\/www.shamusyoung.com\/twentysidedtale\/index.php?rest_route=\/wp\/v2\/posts\/1581","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.shamusyoung.com\/twentysidedtale\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.shamusyoung.com\/twentysidedtale\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.shamusyoung.com\/twentysidedtale\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.shamusyoung.com\/twentysidedtale\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1581"}],"version-history":[{"count":0,"href":"https:\/\/www.shamusyoung.com\/twentysidedtale\/index.php?rest_route=\/wp\/v2\/posts\/1581\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.shamusyoung.com\/twentysidedtale\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1581"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.shamusyoung.com\/twentysidedtale\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1581"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.shamusyoung.com\/twentysidedtale\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1581"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}