4 ms·
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
by munchbunny 9y ago
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?
- SXX 9y agoHandling 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.
- lesdeuxmagots 9y agoPlanetside 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.
- paulmd 9y agoWhy not divide the map into BSP tiles and thread AI processing/netcode on that granularity?
- always_good 9y agoThen what do you do at the boundaries? In their example, a single battle raging across adjacent areas.
- paulmd 9y agoYou 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.
- munchbunny 9y agoThat'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.
- hobofan 9y agoIsn't that a problem Lord of the Rings Online (and I suspect also other games) have "solved" ~10 years ago?
- Impossible 9y agoMMORPGs 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).
- rocqua 9y agoPlanetside 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.
- foobarian 9y agoSpeaking 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.