> How do you build a game that blurs the line between singleplayer and multiplayer, where players can meet others simply by hitting "play Destiny," without any traditional matchmaking and lobbies?
What? How can you blur the line? It's either online multiplayer or it isn't, there's not really an in-between. You can't "kind of" have other people connected to your game. They're either there or they're not.
> It's an enormously complicated problem, and Bungie solved it.
....how is this any different from normal multiplayer?? What's so enormously complicated about this problem compared to every other multiplayer game? Yeah, there's no matchmaking. Great. This is still essentially like all MMORPGs, isn't it? Except it skips the lobby and just sticks you straight into the world?
The article doesn't convey the complexity very well.
Destiny keeps PvP and PvE separate. For PvP, it's traditional PvP. But for PvE, there are multiple worlds made up of interconnected regions, but because of processing limitations (even if it's MMO, it's still an FPS), the sub-regions are individual instances. So you need seamless transitioning between regions, while having to find you a populated instance every time you cross a region boundary. Oftentimes you will be doing a 20-30 minute activity that has to cross multiple instance boundaries, so your actual quest state has to persist separately from the physics simulation. If you take their design of the game as a given, then yeah, that's a bit more complex than most MMORPG's.
It's not really about matchmaking. PvP has explicit matchmaking, and in PvE lagging hit registration is generally inconsequential because it's not a competition. It's more about the fact that Bungie tried to work around the problem above using P2P servers.
The problem arises when PvP is still handled in a P2P-ish way and you have hit registration problems. On a quick read, I'm not sure I fully understand it though, because if the physics server is dedicated, then why are there still hit registration problems?
Handling massive amount of players is always challenging, but there nothing unique about it. PlanetSide 2 exist for years and its able to maintain hundreds of players in same area just fine and more than 1200 per "continent" which built of tons of small zones that have almost perfect sync between them.
As for tracking character state and region instancing there tons of MMOs that doing it for years too.
Planetside 2 is exactly what this sort of reminded me of. In PS2, you can have over 1k players within an entire continent, which is a seamless quilt of many zones, each of which can have up to several hundred players (north of 250 is the most ive seen). The beauty of it being that there is no delineation between areas for players, but clearly the servers are somehow breaking down the continent in some way. So you can have a single battle raging across 2 adjacent areas with 96+ vs 96+, with the perception of being on a single battlefield.
You will always have to deal with transfer across cell boundaries - but BSP gives you a sensible mechanism to scale it besides "party level" or "whole group level".
I'm open to defense of the concept, or prototypes if someone can suggest something reasonable.
That's why I also mentioned the peer to peer part. They didn't have to do it peer to peer, but they did, so taking that at face value you already have a different set of constraints than most MMO's.
MMORPGs like Lord of the Rings Online and World of Warcraft as far more latency tolerant, because of cooldown based combat systems that are based more on ability usage and some light (distance\occlusion) positioning. Usually they are not as authoritative as shooters and don't have as many object interactions. So combat abilities and attacks, chat, economic and quest transactions are all run on the server with some minimal prediction, but movement and collision are all client side with minimal checks for cheating (speed\distance and maybe unreachable areas) on the server, instead of full physics and collision. Most MMOs are more like a traditional CRUD web application, with important operations backed by a relational database, while shooters are more like voice or video calls, a stream of packets with out of date state is dropped and ignored.
There are of course MMORPGs that break these rules and have more action oriented gameplay or lots of physics and player interaction, but they always make tradeoffs (heavy instancing to limit player interaction is common).
Planetside 2 (and maybe the original planetside) is a 1000 player per continent, ~250 player per `battle' shooter. It does it pretty well.
By 1000 players per continent, I mean they all share a physical space, can walk to eachother etc. By 250 players per battle I mean 250 player fighting inside a structure. All of those players are interacting (gunshots, grenades, vision).
At 250 player you start noticing some loading issues that seems to start somewhere around 100 players, but it certainly remains playable.
Speaking of latency and Lord of The Rings Online, I loved their support for players to play as a band with different instruments, with player supplied scores. By collecting the scores from everyone first the music is merged server-side and is played in sync.
They mean that the game avoids letting the player realize the distinction exists; they go in and out of multiplayer "mode", presumably based on areas or turns or something, and are none the wiser. All multiplayer/singleplayer scaffolding occurs occur solely in the background
IE the souls series, and its invader system.
[edit] just read the article properly, it looks like they really wanted it for is seamless transition between "p2p bubbles", so you probably enter singleplayer when waiting for the connection, and you've got a wifi-like connectivity problem (but due to virtual land movement).
So its not at all the issue of always-on multiplayer in general mmos; its more like guild wars "instances", and making the grouping automatic and no-felt-loading.
WoW started instancing content out in the world several expansions back. As far as I remember and know, people can seamlessly phase in and out of each other's instances. In fact, I think the made it work across realm servers.
So, it seems it's proven possible without this hybrid p2p model, which has a sharp performance downside for shooter pvp.
I don't understand the decision. Is there something more nuanced experience-wise that their system achieves? Or could it be something else, like an attempt to save on infrastructure costs?
WOW is instanced, but the instances are all hosted by Blizzard. Instances are basically a replication of the world state, and managed automatically depending on load. If you join a group, you will automatically switch to the instance those players are in.
In Destiny, some of the instances are hosted directly on the client. Depending where you are and what you are doing.
> How can you blur the line? It's either online multiplayer or it isn't, there's not really an in-between. You can't "kind of" have other people connected to your game. They're either there or they're not.
Dark Souls does precisely this in a fantastic way in two major mechanisms. The first is the shared player "graffiti", wherein players can write messages that are then propagated into others' games. The second is the shared "death ghosts', which play back a player's last moments before death in others' games as a ghost you can't interact with. These make the game feel like you're playing with others in a large world without having to actually put you in the same instance.
Not to mention phantoms, where you can see other players's ghostly images occasionally moving around the world.
Other subtle cross-over features exist too. In Dark Souls 1 you are able to hear other players ring a bell after defeating an early boss. A rare mob can also spawn in your world when a player dies with many souls (currency), or loses a powerful item.
It definitely does much to make the world feel less lonely.
> It's either online multiplayer or it isn't, there's not really an in-between
Except there is - have you played recent games like Watch_Dogs 1 or 2? Your single player gaming is interrupted/sprinkled in with online events. And it works really nicely sometimes. You'll go to start a single player mission, but someone is hacking you, so you have to stop them first.
I think a game that successfully blurred the line was Demons Souls and its descendants. You would see the ghostly outlines of players doing the same level as you, you could read and leave messages for other players, and you could summon or invade another persons game. Still despite all this, it had very much the feel of a singleplayer game (and could be played as such).
> How can you blur the line? It's either online multiplayer or it isn't.
I haven't played it myself, but "Journey" seemingly had multiplayer without the players even knowing it was. So while it IS multiplayer, the line definitely can be blurred.
What? How can you blur the line? It's either online multiplayer or it isn't, there's not really an in-between. You can't "kind of" have other people connected to your game. They're either there or they're not.
> It's an enormously complicated problem, and Bungie solved it.
....how is this any different from normal multiplayer?? What's so enormously complicated about this problem compared to every other multiplayer game? Yeah, there's no matchmaking. Great. This is still essentially like all MMORPGs, isn't it? Except it skips the lobby and just sticks you straight into the world?