Dauntless, the Behemoth-hunting multiplayer game from Phoenix Labs, launched to surprising fanfare back in May with the announcement of full crossplay support between PS4, Xbox One, and the Epic Game Store. When players set out to slay the game's giant fantasy creatures, they can play alongside people on the two other platforms, and rotate their account from platform to platform at ease.
As more developers gear up to pool players together no matter their platform of choice, Phoenix Labs head of marketing (and veteran production staff member) Nick Clifford and lead game designer Hunter Howe dropped by the GDC Twitch channel a few weeks ago for a chat about the ins and outs of developing Dauntless. Here are some highlights.
The following transcription has been edited for length and clarity.
The crossplay networking of Dauntless
Clifford: As soon as we basically had what we call our “vertical slice” experience of Dauntless - pick a weapon, fight a Behemoth, rinse repeat - one of the first things we did was get it off of running on a local machine here and get it running on servers online. I think it was either in 2014 or 2015…one of the first playtests we did was over the holiday break in December.
We set a goal upon ourselves that we were all going to leave the office, we were all going to go home to our families for a couple weeks, but we wanted to play the game. And we had to have things like your inventory, quest and progression, the different Behemoth hunts, all of it running on servers running online through cloud computing so that we could effectively do that and not have to be in the office.
So since early on, Dauntless has been a “live game,” even if it hasn’t been open access to the public in the early years. We use a combination of cloud services like Google and Amazon, you know AWS, to do things like matchmaking, player inventories, the game data itself, and progression. These are all kind of like workers running around in the background that are running on servers not stored inside our four walls so that we can offer the game effectively worldwide.
A limitation of having the “data center” is that everyone has to come to you. And it was important to us to go to the players. So we have servers in North America, South America, Western, Eastern Europe, Australia, strategically situated all over the world that no matter where you are you get the good connection to Dauntless and can play with your friends.
In terms of building and scaling I mean we had - and not in a bragging way - we had a lot of players show up in the first week, two weeks. We had a ton of players show up and really stress how we built and architected everything.
We had a lot of partners show up to figure out how we scale the game from where it was a couple months ago to the reality of millions of players today. We did a lot of bot testing and swarm testing to see “what happens if a million people hit the matchmaking API all at once?”
But in reality, like that can only get you so far. It’s not until you have real players doing real behavior against your game on live that you get a true sense of how the platform holds up. A lot of these times it’s not like a problem that you’ll see immediately; sometimes services don’t fall over gracefully, like instantly. It sometimes takes days and weeks for things to kind of unravel.
We had a war room situated in the office here and you can imagine the command center from 24. We had a lot of monitors with up-to-the second game health, so as soon as we saw the slightest indication that something was degrading, a swarm of engineers would hop on it and fix it as quickly as possible.
Howe: Just for the crossplay components alone, right - it’s insanely complicated when you think about something as simple as like a friends list. Yeah, you’ve got your list and you add your friends it's like “well what about how the PlayStation friends list works? How does that integrate with your friends list? What about all of these different platforms that handle it in different ways?”
They all have very strict guidelines they want us to follow to ensure quality for their platforms but they conflict sometimes, and they’re different from the way something might be architected so a lot of people had to spend a lot of time and super smart people tackling a really big problem - it’s super gratifying to see those pieces come together, but it even gets reflected in the UI needing to accommodate different presence on different platforms.
Or, you can’t show this icon because that’s against this compliance thing but you can show this icon so you need a proxy icon. The specific details of following all those rules and making it a good player experience…it is not to be underestimated, the effort that goes into making crossplay, at all.
There are absolute heroes on the team to pull that together and I’m continually in awe of those boxes they needed to check.
The philosophy behind Dauntless' launch
Clifford: I mean it was a lot of planning, honestly. We quite literally have a scrum team here at the studio called “ready for scale” and their mandate was to make sure our launch went off as smooth as possible.
That’s not to say we didn’t have the occasional bug show up, or the occasional outage that we had to jump on, but that team spent, and Hunter correct me if I’m wrong, but the better half of six months preparing for this moment. We had separate teams put together for crossplay specifically, separate teams together for console specifically. It’s been a work in progress since right around this time last year. As soon as we got the PC open beta out and into player hands, we took up the torch on console.
So careful planning, collaboration, it’s kind of cliche to say it but we spent a lot of time just preparing for the launch itself.
Howe: And philosophically, you need to - and I’ve heard some of my co-workers espouse this value - you don’t try to do so much of your planning such that nothing goes wrong. Because things will go wrong. You put so much of your focus on “how are we going to react when things do go wrong” because it absolutely happens.
And so if a pod falls over and a bunch of people get booted out to the main menu, how can we handle that elegantly? How can we be ready, how can we see that’s happening and spool up another pod to replace it?
It’s really a philosophical value set that those guys rallied behind as a way to approach the problem. Because you just can’t get everything right. You can’t predict all of the things that are going to happen, it’s impossible.