Uber Entertainment’s Jon Mavor spoke with us for two hours about RTS games, his history with Total Annihilation and Supreme Commander, and his plans for Planetary Annihilation. We’ve edited that interview to highlight some of the most distinctive elements of Planetary Annihilation, and bore into greater detail about exactly how the game's ridiculous technology, scale, and design will work.
Looking for the Kickstarter? Look no further!
PCG: Why don't we start from the beginning? Where is Planetary Annihilation coming from?
Jon Mavor, CTO and co-founder, Uber Entertainment: Backing up to 1997, when I was working on Total Annihilation, I didn't realize at the time how awesome that game was going to be. To me it was just another game. I really liked RTS games at the time, I was into Command & Conquer and stuff. I just worked on that project and it turned out to be a really great game. Of all the games I've ever worked on, if I mention that game to somebody, it's the game that gets them excited.
In 2004 I went to Gas Powered. Chris was like, hey, come to Gas Powered and work on Supreme Commander. I ended up being the lead programmer on that game. It was a great game. Did you play SupCom at all?
Yeah, I played a fair bit of SupCom and SupCom 2.
Mavor: Okay. With Supreme Commander, I felt like we really made a fantastic game. We pushed the genre. I think the strategic gameplay was really awesome. But it didn't scratch my personal itch. Just because we made a game that was great doesn't mean that we can't make another game that's also great, that's a different twist on the same genre. I have my own ideas, and Steve Thompson—Steve worked on the original TA—I went to him and I said, “Hey, man, what do you think about doing another RTS game?” He was all over it. He really wants to do it.
Our creative director here at Uber, John Comes, he came from Westwood, he's a Command & Conquer guy, and he also worked on Supreme Commander. We thought, look, we have all the ingredients here to do another RTS game. Let's put something together and do something that's really cool.
Supreme Commander’s scale could become sort of mind-boggling. The sheer amount of things you had to look after and control was really challenging. When I hear about Planetary Annihilation, my first reaction is, “Oh my God, now there's entirely different planets, entirely different play areas.” So I'm curious... How are you going to handle the complexity that comes from a shift like that?
Mavor: There's a couple things. First of all, the idea behind the game is scalability. I think if you look at TA, it had that. It had this level of scalability where you could play on a pretty small map and have a pretty quick game with just one other person. You could play a 20-minute game of TA on a small map. That's what some people were comfortable with and willing to do. And then you could get on bigger maps where you get eight players and just take hours. You'd have insane numbers of units and all that stuff.
"That's who this game is being made for. The people who really do want to deal with the complexity of bajillions of units across multiple playfields and smashing planets together."
With Planetary Annihilation, it's the same thing. The idea is, if you want to have a quick game, you can do that. You can set a low unit count. You can play on a small map. You can do that kind of thing. The idea behind this game, though, is to give those fans that want to control vast armies the ability to do that. That's who this game is being made for. The people who really do want to deal with the complexity of bajillions of units across multiple playfields and smashing planets together. It's really oriented towards those kinds of players. So I don't necessarily see that as a problem. It's something I like about the game, how big it can get. The design goal here is to be able to do maps that are even bigger than what we did in some of these other games, in terms of player counts and stuff like that. Imagine you had four or five planets. Each planet starts out with five or six players on it. You battle it out on your planet first as you're building up your economy and you try to get bootstrapped and take out the other guys on your planet. Then the war goes interplanetary. And the game could last for 12 hours or something like that. I definitely envision those kinds of battles. This is really for the people that want that kind of stuff. That's what we're trying to do.
With multiple planets being involved, how are you going to handle transiting between planets? Is there going to be any kind of a fleet game, a space game, that governs how people pass between worlds?
Mavor: The short answer is, I want to not have too much in the way of that space battle stuff. I want it to be... I'm launching a rocket from this planet to that planet, and when that rocket is in flight, you're not doing a whole lot with it. You're not dealing with it. It's more like a transport mechanism. And the reason for that is, I think space battles, space armadas and stuff like that, require a completely different kind of interface and a completely different way of handling it. I want the combat to be mostly ground-based. We will have satellites, a satellite layer around the worlds, where there can be some space stuff that happens.
We should talk a little bit about the planetary technology as well. One of the difficult things about making these kinds of games is creating the maps. The direction that we're going to go with the map editor in this game is basically... These planets are going to be procedurally generated, and then there's a tool within the game... You could basically go in and say, I want this much ground cover, I want this much water. Or if you're creating a moon, I want this kind of crater density, or I want it to be this hilly. And then after it auto-generates... Think of how Minecraft generates a world. It'll automatically generate a world, and then you can go in and customize it after that, using the editor part. People are going to be able to build their own levels from within the game. That's a really important goal for us. If you look at some of the greatest RTS games, they've all had these kinds of built-in level editors. It's something that we never really did with any of the other games.
How is terrain going to affect gameplay?
Mavor: There's two different things. There's terrain types and then there's planet archetypes. A planet archetype would be... You start off and say, okay, this is going to be a moon. I want it to be this big, so you set the size of it, and it generates a planet of that size. Then, what are the implications of being a moon archetype? You have no air, so things like windmills don't work. It's easier to get on and off the planet. If you're on a traditional moon, you're going to end up with a lot of gray regolith-type stuff and craters. So the controls you have for building that planet would be different from an Earth-type planet.
An Earth-type planet would be, how big is it, and then how much of each terrain type? How much forest? How much plain? How much water? The number of terrain types isn't really defined. But from a planetary perspective, we're going to do Earth-type plants, Mars-type planets, and moons, as well as outer asteroids. I guess that's effectively four planetary types. Within that, each one is going to have their own terrain types. As far as how they impact gameplay, there's a bunch of different things.
Think about an asteroid in the outer belt. If you look at a company called Planetary Resources, they have all this investment from billionaires and stuff, and they're doing asteroid mining. They want to go out there and mine different asteroids. There are asteroids out there with metal content that is far beyond anything you would find on earth. Most of the nickel mines and heavy metal mines that we find on Earth are actually asteroid impact points. If you got to the outer asteroids, the type of terrain there means you have a lot of asteroids. There's a reason to go out there and get on those things, to gather some of those higher-density metals and things like that.
It kind of seems like, in a lot of ways, you're flying in the face of a lot of the ways people make RTS right now. I'm curious as to why you seem to be going in the opposite direction, going bigger.
Mavor: You can look at DOTA as an example of where the RTS genre has gone. You went from Warcraft III to, hey, let's just control one unit. That's basically what DOTA is. It's an RTS where you control one unit. And that's great, that's fun. I love DOTA. I love Monday Night Combat, which is very much a DOTA-inspired game. Super Monday Night Combat is basically third-person DOTA. So we have no problem with bringing you down to a level where you're controlling just one unit.
"Honestly, it’s just fun to have big armies and smash them against one another."
But there's this whole other genre where it's actually a strategic RTS, like a TA or a SupCom, and nobody is making those games anymore. I don't think it's just because people don't want to play them. I think it's because not as many people want to play them as want to play something like a StarCraft. There's really been, I think, these two different genres of RTS games. The Warcraft/StarCraft zoomed-in-close, very micro-intensive games, and then there's the more strategic games where it's about building up your resource base and having lots of units. Honestly, it's just fun to have big armies and smash them against one another. It's fun to work on a larger scale. Some people appreciate that kind of gameplay. The guys here that are working on this game with me are people who enjoy that style of gameplay. We like DOTA as well, but nobody is doing this anymore. The only way that we're going to get to make a game like this is if there's enough fans out there who want to support it.
So you're right. If we were going for a traditional publishing model to make an RTS, I think we'd be forced to go the direction that all RTS has been going. Which, as you point out, is simplified and micro and almost focusing on what I'm doing with one particular unit at a time. I think there's room to make more different types of RTS.
That touches on something I wanted to bring up: with the action happening across all these different play areas, it would seem like situational awareness will become a real challenge for the player. I might be really focused on an intense battle on one planet, and then something else equally important begins to happen on a moon somewhere far away.
Mavor: There are two things that we're doing to address that. When you're zoomed out to the solar system scale and you can see everything that's going on, we're putting down big icons that represent where your base locations are, with a status on them.
The other thing I'm going to do... If you remember, Supreme Commander supported multiple monitors. I don't know if you ever played it in that mode or not. You had one monitor that was your main one and a second monitor that was another view of the world somewhere else.
We're going to bring that feature back, but we're going to make it more flexible, so you're going to be able to split your viewpoint and look at your different bases on the same screen. You can have a viewpoint that's got your moon base, a viewpoint that's on the asteroids, and then a viewpoint on the planet if you want to.
So like a bank of security cameras...
Mavor: Exactly. And they're all active windows. You can do everything in those windows, contextually, that you'd be able to do in the main window. Now, I don't necessarily expect every player of the game to split their thing into a bunch of windows and use that, because I really want the high-level strategic awareness to be there. But advanced players are definitely going to be able to do that.
One thing that was always a hallmark of Total Annihilation and Supreme Commander is games like this tend to go really long. They tend to become these huge, sprawling affairs. Will there be persistent saves in multiplayer? If you start playing a big match with people, will you be able to quit, save, and then fire that back up?
Mavor: I'm not sure that we're going to support that. We may support it. But in my experience, the problem with that is... You save the game, and then when do you get all your players back together again? Especially if you match-made into it or something like that. It may not be realistic to be able to restart those. So the question is, is it worth it to put that feature in. You tell me. I mean, one of the things we're doing here is we're going to be reaching out to the fans as we develop the game, to find out what's really important to them.
What I'm picturing for the larger games, honestly, is that we do something... Well, first of all, I want to have a meta-game that it plugs into. I want to do something more organized, where it's like... We spawn off these larger games on a regular schedule, so that if you really want to get involved in a big game, there's a place to go and do it.
Could you elaborate a bit on that meta-game you're thinking about?
Mavor: Yeah. Do you remember where Total Annihilation had the galactic war? The basic idea is that you have a playfield that's made up of, effectively, multiple star systems. Star systems go into contention and you have battles in them. Whichever side wins the battle takes over that system. The goal is to take over the galaxy and win the galactic war. That's what the meta-game is.
Actually, I should talk a little bit about the technology. That has really been my personal forte. I was the lead programmer on Supreme Commander. I wrote most of the graphics engine. I wrote strategic zoom. I wrote the TA graphics engine. My kind of experience on this comes from the tech side. You can see where we're trying to push that with Planetary Annihilation.
To to back up a second... Total Annihilation was what's called "asynchronous." Chris is a total genius, and he came up with this asynchronous multiplayer idea, where basically, when you played TA, all of the machines in the network had a different view of the game. There was no central server, and there was no one descriptor of the gameplay. It was completely asynchronous. You ran your units, everybody else ran their units, and the network code that this guy Rick Lambright, who's an unbelievable networking genius... He came up with a bunch of code to make all this stuff work. It allowed you to do interesting things. For example, you could run an AI on a particular person's machine. Instead of having everyone run the same AI, you could run it on one person's machine.
With Supreme Commander, we were originally going to go with an async model, but Electronic Arts, when they did the technical review... Basically, they really strongly suggested that we go with what's called a synchronous model. In a synchronous model, what happens is, instead of sending over unit movement around the network, what you send is all the commands that the other players have entered. So for example, what I send to your computer is, I clicked on this unit and gave it this order. What you send over to my computer is, I clicked on this other unit and told it to do something. All of that stuff gets replicated to all the machines, and every single machine runs the simulation in lockstep. We run exactly the same update tick on my machine, your machine, and so on. Well, the implication of that networking model is that if your machine is slow and can't keep up with everyone else's, then you slow us down. In other words, the slowest person actually is the one that controls the performance of the game for everybody else.
"We’re going to go with a client-server model. This is the model that most modern games use anyway. But most RTSes don’t use this model."
That's an unfortunate situation when you're really trying to push a lot of units and when you're trying to do a lot of stuff with the game. You know you're limited to whatever the slowest machine can do. As opposed to just that person getting a bad experience because they have a slow machine, they make everyone else have a bad experience. What we're doing with Planetary Annihilation is, we're going to go with a client-server model. This is the model that most modern games use anyway. But most RTSes don't use this model.
In this model, you can have really powerful servers that are up in the cloud or in a data center somewhere. You can have a machine that has 32 cores on it running all of the simulation for this massive game. Then your client machine that you're playing on, it only has to deal with the stuff that you can see and the stuff that you want to control. You do the pathfinding for you units, somebody else does the pathfinding for their units, and then the central server does all the heavy lifting to coordinate all that stuff. It's going to allow us to have bigger games than what we can do with the other models. Both from a network bandwidth perspective and from a performance perspective.
I have a note here mentioning that you're planning to integrate something called “mega-games.” These will be like events?
Mavor: Exactly. That's kind of the current thinking, anyway. Imagine that we announce... Okay, this Saturday, every hour, we're going to kick off a game that's like a 40-player game.
Maybe it looks like four or five planets, each with eight to 10 players on it. Think about it from a unit count perspective. You start out and you're like, okay, this server can handle—let's say it's 20,000 units. So when you start out, you have your unit limit, and then as people get knocked out of the game, that unit limit starts getting absorbed by fewer players. By the time you get to just a couple of players left, they each have a huge army, because they've absorbed all the other resources that are there.
The idea is to really be able to have these 12-hour or maybe even 24-hour-long games in some cases, for the people who really want to be involved in a massive battle.
What is your current thinking regarding factions?
Mavor: This is a tough one that we've been going back and forth on. There's basically going to be a single pool of units that everybody can build from. Like, why is there a difference between what the Core have and the Arm have? The war has been going on so long, all the technology should be available to everyone. So differentiating based on faction, in a lot of RTS games, it comes down to the look of the unit. We all have archers, but they look a little different.
We're taking the perspective that you are your own faction. You are your own commander, and you control your own faction. You are trying to win the galactic war. When it gets into the bigger battles, I'm really hoping to be able to fit people's clans and stuff into this, so that people can form their own factions and battle against each other.
But I'll also say that this decision is not 100 percent. In other words, if the fans say, no, we really want to split it up into a couple of factions, we will do that. I'm really curious about this, what the reaction will be to that. It's one of those things that I think is going to be divisive.
What about a campaign?
Mavor: We're not planning on having a campaign. What I am going to do is: people who really want a campaign and they want to support on the Kickstarter, I'm going to make that an option. But the focus here is on massive robot armies battling each other. The campaign is like... You play through the campaign and then you're done. But that cost millions of dollars to make, right? We have to be thrifty here, because we only have so much of a budget. We're not going to have $10 million to make this game, and the campaign is the most expensive stuff to build out of anything.
Let's talk about balancing for a second there. Actually, let's go back one step... If you fire an asteroid at another planet... Are these planet-destroying events? Can you basically raze a planet if you smack something big enough into it?
Okay. Can you also do more limited damage, where you just devastate maybe a continent?
Mavor: Yeah. Because it's about the relative size and speed of thing coming in. How many engines do you build on it? How big is it? How fast do you get it going before you smack it into the other thing? There's going to be a range of different levels of destruction here. But I would suggest that if you're going to hit a planet, you really want to take it out. Or maybe you want to just take out one half, because all your stuff's on the other half or whatever. There's going to be a range. It's not just going to be an insta-kill, it always destroys the whole planet. It's not that simple.
Also, keep in mind, you want to be able to maneuver these things around. You might not always be moving them just to crash them into something. You might be moving them into different orbits. You can put them in a more strategic location. Things like that.
So you can move a moon into orbit on someone's planet and use it like a huge carrier?
About that, though—when I think of Total Annihilation and SupCom, the late game in particular... Sometimes I felt like those games had maybe gotten a little too absurd, where things turned into huge doomsday exchanges, again and again, until someone's knocked out. Which could be a little frustrating, a little dull, because at that point you just keep ordering more missiles and building more heavy artillery. How do you counter that late-game situation?
Mavor: Think about it this way. Imagine that you start off on a planet. You're battling on the planet. You have your commander down there and his commander's down there. Using two of you as an example. You're building up your base, but you're like, "I've got to get my commander off this planet, it's a sitting duck." So I'm picturing games that end where basically two-thirds or three-quarters of the way through the game, the planet's out of it. Your playfield just shrunk, because you guys have chucked enough rocks down at the thing that you can't really do anything with it anymore. Now your playfield has shrunk and you're forced to engage each other.
So picture a scenario where, if you happen to get out there and catch some other commanders on that planet and you take them out, great. But it's usually like, okay, we moved our commanders out-system to hide them. That creates a bit of a cat-and-mouse game as we fight out there. So I think there's going to be some really interesting strategies and scenarios that come out.
Also, our creative director at Uber, John Comes, he worked on Supreme Commander, but he also comes from Westwood. He worked on Command & Conquer Generals: Zero Hour and stuff like that. He's kind of a balance wizard. So he's got some ideas on how to get this game balanced. I don't know if I can speak to all the things he's going to do, but...
I just want to touch on interface once again... You had some criticisms of Supreme Commander. Interface is one of those things that can make or break an RTS. I'm curious about what your design principles are as you're building this interface.
Mavor: Simplicity. Simplicity is the driving goal. And when I say "simplicity," I don't mean necessarily that it's easy. But it's non-complicated. Let me give you some examples. Units should basically do one thing well. If you tell a unit, hey, I want you to go and patrol, say... We're still going to do the shift-click thing where you can stack unit orders. But we want to have a standard set of interfaces for each unit. TA did this really well. You had the state button, which was like... Stay where you are, or stay where you are but fire, or fire at will. That's simple, and every unit consistently maps to that simplicity. You're not going to click on a unit and see 10 custom buttons on this unit that can do 10 different things.
With three-dimensional planets, with planets being spheres, are you worried at all about people getting disoriented as they move around these maps?
Mavor: Yeah, actually. So what we're doing in this game, the actual topology of these planets is not what it appears to be. I don't know if I want to say much more than that, but the actual flow of them, as you move around them, is much more like a rectangular wrapping battlefield than it is like an actual round planet. It looks like a planet, but it's not necessarily going to act like one.
I think that covers most of the questions I have. Is there something that you wanted to bring up that we haven't gotten to?
Mavor: Well, I think the elephant in the room here is... I'm not the guy that designed TA or designed SupCom. That was Chris . He should take full credit for that. I was a tech guy. I've been a tech guy for a long time. We have a lot of people here that worked on those games, but we're not Chris. I honestly don't know what his reaction to this is going to be.
Chris is a creative genius. Imitation is the sincerest form of flattery and all that. I have felt passionate enough about these kinds of games that I want to make another one. That's what it comes down to. It's not meant as a thing to thumb our nose at Chris or anything like that. I love Chris. I think he's a great guy who makes great games. It's just... I want to do my own version of this stuff.
All done? Come read our full preview, which includes some more screenshots of Planetary Annihilation.