If you've played a lot of Destiny, you know that connectivity issues can be a real bummer. Many of the worst issues are thought to arise from Destiny's decentralised server arrangement, which leapfrogs partial hosting duties between different players' consoles. For Destiny 2, Bungie says they're changing things up.
As it stands, if one Destiny player has a lousy internet connection, it can cause weird issues for everyone around them. Laggy boss fights are bad, and teleporting "redbar" opponents in PvP are worse. You would think that each player would only be affected by his or her connection quality, but due to the peer-to-peer parts of Destiny's networking setup, that isn't quite how it works. (Note: I am not a networking expert, so all of this is just my general understanding.) The game moves hosting duties around behind the scenes, so if a player with a bad connection winds up as host, it can screw with everyone's experience. The flaws in the system aren't just annoying — they can be actively exploited by players to, say, freeze a boss in a vulnerable state or cheat in the competitive Crucible.
Hardcore Destiny players have long been of the opinion that Bungie should add dedicated servers for the sequel, which would centralise the game data on Bungie's own servers and reduce the wider impact of latency issues. At last week's Destiny 2 event, Bungie said they would not be adding dedicated servers, which disappointed a lot of people.
In yesterday's weekly update, however, they elaborated on Destiny 2's server situation with some happier news. Here's the full update from Destiny 2 engineering lead Matt Segur:
So why no dedicated servers?
Matt: Every activity in Destiny 2 is hosted by one of our servers. That means you will never again suffer a host migration during your Raid attempt or Trials match. This differs from Destiny 1, where these hosting duties were performed by player consoles and only script and mission logic ran in the data center. To understand the foundation on which we're building, check out this Destiny 1 presentation from GDC. Using the terms from this talk, in Destiny 2, both the Mission Host and Physics Host will run in our data centres.
Wait, so we do have dedicated servers?
Matt: We don't use that term, because in the gaming community, "dedicated servers" refers to pure client-server networking models. Destiny 2 uses a hybrid of client-server and peer-to-peer technology, just like Destiny 1. The server is authoritative over how the game progresses, and each player is authoritative over their own movement and abilities. This allows us to give players the feeling of immediacy in all their moving and shooting — no matter where they live and no matter whom they choose to play with.
Why peer-to-peer? Are we trying to save money?
Matt: Nope! We've invested heavily in new server infrastructure for Destiny 2, including using cloud servers for gameplay for the first time. We really believe this is the best model for all of Destiny 2's varied cooperative and competitive experiences. Engineering will always involve tradeoffs and cost-benefit analysis, but as a team we've got no regrets about the unique technology we've built for Destiny 2.
The GDC talk that Segur links to gets pretty technical in its back half, but this slide from the intro lays out the current Destiny 1 setup pretty clearly:
As those people play together in the game's shared open world, the "physics host" will hop from player to player, usually without anyone noticing. According to Segur, Destiny 2 will move all of that up to the worldserver, which will hopefully make things less inconsistent if one of the players has a bad connection.
We'll have to wait to see how this plays out in the actual game, but based on Segur's description, it really does sound like a significant and specific change to how Destiny shares data between servers and players. It's also another example of Bungie addressing a problem with a different solution from the one players envisioned. Here's hoping it's a change for the better.