"Can Games Be Art (tm)" is a big question that a lot of people have asked over the years. There are heated arguments on both sides, and I don't really intend to get into that here. The fact remains, a lot of people believe that some games are art, or at least art-like, and this article is addressed to those people.
Passage, Braid, and Gravitation
Since I count myself as one of those who believe that games can be art, for me this raises the question of should they be? Through a quite old post on the Braid news page, I recently encountered the game Passage, an artistic little 5-minute game that stirred up a lot of positive press coverage in 2007 and 2008. If you have not played it (or Braid, for that matter), I highly recommend both -- Braid is well worth your $15, and Passage is worth more than the $0 it costs.
I won't give anything away about the themes and such in Passage, but suffice it to say that it is basically an experience with a variety of meanings and choices you can make. It eschews most of what we consider "game like" functionality, and in fact has no written story either. It's more like a symbolic work of interactive art that you experience in the fashion most suited to you.
I thought it was neat and thought provoking, but then I set it aside. It had communicated what it needed to, and I was moved to think about a few things in a new way, and then there was no reason to go back.
I was intrigued enough to try another of Jason Rohrer's other games, Gravitation, however. At my age and in my life circumstances, I actually connected a lot more to this one, and was quite moved. There are more choices to make here, and the symbolism is heavy on the ground at every turn. Play the game first, but then you might find this deconstruction by GBGames to be quite illuminating. I know I did, since I had missed a couple of the things they pointed out, though I did see most of it for myself.
Here again, though, Gravitation is not a game in the sense that it is challenging or something that you "win" or "lose" in the traditional sense. The game has a time limit, and you do what you can during that time, and in the end you are left with some accomplishments and some failures. Like life, you can't have it all, so whether you feel like you won or lost at the end is up to your interpretation. I felt like I lost. I think that's part of why it impacted me as much as it did.
I thank Jason Rohrer for making these games -- they are artistic, thought-provoking, and they are a worthy extension of the industry. We need more stuff like this.
Philosophy and Braid
All of what I said above is how I really feel. However, if all games followed a mold like Passage and Gravitation... I don't think I would be a gamer. The experiences are too short, too fleeting, and more snapshots than anything else. I've never been that into short stories or short films for much the same reason, although there are many special ones that I appreciate (Hills Like White Elephants, by Hemingway, is a favorite of mine, and there are a variety of excellent short films out there -- I think I've posted links to a few of them in the past). At core, though, I'm a novel guy, a feature-length film guy. It takes a lot to get invested in a new game or story, and once I am past that threshold I want to be able to hang around for a while.
Enter Braid. Braid is not an overly long game, but it has a lot more meat to it. There is a skill component to Braid, as well as the artistic aspects. Like Rohrer's games, Braid is a rather philosophical game, and there is a ton of symbolism in it, but at the same time it manages to actually have a lot more traditional game-like elements to it. There are some wicked puzzles in there, and some interesting and clever game mechanics to be explored. Ultimately I found that a lot more satisfying, and I spent a lot more time with it, even though I wasn't quite as moved as I was by Gravitation.
Fortunately, I don't have to choose between them -- I can play artistic games like Passage and Gravitation, and I can also play games that have other skill/puzzle elements in them, like Braid. Which brings me to...
Silent Hill 2
For me, I can never discuss games as art without coming back to Silent Hill 2. I connected to this game like I have few others, and was permanently changed by it. I played this game over eight years ago, and it still enters my thoughts on at least a weekly basis.
What made Silent Hill 2 so special? Well, for me, it was the method by which the story was told as much as the story itself. The game plays like many other survival horror games -- basically it's a third-person action game, and you move around, hit stuff with weapons, find clues, solve puzzles, and encounter bosses and cut scenes. On the surface, this really doesn't sound like a recipe for art, does it?
However, it is these mechanics which add so much to the story, I think. In a novel, all you have to do to experience the rest of the story is keep reading; in a movie, keep watching. In a game, there are many challenges that you, personally, have to overcome. In Silent Hill 2 those challenges range from figuring out a boss fight, to searching for clues, to solving a difficult puzzle, to getting up the guts to open a door or stick your hand in a dark, slimy hole.
I'm not generally a fan of horror. It took all my courage to make it through Silent Hill 2, and the "reward" for my courage was a shocking revelation about my character that was more horrific to me than anything that had happened before. The game's ruminations on illness, loss, abuse, relationships, and guilt were incredibly poignant, and made even more so by the interactive nature of the entire experience. I was quite conscious of the fact that, had I made different choices, I would have received a different ending. But, based on the choices I made, the ending I got seemed as much a commentary on me as it was on the character I was playing. Once again, I came away from the game with the feeling that I had lost, even though I had technically "won."
What sticks out most in my memory years later, however, is the journey. I share protagonist James Sunderland's feelings of loss when I think about the game, and honestly it was his determination to find his dead wife that made me able to complete the game. He entered into a world of horror, and exercised what little power he had in order to find the answers he so desperately needed. By extension, so too did I.
Portal
Portal is another interesting game from the last few years. It is probably the funniest game I have ever played, and it was one of the most in-your-face-clever with its design. It didn't have the impact on me that Gravitation or Silent Hill 2 did -- no such weighty themes here -- but still it was a hugely worthwhile experience. It forced me to think about physical space in new ways, and the humor was worth coming for all on its own.
A Grand Text Auto article made a lot of interesting comparisons between Passage and Portal, and I think that their conclusions are by and large valid. However, I happen not to agree (we're all entitled to our opinions, right? I'm sure there are plenty of people who will disagree with what I've said so far). The main point that I disagree with is the criticism that since Portal doesn't have deep philosophical underpinnings, it's just a collection of clever game mechanics and little more. They compare it to Mario Kart 64, which they point out is not really a game that many people play these days.
My answer to that is... well, sure -- not many people do play MK64 these days. However, I and many other people sunk countless hours into it in the few years after it came out. And if it hadn't been for MK64, arguably we wouldn't have had the two sequel Mario Kart games, both of which still are played at the present time. Most genres are iterative, and just because players move on to the most recent iterations after a few years doesn't mean that the stepping stones in the middle are worthless. I read different books now than I did when I was a kid, but those books I read as a kid were, in many ways, more formative than the ones I read now.
Varying Degrees Of Art
I can see how this sort of thinking is troubling when you start thinking of games purely as art -- because they aren't purely art, are they? Otherwise we'd just call them art and be done with it. Some games, like Passage and Gravitation, are almost purely art. Others, like Braid and Silent Hill 2, are a pretty good blend of art and gaming. Still others, like Mario Kart 64 and Portal, I'm hard-pressed to define as art at all.
These are all still worthwhile experiences. There is more to life than just art and philosophy. There is also math and science (Portal with its spatial thinking), and there are also skills/trades/sports. Learning the timing and skills of MK64 might not be as productive as learning to build a treehouse with your kids, or taking up wood carving, but it is still a skill and I believe it can sharpen our minds and reflexes for other aspects of our lives. Plus, a multiplayer game like Mario Kart is a great way to connect and relax with friends and family.
I live in a gamer family, and most of our family gatherings are spent around the card table or around board games. The board and card games are an end in themselves, even though they aren't imparting artistic or philosophical wisdom, and they are also a vehicle through which my family can spend time together. The same is true of tennis, which we often play together -- there's nothing deep to be learned from your average game of tennis, but it is a skill that many people find valuable and worthwhile to pursue. There is room in this world for all kinds of games, I think, and they all teach us something different.
AI War Is Not Art
My most recent game, AI War : Fleet Command, is most assuredly not art. This does not offend me, I am not sad about this, and nor do I feel like it devalues the game. I think I've already established that a great many awesome games are not art. I think that pretty much all strategy and tactics games are not art -- they rarely have much of a meaningful story, and instead focus on hugely complicated feats of puzzle-solving, skill, and, well, strategy and tactics.
I don't feel like this is an insult. If it works for Chess, one of the oldest and most respected games ever, then I think it works for me and everyone else developing RTS/RTT/Turn-Based games. These games are about competition (against other players or the AI), and stretching your brain. They are tennis for your mind. There's a need for games like that just as much as there is a need for artistic games, and I don't believe that you can put relative value on one style of game versus the other. You or I might personally prefer one style or the other, but that mostly amounts to taste.
Games like Passage and Gravitation give players a new way to think about certain aspects of life, Braid gives players a new way to think about time and its consequences, Portal gives players a new way to think about certain spatial relationships, and AI War gives players a new way to think about strategic, military, and logistical problems. I couldn't be more pleased with how AI War turned out, since it has some legitimately new ideas in there and manages to approximate certain battlefield conditions better than any game that came before. But that doesn't make it art.
The Future For AI War
Like Mario Kart 64 and (possibly) Portal, does that mean that AI War is destined for obscurity in the span of a decade or two? Possibly, I guess. And I'm okay with that, if some of my novel ideas make it out into the genre at large. I will have made a permanent contribution to a certain school of thinking if that occurs, and that seems like a worthwhile accomplishment to me.
Long-term obscurity is not assured, though -- games like Warcraft III, Total Annihilation, Age of Empires II, and of course the venerable Starcraft are still very much alive and well today, a decade or more since they came out. Will AI War have the staying power of those other games? Only the oracle knows, but without the hardcore competitive component it seems less likely. But then again, I'm going to keep expanding the game for at least a couple of years, so by the end this is likely to be one of the largest strategy offerings around, so that might change the equation a bit.
Whatever happens, if I can entertain players for the next few months and years, possibly helping to evolve how they think about issues of strategy and logistics, then I'll be happy. Even if I had never released the game, I evolved how I think about these issues, and that was worthwhile in itself.
In Conclusion
I've already stated, repeatedly, that I think there is room for all kinds of games in this industry. I am a fan ("connoisseur" sounds pretentious, otherwise I'd say that) of almost all of them, so my games are going to be a reflection of that. My first attempt at a highly artistic game is going to be Cayenne, an action-RPG that I hope to release in late 2010 or sometime in 2011. Cayenne will be an adaptation, update, and expansion of the first novel I ever wrote. In many ways I want to try to accomplish something of what Silent Hill 2 did, albeit with entirely different subject matter.
Like great wines, great games come in all manner of varieties. What tastes awful to one person is another person's delicacy. There are very few games that are purely art, or even which have a high degree of art-to-game ratio, and so I'd like to see more of those. I could do with fewer crappy licensed games or generic shooters (but keep the good ones coming!), but in the end there's not one genre I can shake my finger at and say "you don't deserve to exist." In the end, no game is going to please everyone, but if it finds any audience at all, somebody found value in it. That's worthwhile enough for me.
Friday, May 29, 2009
Tuesday, May 26, 2009
The Case For Co-Op Games
I am running an experiment. My company's first game, AI War: Fleet Command, is an RTS game that is entirely cooperative. Not that you can't play it single-player -- you can, and it's completely fun that way -- but there is no player-vs-player mode in a genre that is known for its pvp skirmishes. Was this a smart design decision? Time will tell.
Why Co-Op?
I don't have any focus group data, survey results, or market studies to back up my feeling that co-op is important. However, it seems like there are more and more sites like Co-Optimus around, more and more forum posts from frustrated players wanting to know of good co-op games to play with their dates, spouses, or children, as well as a neverending flow of articles and comments in magazines about how there are too few co-op games (seems like Game Informer has something almost every month).
All of the above is anecdotal at best, but there is at least one fact that cannot be disputed: gamers, as a group, are aging. There are an increasing number of us gamers who have been buying and playing for ten, twenty, or even more years. For those of us who are married, having the time to sit down and play single-player games is a luxury; for those who are parents, I imagine it's a downright rarity. Playing online against strangers is not much different from playing solo in this sense.
Worse, when the only modes to play are competitive, any of your family -- spouse, children, or otherwise -- who are on the bottom end of a skill gap are not going to be too excited about playing against you. And, frankly, you won't be that excited about playing against them. The days when my buddies and I would spend hours competing against one another in Mario Kart, GoldenEye, or Counter-Strike are long gone; half of us live in different states now, and a lot of my friends have fallen somewhat out of gaming with the years, anyway.
Co-Op Is For Hardcore Gamers, Too
Oh, no! Is this evidence that gaming is dying? Or that gamers are destined to forever be a self-renewing population of adolescents and college students? Of course not. Anyone who looks at the sales of current titles can see that the market is expanding, and not just in the casual games space. What I do think this means is that there is a new market segment for companies to explore. And on paper it seems like a potential goldmine.
I'm speaking, of course, of hardcore gamers who want co-op. It solves all of the problems I mentioned above: you play it with your family, instead of alone or against them. If there is a skill gap between you and other members of your family, no problem! In a game designed properly for co-op, there will be difficulty settings that are appropriate for this. There will also be mechanics in place to make sure that the weaker players can be assisted by the stronger players, and for insuring that the weaker player always has something to do and a way to feel useful, without the stronger player having to play below his/her true skill level.
This sort of functionality is hard to tack on at the end of a development cycle. To create a great co-op game takes forethought and will affect a substantial amount of the game's design. This opens the doors for many new design concepts that haven't been seen before in a multiplayer context.
Unfairness As A Design Concept
Perhaps the biggest design concept is unfairness: in a competitive multiplayer game, everything has to be finely balanced so that no player or team can exert an unfair advantage through any mechanism other than skill. In a co-op game, you're free to have your game be as unfair as you like. In fact, unbalancing the players on a team can even be a positive thing, because it encourages specialization and teamwork.
It can even help to naturally give weaker players a boost, leveling the playing field so that the advanced players take the more difficult position/class/loadout/route/whatever, while the newer players take the easier path. Thus everyone is doing something skill-appropriate, while still contributing to the team goals. The weaker players aren't overwhelmed and the stronger players aren't bored.
Co-Op-Specific Technical Improvements
To cite a purely technical design change enabled by co-op, the networking and threading code in AI War were very much impacted by the decision to make the game purely co-op. In a competitive RTS game where you are commonly playing short matches with one or more strangers, a star network design is required so that if any one player drops out, the game can continue without them. In a co-op game with friends, it is instead more important to be able to save and resume multiplayer games.
When playing a co-op-focused game with friends, the same people generally play through the entire game together, so this means that a client-server network model can instead be employed. This vastly reduces the network load on all of the clients, and doesn't affect the network load on the host one way or another. This is great for players on slower connections.
Another benefit also arises from the client-server model: when there is a single host against which all other game simulations are synced, some processes can be run on the host alone. In AI War, this lets us run a secondary AI thread on the host alone: the AI issues commands via a similar underlying mechanism to how human players would. This vastly reduces the system requirements for all of the computers except the host; quite often there is one power user in a group who has hardware that is better than the rest of the group, and now that hardware can be put to use without requiring that everyone else spend money and upgrade. This also allows gamers to use an older, otherwise-discarded PC as a client for other family members. My wife uses my old PC as a client when we play AI War together, for instance, and it gives a great experience for us both; otherwise that older machine was just wasted.
Asymmetrical Game Design, The Easy Way
Other benefits are mostly in the game design arena: when fairness is not an issue, you are free to make much more interesting opponents. Mario faces off against everything from lowly Goombas, to the slightly-better Koopa Troopas, to giant and powerful bosses. Just think how boring the game would be if Mario's only opponent was Shadow Mario, an evil counterpart that has exactly the same abilities as the player.
Co-op games, like single-player games, can pit the players against overwhelming odds. This sort of scenario rarely, if ever, comes up in competitive multiplayer, but it's something that happens all the time in real life. In AI War, for instance, the human teams are vastly outnumbered throughout the entire game (as in most movies or books in which humans face off against superior aliens or AIs), but it's still "balanced" in the same sense that Mario games are, because the scenario is still quite winnable for the human players (assuming they are playing on an appropriate difficulty level).
Where Does Co-Op Fit In The Current Pantheon?
The point of this article is not to say that I think that there is no place for single-player games or competitive multiplayer games. I'm a huge fan of single-player FPS games, the Silent Hill franchise, platformers, and competitive multiplayer games like UTIII. Plus about a hundred others. However, I think that the "cooperative hardcore gamer" demographic is a growing one, and an underserved one. We need games of all kinds, and at the moment what is most lacking is full-featured cooperative play. I love the fact that Warhawk lets my wife jump in and join me at any time, I just wish it let her have a unique name, her own stats, ranks and advancement, etc. I absolutely adore the co-op in PixelJunk Monsters, but I was perplexed when they made the trophies single-player only. Midnight Club II was immensely fun to play in a quasi-co-op mode, but they took out splitscreen altogether in the current-gen sequels.
In many ways, despite some of the high-profile co-op games that have come out in the past year, it feels like the industry as a whole is trending a bit backwards on the co-op front except when it comes to networked play. That's another thing: when it comes to consoles in particular, splitscreen is the name of the game for most co-op players in the "older hardcore gamer" demographic. When I want to play co-op with my wife, she's sitting in the other chair next to me, not at the other end of an Internet connection. We don't have the money or the inclination to buy two consoles, two TVs, and two copies of every multiplayer game that interests us, and I doubt anyone else does, either.
AI War requires a single computer per player, but that's more the PC game mentality; PCs are a lot more plentiful than consoles and TVs in most households. It also requires a single copy of the game per player, but we priced it at $20 (as compared to the $60 that most other new games in the genre cost) partly in order to be friendly to families that might need multiple licenses. The next game from Arcen Games, Alden Ridge, features co-op on a single PC, using a single keyboard or multiple game pads. There's room for many different co-op models, I think, and the appropriate one depends on the specific game.
The Case For Co-Op, In Conclusion
There are many great ways to integrate co-op into your games, but the key thing is to at least consider it. The question should not be "how can I add this feature with the least amount of effort, since only a few people use it?" But rather, "how can I make this feature really shine, so that more people will buy my game specifically to have it?"
Intuition and observation lead me, as well as many others, to believe that widespread co-op gaming is coming sometime soon. Most likely in the next ten years at the outside -- and it will be big. Now is the chance to be an early mover, to embrace the challenges of this new game mode and come out ahead of the rest of the pack. You might wonder if, since all my own games are co-op, I'm worried about increased competition from other co-op games making my games seem less unique. I say it can't happen soon enough.
Why Co-Op?
I don't have any focus group data, survey results, or market studies to back up my feeling that co-op is important. However, it seems like there are more and more sites like Co-Optimus around, more and more forum posts from frustrated players wanting to know of good co-op games to play with their dates, spouses, or children, as well as a neverending flow of articles and comments in magazines about how there are too few co-op games (seems like Game Informer has something almost every month).
All of the above is anecdotal at best, but there is at least one fact that cannot be disputed: gamers, as a group, are aging. There are an increasing number of us gamers who have been buying and playing for ten, twenty, or even more years. For those of us who are married, having the time to sit down and play single-player games is a luxury; for those who are parents, I imagine it's a downright rarity. Playing online against strangers is not much different from playing solo in this sense.
Worse, when the only modes to play are competitive, any of your family -- spouse, children, or otherwise -- who are on the bottom end of a skill gap are not going to be too excited about playing against you. And, frankly, you won't be that excited about playing against them. The days when my buddies and I would spend hours competing against one another in Mario Kart, GoldenEye, or Counter-Strike are long gone; half of us live in different states now, and a lot of my friends have fallen somewhat out of gaming with the years, anyway.
Co-Op Is For Hardcore Gamers, Too
Oh, no! Is this evidence that gaming is dying? Or that gamers are destined to forever be a self-renewing population of adolescents and college students? Of course not. Anyone who looks at the sales of current titles can see that the market is expanding, and not just in the casual games space. What I do think this means is that there is a new market segment for companies to explore. And on paper it seems like a potential goldmine.
I'm speaking, of course, of hardcore gamers who want co-op. It solves all of the problems I mentioned above: you play it with your family, instead of alone or against them. If there is a skill gap between you and other members of your family, no problem! In a game designed properly for co-op, there will be difficulty settings that are appropriate for this. There will also be mechanics in place to make sure that the weaker players can be assisted by the stronger players, and for insuring that the weaker player always has something to do and a way to feel useful, without the stronger player having to play below his/her true skill level.
This sort of functionality is hard to tack on at the end of a development cycle. To create a great co-op game takes forethought and will affect a substantial amount of the game's design. This opens the doors for many new design concepts that haven't been seen before in a multiplayer context.
Unfairness As A Design Concept
Perhaps the biggest design concept is unfairness: in a competitive multiplayer game, everything has to be finely balanced so that no player or team can exert an unfair advantage through any mechanism other than skill. In a co-op game, you're free to have your game be as unfair as you like. In fact, unbalancing the players on a team can even be a positive thing, because it encourages specialization and teamwork.
It can even help to naturally give weaker players a boost, leveling the playing field so that the advanced players take the more difficult position/class/loadout/route/whatever, while the newer players take the easier path. Thus everyone is doing something skill-appropriate, while still contributing to the team goals. The weaker players aren't overwhelmed and the stronger players aren't bored.
Co-Op-Specific Technical Improvements
To cite a purely technical design change enabled by co-op, the networking and threading code in AI War were very much impacted by the decision to make the game purely co-op. In a competitive RTS game where you are commonly playing short matches with one or more strangers, a star network design is required so that if any one player drops out, the game can continue without them. In a co-op game with friends, it is instead more important to be able to save and resume multiplayer games.
When playing a co-op-focused game with friends, the same people generally play through the entire game together, so this means that a client-server network model can instead be employed. This vastly reduces the network load on all of the clients, and doesn't affect the network load on the host one way or another. This is great for players on slower connections.
Another benefit also arises from the client-server model: when there is a single host against which all other game simulations are synced, some processes can be run on the host alone. In AI War, this lets us run a secondary AI thread on the host alone: the AI issues commands via a similar underlying mechanism to how human players would. This vastly reduces the system requirements for all of the computers except the host; quite often there is one power user in a group who has hardware that is better than the rest of the group, and now that hardware can be put to use without requiring that everyone else spend money and upgrade. This also allows gamers to use an older, otherwise-discarded PC as a client for other family members. My wife uses my old PC as a client when we play AI War together, for instance, and it gives a great experience for us both; otherwise that older machine was just wasted.
Asymmetrical Game Design, The Easy Way
Other benefits are mostly in the game design arena: when fairness is not an issue, you are free to make much more interesting opponents. Mario faces off against everything from lowly Goombas, to the slightly-better Koopa Troopas, to giant and powerful bosses. Just think how boring the game would be if Mario's only opponent was Shadow Mario, an evil counterpart that has exactly the same abilities as the player.
Co-op games, like single-player games, can pit the players against overwhelming odds. This sort of scenario rarely, if ever, comes up in competitive multiplayer, but it's something that happens all the time in real life. In AI War, for instance, the human teams are vastly outnumbered throughout the entire game (as in most movies or books in which humans face off against superior aliens or AIs), but it's still "balanced" in the same sense that Mario games are, because the scenario is still quite winnable for the human players (assuming they are playing on an appropriate difficulty level).
Where Does Co-Op Fit In The Current Pantheon?
The point of this article is not to say that I think that there is no place for single-player games or competitive multiplayer games. I'm a huge fan of single-player FPS games, the Silent Hill franchise, platformers, and competitive multiplayer games like UTIII. Plus about a hundred others. However, I think that the "cooperative hardcore gamer" demographic is a growing one, and an underserved one. We need games of all kinds, and at the moment what is most lacking is full-featured cooperative play. I love the fact that Warhawk lets my wife jump in and join me at any time, I just wish it let her have a unique name, her own stats, ranks and advancement, etc. I absolutely adore the co-op in PixelJunk Monsters, but I was perplexed when they made the trophies single-player only. Midnight Club II was immensely fun to play in a quasi-co-op mode, but they took out splitscreen altogether in the current-gen sequels.
In many ways, despite some of the high-profile co-op games that have come out in the past year, it feels like the industry as a whole is trending a bit backwards on the co-op front except when it comes to networked play. That's another thing: when it comes to consoles in particular, splitscreen is the name of the game for most co-op players in the "older hardcore gamer" demographic. When I want to play co-op with my wife, she's sitting in the other chair next to me, not at the other end of an Internet connection. We don't have the money or the inclination to buy two consoles, two TVs, and two copies of every multiplayer game that interests us, and I doubt anyone else does, either.
AI War requires a single computer per player, but that's more the PC game mentality; PCs are a lot more plentiful than consoles and TVs in most households. It also requires a single copy of the game per player, but we priced it at $20 (as compared to the $60 that most other new games in the genre cost) partly in order to be friendly to families that might need multiple licenses. The next game from Arcen Games, Alden Ridge, features co-op on a single PC, using a single keyboard or multiple game pads. There's room for many different co-op models, I think, and the appropriate one depends on the specific game.
The Case For Co-Op, In Conclusion
There are many great ways to integrate co-op into your games, but the key thing is to at least consider it. The question should not be "how can I add this feature with the least amount of effort, since only a few people use it?" But rather, "how can I make this feature really shine, so that more people will buy my game specifically to have it?"
Intuition and observation lead me, as well as many others, to believe that widespread co-op gaming is coming sometime soon. Most likely in the next ten years at the outside -- and it will be big. Now is the chance to be an early mover, to embrace the challenges of this new game mode and come out ahead of the rest of the pack. You might wonder if, since all my own games are co-op, I'm worried about increased competition from other co-op games making my games seem less unique. I say it can't happen soon enough.
Tuesday, May 12, 2009
Designing Games In A Vacuum, Part 2: Units, Walls, and Caps
Continuing the discussion from Part 1 of this series, we'll discuss some of the unique challenges of a space-based game environment as it relates to unit design for the game AI War: Fleet Command. These difficulties actually helped to bring out some of the more novel features of the game, so in the end I'm quite glad I made the choice to set the game in space (despite all the headaches during the early stages of design and implementation).
Issues
Continuing the list of issues from the first article:
Limited Types Of Well-Known Space Ships
3. Variance between the kinds of spaceships people know about is kind of limited. I mean, even in a franchise as memorable as Star Wars, you basically have a variety of smaller ships, the cruiser/corvette/destroyer classes of ships, and then the really big space stations and weapons like the Death Star. Granted, there are a lot of differences between the various Star Wars ships in terms of handling, control, loadout, etc -- these really shine in an action-oriented game -- but in an RTS game where you simply order ships around with your mouse, all of those differences start to seem pretty minor.
I knew I wanted dozens or hundreds of ship types in the game, on the order of most terrestrial RTS games, and that just wasn't looking possible by conventional methods. I mean, in a terrestrial RTS you have units with various bonuses (like pikemen versus cavalry), ranged units such as archers, various sorts of melee units, units that can fly, naval units, units that are good at moving through certain terrain, and on and on. The dearth of real-world examples of different kind of spacecraft with varying abilities was both a challenge and an opportunity for some unique design.
The opportunity was that I could do anything that I wanted, but the challenge was that ships would not be instantly recognizable in the manner of archers or cavalry. I had serious concerns that meaning might be obscured in the way that many of the units in Rise of Legends were difficult for me to remember (What is the difference between Sand versus Fire versus Glass units? What does the Scorpion guy do, versus the Manta Ray?). Don't get me wrong, I did like RoL, and it's uniqueness was one of its draws, but in the end there were too many units with too many esoteric groupings and names for me to ever feel really proficient at the game. I didn't want players to come away from their first few sessions of AI War with that feeling.
No Walls In Space
4. There are no walls in space, but this was a critical element in most of my favorite RTS games. Rise of Nations and Rise of Legends had both excluded walls (presumably due to challenges with pathfinding?), and that had been pretty annoying because it was hard to protect core resource without committing so many military assets that I became weaker on offense. In my experience, when both players in a game were only lightly defended (no walls or force fields or what have you), that made it a rush to see who could crush the other faster.
I wanted to create a longer game with more emphasis on planning, maneuvering and scouting; to me, it's always been more satisfying to think of a clever way out of a tough situation, as opposed to just having memorized a pre-developed strategy or clicked faster than my opponent. When I want to test my reflexes against others, I play a racer or an FPS (I do love and frequently play those genres, but they are distinct from RTS).
Population Caps
5. In most RTS games, there are arbitrary population caps that prevent players from building an infinite number of units. This means that players tend to gravitate towards the stronger units, which often cost multiple population points because of their strength (1 cavalry or heavy tank takes 2 or 4 population points, etc). I wanted none of this, since my game engine was capable of handling 60,000+ ships in realtime.
However, with no population caps of any sort, this meant that alpha players tended to find the strongest unit and spam it repeatedly. Weaker ships might as well not have even been in the game, for all the use they got. A lot of RTS games seem to have this problem, even the best ones -- in Age of Empires III, when I played as the French, I never built anything but Musketeers and Cuirassiers, for instance. Even though I loved that game, the presence of that deadly combination in my favorite civ made the game a lot less interesting for me. In early builds, the same thing was happening to AI War.
Solutions
Quirky Ship Designs
If all the units are too homogeneous, that will be uninteresting and will make the game feel smaller than it is. But on the flip side, if the units are too esoteric, no one will be able to get a firm grasp on what everything means and how it all fits together (my Fleaship kills your Dogboat, but your Dogboat kills my Trianglecraft -- obviously, these are completely made up, but you get the idea). I therefore decided very early on in to go with a very practical naming scheme, where each ship's name evoked its abilities.
For a few examples: space tanks are slow with a powerful shot, and have heavy armor; raptors are quick, cloaked ships that are able to pop out with a strong, sudden attack; laser gatlings are little ships with a rapid-fire laser attack; vorticular cutlasses are spinning masses of blades that crash into enemy ships. From the reactions of alpha and beta testers, most people have found it very quick to remember unit names and abilities, despite the huge variety of units that have no real-world or popular media counterpart.
Early ship designs were all over the place -- I had no particular goals and so just tried out a variety of ideas to see what was most memorable, different, and fun. After a lot of playtesting and design iterations, I settled into what you see in the final game. There are 28 classes of mobile military ships currently in the game (not counting starships), and these make up the bulk of players' fleets. Each ship type has some sort of unique ability associated with its name, or some other special combination of stats that makes it fill an individual niche.
This worked out really well, except when it came time to try to balance all of these ships so that they were inherently equal despite being so different -- this seemed to be an impossible task, and the ships became more generic the more equal I made them. But when the ships were not equal, my alpha testers were great at finding and exploiting over-strong ships. I'd introduce some cool new ship type, and it would either be completely irrelevant or the powerful new thing that everyone would use and that I would have to quickly nerf.
But I was committed to having variety in this game, as I knew that was one key to longevity and replay value, so I pressed onward with many different designs: electric shuttles, which strike all nearby ships with weak bolts of lightning; vampire claws, which absorb health from ships that they crash into; EtherJet Tractors, crazy-fast cloaked ships that can grab enemy ships and drag them away (the AI is really mean with these on the upper difficulty levels); and 22 other ship types with various abilities, strengths, and weaknesses. I succeeded in creating variety, but unwittingly created a game that was too complex for much of anyone to play -- people could remember what all the ships did, but it was paralyzing to try to decide which ships out of a stable of 28 would be the best in any given situation. This made for people just specializing in a few ships (bad), or building a bit of everything completely at random (much, much, worse). It took a few weeks of playtesting for my alpha group and I to come up with the solution for this.
Limiting The Number Of Ship Types Per Game
Up until a certain point in the design, all of the ship types could be built by any player at any time. This meant that players had a dizzying array of options (28 different main ship types to choose from at any time? Even I couldn't make effective decisions with them, and I designed them). It was actually my dad, who is one of my alpha testers, who suggested that it would make a lot more sense if the number of ship types was more limited in each individual game.
I was initially resistant to the idea, but nevertheless he and I spent several hours hashing out the system for randomizing and unlocking "bonus" ship types that you currently see in the game. Once the design for this was complete, I immediately knew we were on to something. By limiting the number of ship types each player has available at any given time, there is a greater sense of progression to the game (since Advanced Research Stations are captured and new ship types are unlocked), there is greater variety between campaigns (since not every campaign contains every ship type), and the starting options for players are considerably less overwhelming.
If you think about it, this is basically the same sort of segmenting that you get in most other RTS games, where the different civilizations have inherently different units. But in most other RTS games, all of the various civs have to balance out with one another so that there is no dominant civ (and there still tends to be a collection of civs that all the best players use). In AI War you are allowed to select one bonus ship type to start with, but all the rest that you get are not discovered until several hours into the game. Likewise, the ships that the AI uses are dependent on the map you choose, and so are unknown at the start. This different-every-time feature was half of a key feature for AI War's unit balance, but I didn't realize it quite yet.
Unbalancing Units On Purpose
With the different-every-time features for bonus ship types, I suddenly realized that I was free to make the ship types as unbalanced as I wanted to. The idea of "fairness" is required in competitive multiplayer games, but many cooperative multiplayer games are unbalanced on purpose. Take a look at the co-op mode in Resistance 2, for instance: there are three distinct player classes, each with distinct strengths and weaknesses. This lets players fill unique niches, which emphasizes cooperation, and it also provides for more variability in each game.
I decided to do a similar thing with AI War, making it so that all ship types are useful in some way, but some ships are more valuable in one campaign than others (depending on what ships the opposing team may have, the strengths of your bonus ship types might be really helpful or not). At the core of this, I knew I wanted the rock-paper-scissors relationship between the standard Fighter, Bomber, and Cruiser ships. These three ship types are in every campaign, and one of those three units is strong against every other ship type in the game. Thus there is never a situation where one team gets a ship type that the other team is completely unable to counter.
Per-Type, Per-Level Ship Caps
One of my early design goals for the game was to make it so that all ships that you can build at the start of the game are still useful at the end of the game. Many other recent RTS games are also doing this sort of thing, but usually that's with a veterancy system that seems a little bit too opaque for my taste (and which really only seems to work well with small numbers of units). By contrast, in Supreme Commander players would often still need to build Tech 2 units even when building Tech 3 units, just because the Tech 2 units were so much cheaper and faster to make.
Instead of putting so much scaling into cost and time to build, instead I implemented a per-ship-type population cap. Not only was this per type, it was also per technology level of each type. So you can build perhaps 180 Mark I Fighters, 140 Mark II Fighters, 120 Mark III Fighters, and 90 Mark IV Fighters, for instance -- and similar ratios for Bombers, Cruisers, etc. This was the final piece of the balancing puzzle. By limiting the number of each type of ship that could be built, I insured that players would have to utilize ALL of their ship types, and all levels of each ship type, throughout the entire game. So even at the very end of a campaign, players are still building Mark I ships in addition to the Mark IV versions.
Real commanders quite often have to deal with outdated equipment or underperforming units, and I wanted to simulate that in a game. Choosing where to place your best units, and where to put your weaker, more outdated ones, creates a whole new strategic challenge (my favorite novel, Ender's Game, also discusses this as an issue). Rise of Nations had done something similar with their increasing-costs per each unit of a type built, but those were irrespective of technology levels so far as I recall -- it made you have a reasonably balanced army (unless you were really resource-rich), but it didn't make you use older tech in addition to the new.
There were many other advantages to this system, such as making the acquisition of Advanced Research Stations even more important (they effectively increase your pop cap as well as the types of ships you can build). It also let me make certain ship types even more powerful, since I could then give them a lower pop cap to balance it out. And for the really weak, inexpensive, swarm-style ships like laser gatlings or infiltrators, I could give them a cap that was 6x higher than normal. All that contributes to some pretty impressive differentiation between ship types, and kept them from feeling too generic and similar to each other.
Space-Based Substitutes For Walls
In the context of an RTS game, what are walls, really?
#1. A way to prevent enemies from coming at your defensive positions from all directions.
#2. A way to slow down enemies.
#3. A way to choose the most likely locations for battles.
Before I started thinking about walls in these more abstract terms, I had actually implemented a unit called Magneto Lanes (basically space walls), but those never really felt right or made much sense. The better solution, the one that you see in the actual game, is tractor beams. Tractor beams are a familiar technology from literature and film, and they meet the criteria for #2 and #3 above. Tractor beams are not indestructible (neither are walls), but they provide a way to slow down oncoming hordes. Of course, each tractor beam can only block a limited number of ships, unlike a wall, so that changes the dynamics some while keeping the same basic idea -- change like that can be refreshing.
The other part of the walls puzzle, the solution for criteria #1 above, was choke points. Basically, criteria #1 is just referring to player-made choke points, but if there are already choke points available then the players can just exploit those instead of making their own. As it happened, there were already excellent choke points available in the game in the form of wormholes. Without wormholes creating bottlenecks for entry into planets, tractor beams would be vastly less effective, but in combination they are able to provided all the same basic protections as walls in a slightly new way. Thus, tractor beams evolved from a tiny little ship with some side interest, to one of the core mechanics of the game.
In Conclusion / The Harshness Of Space
Being able to take a familiar genre niche (walls), and substitute something less familiar that nevertheless fills the same basic niche (tractor beams) has been really exciting. There have been a few other opportunities for me to do this in AI War, such as the way knowledge is gathered and unlocked (tech points are generally something that you don't have to get from specific locations in an RTS game, but that is the case in AI War), the way build queues are managed (central controls make it easy to make quick, large-scale economic decisions), the way manufactories work (in place of a market), and others.
Not one thing on that list was in the original design documents for the game, but rather came about through playtesting and seeing how the space environment, the wormholes, and the multi-planet galaxy maps interacted. To me, this is pretty much the entire case for iterative development -- I could never have thought of these things up front. Space is a harsh environment for astronauts to work in, and in a metaphorical sense that has held true for me with regard to designing this game. However, some of the best stuff is invented in space, out of necessity moreso than enterprising spirit. I'm glad I took the journey!
Issues
Continuing the list of issues from the first article:
Limited Types Of Well-Known Space Ships
3. Variance between the kinds of spaceships people know about is kind of limited. I mean, even in a franchise as memorable as Star Wars, you basically have a variety of smaller ships, the cruiser/corvette/destroyer classes of ships, and then the really big space stations and weapons like the Death Star. Granted, there are a lot of differences between the various Star Wars ships in terms of handling, control, loadout, etc -- these really shine in an action-oriented game -- but in an RTS game where you simply order ships around with your mouse, all of those differences start to seem pretty minor.
I knew I wanted dozens or hundreds of ship types in the game, on the order of most terrestrial RTS games, and that just wasn't looking possible by conventional methods. I mean, in a terrestrial RTS you have units with various bonuses (like pikemen versus cavalry), ranged units such as archers, various sorts of melee units, units that can fly, naval units, units that are good at moving through certain terrain, and on and on. The dearth of real-world examples of different kind of spacecraft with varying abilities was both a challenge and an opportunity for some unique design.
The opportunity was that I could do anything that I wanted, but the challenge was that ships would not be instantly recognizable in the manner of archers or cavalry. I had serious concerns that meaning might be obscured in the way that many of the units in Rise of Legends were difficult for me to remember (What is the difference between Sand versus Fire versus Glass units? What does the Scorpion guy do, versus the Manta Ray?). Don't get me wrong, I did like RoL, and it's uniqueness was one of its draws, but in the end there were too many units with too many esoteric groupings and names for me to ever feel really proficient at the game. I didn't want players to come away from their first few sessions of AI War with that feeling.
No Walls In Space
4. There are no walls in space, but this was a critical element in most of my favorite RTS games. Rise of Nations and Rise of Legends had both excluded walls (presumably due to challenges with pathfinding?), and that had been pretty annoying because it was hard to protect core resource without committing so many military assets that I became weaker on offense. In my experience, when both players in a game were only lightly defended (no walls or force fields or what have you), that made it a rush to see who could crush the other faster.
I wanted to create a longer game with more emphasis on planning, maneuvering and scouting; to me, it's always been more satisfying to think of a clever way out of a tough situation, as opposed to just having memorized a pre-developed strategy or clicked faster than my opponent. When I want to test my reflexes against others, I play a racer or an FPS (I do love and frequently play those genres, but they are distinct from RTS).
Population Caps
5. In most RTS games, there are arbitrary population caps that prevent players from building an infinite number of units. This means that players tend to gravitate towards the stronger units, which often cost multiple population points because of their strength (1 cavalry or heavy tank takes 2 or 4 population points, etc). I wanted none of this, since my game engine was capable of handling 60,000+ ships in realtime.
However, with no population caps of any sort, this meant that alpha players tended to find the strongest unit and spam it repeatedly. Weaker ships might as well not have even been in the game, for all the use they got. A lot of RTS games seem to have this problem, even the best ones -- in Age of Empires III, when I played as the French, I never built anything but Musketeers and Cuirassiers, for instance. Even though I loved that game, the presence of that deadly combination in my favorite civ made the game a lot less interesting for me. In early builds, the same thing was happening to AI War.
Solutions
Quirky Ship Designs
If all the units are too homogeneous, that will be uninteresting and will make the game feel smaller than it is. But on the flip side, if the units are too esoteric, no one will be able to get a firm grasp on what everything means and how it all fits together (my Fleaship kills your Dogboat, but your Dogboat kills my Trianglecraft -- obviously, these are completely made up, but you get the idea). I therefore decided very early on in to go with a very practical naming scheme, where each ship's name evoked its abilities.
For a few examples: space tanks are slow with a powerful shot, and have heavy armor; raptors are quick, cloaked ships that are able to pop out with a strong, sudden attack; laser gatlings are little ships with a rapid-fire laser attack; vorticular cutlasses are spinning masses of blades that crash into enemy ships. From the reactions of alpha and beta testers, most people have found it very quick to remember unit names and abilities, despite the huge variety of units that have no real-world or popular media counterpart.
Early ship designs were all over the place -- I had no particular goals and so just tried out a variety of ideas to see what was most memorable, different, and fun. After a lot of playtesting and design iterations, I settled into what you see in the final game. There are 28 classes of mobile military ships currently in the game (not counting starships), and these make up the bulk of players' fleets. Each ship type has some sort of unique ability associated with its name, or some other special combination of stats that makes it fill an individual niche.
This worked out really well, except when it came time to try to balance all of these ships so that they were inherently equal despite being so different -- this seemed to be an impossible task, and the ships became more generic the more equal I made them. But when the ships were not equal, my alpha testers were great at finding and exploiting over-strong ships. I'd introduce some cool new ship type, and it would either be completely irrelevant or the powerful new thing that everyone would use and that I would have to quickly nerf.
But I was committed to having variety in this game, as I knew that was one key to longevity and replay value, so I pressed onward with many different designs: electric shuttles, which strike all nearby ships with weak bolts of lightning; vampire claws, which absorb health from ships that they crash into; EtherJet Tractors, crazy-fast cloaked ships that can grab enemy ships and drag them away (the AI is really mean with these on the upper difficulty levels); and 22 other ship types with various abilities, strengths, and weaknesses. I succeeded in creating variety, but unwittingly created a game that was too complex for much of anyone to play -- people could remember what all the ships did, but it was paralyzing to try to decide which ships out of a stable of 28 would be the best in any given situation. This made for people just specializing in a few ships (bad), or building a bit of everything completely at random (much, much, worse). It took a few weeks of playtesting for my alpha group and I to come up with the solution for this.
Limiting The Number Of Ship Types Per Game
Up until a certain point in the design, all of the ship types could be built by any player at any time. This meant that players had a dizzying array of options (28 different main ship types to choose from at any time? Even I couldn't make effective decisions with them, and I designed them). It was actually my dad, who is one of my alpha testers, who suggested that it would make a lot more sense if the number of ship types was more limited in each individual game.
I was initially resistant to the idea, but nevertheless he and I spent several hours hashing out the system for randomizing and unlocking "bonus" ship types that you currently see in the game. Once the design for this was complete, I immediately knew we were on to something. By limiting the number of ship types each player has available at any given time, there is a greater sense of progression to the game (since Advanced Research Stations are captured and new ship types are unlocked), there is greater variety between campaigns (since not every campaign contains every ship type), and the starting options for players are considerably less overwhelming.
If you think about it, this is basically the same sort of segmenting that you get in most other RTS games, where the different civilizations have inherently different units. But in most other RTS games, all of the various civs have to balance out with one another so that there is no dominant civ (and there still tends to be a collection of civs that all the best players use). In AI War you are allowed to select one bonus ship type to start with, but all the rest that you get are not discovered until several hours into the game. Likewise, the ships that the AI uses are dependent on the map you choose, and so are unknown at the start. This different-every-time feature was half of a key feature for AI War's unit balance, but I didn't realize it quite yet.
Unbalancing Units On Purpose
With the different-every-time features for bonus ship types, I suddenly realized that I was free to make the ship types as unbalanced as I wanted to. The idea of "fairness" is required in competitive multiplayer games, but many cooperative multiplayer games are unbalanced on purpose. Take a look at the co-op mode in Resistance 2, for instance: there are three distinct player classes, each with distinct strengths and weaknesses. This lets players fill unique niches, which emphasizes cooperation, and it also provides for more variability in each game.
I decided to do a similar thing with AI War, making it so that all ship types are useful in some way, but some ships are more valuable in one campaign than others (depending on what ships the opposing team may have, the strengths of your bonus ship types might be really helpful or not). At the core of this, I knew I wanted the rock-paper-scissors relationship between the standard Fighter, Bomber, and Cruiser ships. These three ship types are in every campaign, and one of those three units is strong against every other ship type in the game. Thus there is never a situation where one team gets a ship type that the other team is completely unable to counter.
Per-Type, Per-Level Ship Caps
One of my early design goals for the game was to make it so that all ships that you can build at the start of the game are still useful at the end of the game. Many other recent RTS games are also doing this sort of thing, but usually that's with a veterancy system that seems a little bit too opaque for my taste (and which really only seems to work well with small numbers of units). By contrast, in Supreme Commander players would often still need to build Tech 2 units even when building Tech 3 units, just because the Tech 2 units were so much cheaper and faster to make.
Instead of putting so much scaling into cost and time to build, instead I implemented a per-ship-type population cap. Not only was this per type, it was also per technology level of each type. So you can build perhaps 180 Mark I Fighters, 140 Mark II Fighters, 120 Mark III Fighters, and 90 Mark IV Fighters, for instance -- and similar ratios for Bombers, Cruisers, etc. This was the final piece of the balancing puzzle. By limiting the number of each type of ship that could be built, I insured that players would have to utilize ALL of their ship types, and all levels of each ship type, throughout the entire game. So even at the very end of a campaign, players are still building Mark I ships in addition to the Mark IV versions.
Real commanders quite often have to deal with outdated equipment or underperforming units, and I wanted to simulate that in a game. Choosing where to place your best units, and where to put your weaker, more outdated ones, creates a whole new strategic challenge (my favorite novel, Ender's Game, also discusses this as an issue). Rise of Nations had done something similar with their increasing-costs per each unit of a type built, but those were irrespective of technology levels so far as I recall -- it made you have a reasonably balanced army (unless you were really resource-rich), but it didn't make you use older tech in addition to the new.
There were many other advantages to this system, such as making the acquisition of Advanced Research Stations even more important (they effectively increase your pop cap as well as the types of ships you can build). It also let me make certain ship types even more powerful, since I could then give them a lower pop cap to balance it out. And for the really weak, inexpensive, swarm-style ships like laser gatlings or infiltrators, I could give them a cap that was 6x higher than normal. All that contributes to some pretty impressive differentiation between ship types, and kept them from feeling too generic and similar to each other.
Space-Based Substitutes For Walls
In the context of an RTS game, what are walls, really?
#1. A way to prevent enemies from coming at your defensive positions from all directions.
#2. A way to slow down enemies.
#3. A way to choose the most likely locations for battles.
Before I started thinking about walls in these more abstract terms, I had actually implemented a unit called Magneto Lanes (basically space walls), but those never really felt right or made much sense. The better solution, the one that you see in the actual game, is tractor beams. Tractor beams are a familiar technology from literature and film, and they meet the criteria for #2 and #3 above. Tractor beams are not indestructible (neither are walls), but they provide a way to slow down oncoming hordes. Of course, each tractor beam can only block a limited number of ships, unlike a wall, so that changes the dynamics some while keeping the same basic idea -- change like that can be refreshing.
The other part of the walls puzzle, the solution for criteria #1 above, was choke points. Basically, criteria #1 is just referring to player-made choke points, but if there are already choke points available then the players can just exploit those instead of making their own. As it happened, there were already excellent choke points available in the game in the form of wormholes. Without wormholes creating bottlenecks for entry into planets, tractor beams would be vastly less effective, but in combination they are able to provided all the same basic protections as walls in a slightly new way. Thus, tractor beams evolved from a tiny little ship with some side interest, to one of the core mechanics of the game.
In Conclusion / The Harshness Of Space
Being able to take a familiar genre niche (walls), and substitute something less familiar that nevertheless fills the same basic niche (tractor beams) has been really exciting. There have been a few other opportunities for me to do this in AI War, such as the way knowledge is gathered and unlocked (tech points are generally something that you don't have to get from specific locations in an RTS game, but that is the case in AI War), the way build queues are managed (central controls make it easy to make quick, large-scale economic decisions), the way manufactories work (in place of a market), and others.
Not one thing on that list was in the original design documents for the game, but rather came about through playtesting and seeing how the space environment, the wormholes, and the multi-planet galaxy maps interacted. To me, this is pretty much the entire case for iterative development -- I could never have thought of these things up front. Space is a harsh environment for astronauts to work in, and in a metaphorical sense that has held true for me with regard to designing this game. However, some of the best stuff is invented in space, out of necessity moreso than enterprising spirit. I'm glad I took the journey!
Monday, May 11, 2009
Designing Games In A Vacuum, Part 1: Terrain & Positionality
In developing the space-based RTS game AI War: Fleet Command, I encountered an unexpected design challenge: namely, I hadn't anticipated the issues that would be caused by setting the game in space. I've played space-based games like Homeworld (which I didn't care for) and Descent: Freespace (which I loved), among many others -- all sorts of Star Wars games, for instance. Most of the games that I had loved which were set in space all had a strong action element to them, usually involving piloting smaller craft through asteroid fields, near planets and back, or around much larger enemy ships (Star Fox also fits this mold in many of its levels).
I've never been much into the 4X genre, which is also commonly set in space, but from what I have seen the appeal there appears to be detailed management of a lot of different colonies and planets and fleets, all of which have unique attributes. This was sort of along the lines of what I wanted to do in AI War, except I wanted more of a focus on realtime military management. The idea was that it would be similar in feel to my favorite terrestrial RTS games, except bigger (multiple planets, etc), and in space.
Issues
On the surface this might sound simple, and I delved into design and the early prototypes with gusto. Each early prototype introduced new elements, making the experience more fun and more of an actual game, but at the same time a whole slew of unanticipated challenges were appearing. I was accustomed to terrestrial RTS games, for the most part, and so was unprepared for some of the bigger issues that I suddenly found myself facing when I tried to translate what I knew into space. Here are the first two:
Shortest Path
1. In faux-3D space, where there are no obstacles that really block ships from traveling, the shortest valid path between any two points is always the line connecting them. This makes most of the space around planets pretty useless, because when you arrive at a planet you should just go straight at the enemy, and they'll just come straight at you. Not exactly riveting.
Terrain
2. Connected to the first issue, there is no terrain in space. In a terrestrial game you have water, which might contain naval units and block land units (that can't hover or what have you). You also have forests, mountains, hills, rubble, neutral buildings, craters, and a slew of other environmental features to get in the way of your units. These help players create choke points, take elevated ground or cover for tactical advantages, and so on. In space there's just... nothing. So all of that good complexity is out the window, unless you do something like have ships with bonuses in asteroid fields, nebulae, or other space phenomena -- and that seems mildly contrived if overused, as well as not too workable for the general game concept.
Solutions
It took many, many iterations of design for AI War to arrive at the state that it is currently in. My alpha testing team was invaluable in their feedback on what worked and what didn't, what made sense, what was confusing, what was fun or annoying, etc. Here is some of what we learned:
Create A Sense of Position Where There Is None
In space, when any position is tactically as good as another, you need to have your units themselves create positional meaning. Early builds of the game had all AI ships on a planet immediately chase and attack any player ships that came into a planet's system. While this was an effective tactic for the AI, it was not very interesting to play against. This gave rise to the concept of command posts, which AI ships guard and will not stray too far from, and which often have unique building-style units present that the players either want to capture or destroy. This makes pockets of enemies that the players must maneuver around to succeed.
I kept coming back to some of my favorite 12-hour marathon games against the AI in Empire Earth. The reason those were fun was the a constant flow of enemies attacking my team, as well as all sorts of semi-isolated pockets of units that they did not attack us with. This behavior was not actually part of the EE AI, but it came about due to AI transport limitations on "team islands" random maps. As players we used that to get the sort of game that we found most fun.
In AI War, therefore, I went with a similar sort of design, except that instead of the AI having semi-isolated pockets of ships based on not being able to effectively cross water (since that doesn't exist in space!), I made most of the AI ships on AI planets have a guard directive as their primary behavior. They must protect the command post/station, never straying too far from it unless it is destroyed. The addition of "Special Forces" units (which don't guard, but rather just patrol around planets at random) finished off this concept by adding the uncertainty of what and how many units are passing through a planet at any given time (reinforcements and the constant threat of incoming AI waves also help keep the players on their toes).
With a randomized distribution of resource patches on planets, a randomized effect to AI defensive positions, and a wide variety of auxiliary enemy structures that help to create secondary goals (Data Centers, Ion Cannons, etc), this made for the varied and interesting planetary maps that you see in the final game. Since there is no real terrain in space, the terrain had to be based on the position of resources, and how the AI is arranged to defend those resources. In some senses, that therefore means that the terrain is ever-changing in the game, since the relative strength of locations on any planet shifts as the AI reinforces and the player attacks. That's not an effect you tend to get too much in terrestrial RTS games, so that was a differentiating factor that I was happy to stumble into.
Making the enemy planets randomly unbalanced also went a long way to creating the overall galaxy-wide terrain. Because some planets are impossibly hard at the start, they become semi-permanent blockers, like mountains you can only eventually tunnel through. This made it so that, on a galaxy scale as well as on a planetary scale, players could not always take the shortest path between any two points -- usually there's a better way, if the players scout and strategize effectively.
Let The Players Set The Pace Of Game Advancement
You might not think that game advancement has much to do with terrain, but in a game that is all about capturing and holding terrain, the issues are very much intertwined. In AI War, there is a numeric "AI Progress" indicator that increases by 1 every time you destroy a warp gate or take a planet (of which there is one each per planet). You can decrease it by 2 by destroying data centers, but there are comparably few of those. The higher the AI Progress level goes, the stronger the AI becomes, both in its defensive reinforcements and its offensive waves.
The AI Progress came about as part of my desire to have this be a thinking-focused game, rather than a race to tech up. The AI basically holds steady with its level of technology and the size of its individual raids and reinforcements if you don't take any planets. If you do nothing it will still continue to bombard you and reinforce with the level it currently has, of course, which means that if you ignore an AI planet near your forces for a good part of the game, you might later return to find thousands of low-level ships waiting there. The AI Progress system also penalizes players who don't plan ahead, because if they just take every non-valuable planet they come across, the AI will get too powerful and will probably kill them.
This overall pacing is helpful because it allows the players time to scout, plan, and carry out their plans, without letting them just turtle up and hoard resources and units. "Boom" was always my strategy against AIs in other games (yes, I'm one of those, but only because it was so effective), and I wanted to invalidate that strategy in AI War because it's so much more interesting when your activities are constantly changing throughout play (a mix of military offense, economy management, military defense, and exploration). In other games there is often an incentive to just focus on one aspect of the game at a time, at least when fighting the AI, and I wanted to turn that on its head.
Coming back to the issue of terrain, the AI Progress system also helps contribute to the sense of place and differentiation between all the planets in the galaxy, believe it or not. Players have to decide not just whether they have the strength to take a given planet, but whether it is strategically wise to do so. Does this planet get us closer to a goal, open new avenues for expansion, or net us significant resources? Without the pressure of the AI Progress increasing with every acquisition, the strategic implications of taking any planet would be simple, as in most other RTS games: take it if you can. But the presence of the AI Progress meter can make it so that even a comparably low-level planet is "in the way" (in the sense of mountains or water bodies in other games), not because you can't capture it, but because you think it would be unwise to do so.
In no other RTS game that I can think of are there so many subjective decisions that can have such a far reaching effect on the future of your campaign. I'd really love to see what some other developers might do with this sort of idea, really emphasizing opportunity cost at every turn. RTS players are used to having to make hard decisions when it comes to what units to build, but the strategic issues of how, when and where to expand have never been so difficult.
I designed and coded this game, and I have yet to find even a semi-consistent "best path" to victory, or any dominant strategy to use in the early game. That was one of my chief objectives with this game (since I'm basically done with an RTS game as soon as I find that best path). In the next article in this series, I'll talk more about how the unique design challenges of a space environment helped make this happen.
I've never been much into the 4X genre, which is also commonly set in space, but from what I have seen the appeal there appears to be detailed management of a lot of different colonies and planets and fleets, all of which have unique attributes. This was sort of along the lines of what I wanted to do in AI War, except I wanted more of a focus on realtime military management. The idea was that it would be similar in feel to my favorite terrestrial RTS games, except bigger (multiple planets, etc), and in space.
Issues
On the surface this might sound simple, and I delved into design and the early prototypes with gusto. Each early prototype introduced new elements, making the experience more fun and more of an actual game, but at the same time a whole slew of unanticipated challenges were appearing. I was accustomed to terrestrial RTS games, for the most part, and so was unprepared for some of the bigger issues that I suddenly found myself facing when I tried to translate what I knew into space. Here are the first two:
Shortest Path
1. In faux-3D space, where there are no obstacles that really block ships from traveling, the shortest valid path between any two points is always the line connecting them. This makes most of the space around planets pretty useless, because when you arrive at a planet you should just go straight at the enemy, and they'll just come straight at you. Not exactly riveting.
Terrain
2. Connected to the first issue, there is no terrain in space. In a terrestrial game you have water, which might contain naval units and block land units (that can't hover or what have you). You also have forests, mountains, hills, rubble, neutral buildings, craters, and a slew of other environmental features to get in the way of your units. These help players create choke points, take elevated ground or cover for tactical advantages, and so on. In space there's just... nothing. So all of that good complexity is out the window, unless you do something like have ships with bonuses in asteroid fields, nebulae, or other space phenomena -- and that seems mildly contrived if overused, as well as not too workable for the general game concept.
Solutions
It took many, many iterations of design for AI War to arrive at the state that it is currently in. My alpha testing team was invaluable in their feedback on what worked and what didn't, what made sense, what was confusing, what was fun or annoying, etc. Here is some of what we learned:
Create A Sense of Position Where There Is None
In space, when any position is tactically as good as another, you need to have your units themselves create positional meaning. Early builds of the game had all AI ships on a planet immediately chase and attack any player ships that came into a planet's system. While this was an effective tactic for the AI, it was not very interesting to play against. This gave rise to the concept of command posts, which AI ships guard and will not stray too far from, and which often have unique building-style units present that the players either want to capture or destroy. This makes pockets of enemies that the players must maneuver around to succeed.
I kept coming back to some of my favorite 12-hour marathon games against the AI in Empire Earth. The reason those were fun was the a constant flow of enemies attacking my team, as well as all sorts of semi-isolated pockets of units that they did not attack us with. This behavior was not actually part of the EE AI, but it came about due to AI transport limitations on "team islands" random maps. As players we used that to get the sort of game that we found most fun.
In AI War, therefore, I went with a similar sort of design, except that instead of the AI having semi-isolated pockets of ships based on not being able to effectively cross water (since that doesn't exist in space!), I made most of the AI ships on AI planets have a guard directive as their primary behavior. They must protect the command post/station, never straying too far from it unless it is destroyed. The addition of "Special Forces" units (which don't guard, but rather just patrol around planets at random) finished off this concept by adding the uncertainty of what and how many units are passing through a planet at any given time (reinforcements and the constant threat of incoming AI waves also help keep the players on their toes).
With a randomized distribution of resource patches on planets, a randomized effect to AI defensive positions, and a wide variety of auxiliary enemy structures that help to create secondary goals (Data Centers, Ion Cannons, etc), this made for the varied and interesting planetary maps that you see in the final game. Since there is no real terrain in space, the terrain had to be based on the position of resources, and how the AI is arranged to defend those resources. In some senses, that therefore means that the terrain is ever-changing in the game, since the relative strength of locations on any planet shifts as the AI reinforces and the player attacks. That's not an effect you tend to get too much in terrestrial RTS games, so that was a differentiating factor that I was happy to stumble into.
Making the enemy planets randomly unbalanced also went a long way to creating the overall galaxy-wide terrain. Because some planets are impossibly hard at the start, they become semi-permanent blockers, like mountains you can only eventually tunnel through. This made it so that, on a galaxy scale as well as on a planetary scale, players could not always take the shortest path between any two points -- usually there's a better way, if the players scout and strategize effectively.
Let The Players Set The Pace Of Game Advancement
You might not think that game advancement has much to do with terrain, but in a game that is all about capturing and holding terrain, the issues are very much intertwined. In AI War, there is a numeric "AI Progress" indicator that increases by 1 every time you destroy a warp gate or take a planet (of which there is one each per planet). You can decrease it by 2 by destroying data centers, but there are comparably few of those. The higher the AI Progress level goes, the stronger the AI becomes, both in its defensive reinforcements and its offensive waves.
The AI Progress came about as part of my desire to have this be a thinking-focused game, rather than a race to tech up. The AI basically holds steady with its level of technology and the size of its individual raids and reinforcements if you don't take any planets. If you do nothing it will still continue to bombard you and reinforce with the level it currently has, of course, which means that if you ignore an AI planet near your forces for a good part of the game, you might later return to find thousands of low-level ships waiting there. The AI Progress system also penalizes players who don't plan ahead, because if they just take every non-valuable planet they come across, the AI will get too powerful and will probably kill them.
This overall pacing is helpful because it allows the players time to scout, plan, and carry out their plans, without letting them just turtle up and hoard resources and units. "Boom" was always my strategy against AIs in other games (yes, I'm one of those, but only because it was so effective), and I wanted to invalidate that strategy in AI War because it's so much more interesting when your activities are constantly changing throughout play (a mix of military offense, economy management, military defense, and exploration). In other games there is often an incentive to just focus on one aspect of the game at a time, at least when fighting the AI, and I wanted to turn that on its head.
Coming back to the issue of terrain, the AI Progress system also helps contribute to the sense of place and differentiation between all the planets in the galaxy, believe it or not. Players have to decide not just whether they have the strength to take a given planet, but whether it is strategically wise to do so. Does this planet get us closer to a goal, open new avenues for expansion, or net us significant resources? Without the pressure of the AI Progress increasing with every acquisition, the strategic implications of taking any planet would be simple, as in most other RTS games: take it if you can. But the presence of the AI Progress meter can make it so that even a comparably low-level planet is "in the way" (in the sense of mountains or water bodies in other games), not because you can't capture it, but because you think it would be unwise to do so.
In no other RTS game that I can think of are there so many subjective decisions that can have such a far reaching effect on the future of your campaign. I'd really love to see what some other developers might do with this sort of idea, really emphasizing opportunity cost at every turn. RTS players are used to having to make hard decisions when it comes to what units to build, but the strategic issues of how, when and where to expand have never been so difficult.
I designed and coded this game, and I have yet to find even a semi-consistent "best path" to victory, or any dominant strategy to use in the early game. That was one of my chief objectives with this game (since I'm basically done with an RTS game as soon as I find that best path). In the next article in this series, I'll talk more about how the unique design challenges of a space environment helped make this happen.
Saturday, May 9, 2009
AI War: Fleet Command is now available!
If you're into smart, fun indie games for the PC, check out the website for Arcen Games, my new indie games development company. Our first title, a space-based RTS game called AI War: Fleet Command, is now available for demo or purchase! AI war has vast numbers of ships in every game -- 30,000 or more in most -- and it also has some of the toughest, most interesting AI in the genre.
The game is played in cooperative campaigns for 1-8 human players against 2 stronger AI opponents. With over 100 hours of content, there's some serious replay value here! With so many features, and at $20 per copy, it's a steal compared to our competitors' games. We also regularly add free downloadable content (DLC) for our players, so there's always something new to find and explore!
The game is played in cooperative campaigns for 1-8 human players against 2 stronger AI opponents. With over 100 hours of content, there's some serious replay value here! With so many features, and at $20 per copy, it's a steal compared to our competitors' games. We also regularly add free downloadable content (DLC) for our players, so there's always something new to find and explore!