Among all the reviews of Anthem, I found this one in kotaku is one of the few to think about how the game was affected by the culture and leadership of the studio producing it. Which is the angle which means most to our industry, and it got me thinking…what could Anthem have been like? Since I develop 3D navigation middleware, I’m thinking what could Anthem have been like with really cool flying companion NPCs? And why haven’t they done it?
Yes, I know players can fly in Anthem and there are some flying NPCs and lots of people really love it. But as Eric Kain points out, it’s the fact that you don’t get companion NPCs outside tutorials which makes Anthem less than it could be. Multiplayers are great and it can be fun going on missions with three random people, or even with some friends. But Eric is right that it’s just not the same as a single player RPG, where I can go on a flying mission with NPC companions, i.e. where I can play my game and when the experience is crafted around me. So many people want single player RPGs which treats the skies as a fully immersive playing spaces. So why don’t studios make more of these games?
Because it’s technically very, very hard. And as more time is put into developing the game, adding in flying NPCs becomes even harder. It’s essentially why a middleware like Mercuna 3D Navigation can exist: because it’s just too difficult a problem to bother solving for one game. Ok ok , I can hear you saying that there is a LOT more to companion NPCs than just navigation, and admittedly I only really know about the 3D navigation challenges, but simplifying games late on in development seems to be such a common issue, and for so many reasons including navigation.
The progress of game development can look like this: we want a really cool game that looks amazing with a compelling story, and maybe some flying would be neat too; so let’s get a vertical slice which gives the feel of the game; ok let’s start off the graphics etc. Wow this game looks good!…now let’s add those flying NPCs. And that’s when the AI people have to tell everyone else that all that gorgeous geometry has just made their job of making flying AI much, much harder and it’ll be a total time sink. And one of those ‘headaches’ is adding 3D navigation.
If you have tunnels or archways, trees or spires (essentially anything other than boring, open space) then navigation for flying agents can be very CPU intensive.Often too expensive. So in the middle of the project, you’re having discussions about whether to make the levels simpler, or having to stop the NPCs going near some of the geometry (pretty unhelpful if they’re meant to be with the player) or even dropping the whole NPC concept and going for a multiplayer. Which is what some people think Bioware did.
So for NPCs to find their way across a level and be able to go the same places as the player, you need a 3D pathfinding solution which you commit to being complex right at the start of development. One that covers the whole world without using too much memory or CPU. At Mercuna, we’ve solved it by using a 3D octree, so you only get detail where you need it. To make sure the NPCs can get moving as quickly as possible, we used asynchronous pathfinding and made it hierarchical to reduce CPU cost. And then a whole load of other methods to just get that NPC finding paths around all that lovely 3D geometry without taking up too much frame time.
But that’s only half the problem. If you’re flying right next to NPC companions they need to move in a natural way. Same with fighting enemies. So you need smooth turns (splines) around corners where they actually slow down in the turn like a normal player does and you need to be able to customisable movement styles so your birds move like birds and your drones move like drones.
So making Anthem as a single player RPG includes writing a full 3D navigation solution, including 3D pathfinding, movement, avoidance and steering. And then integrating it into the engine. Simple, right? Well it took us at Mercuna a couple of man years to do this as a middleware and we’re still developing it. So it’s easy to understand that in a studio with competing interests and project milestones, they end up having to drop the concept. Fans just wish that they hadn’t.