GOPHERSPACE.DE - P H O X Y
gophering on hngopher.com
HN Gopher Feed (2017-11-13) - page 1 of 10
 
___________________________________________________________________
The strange science of Destiny 2's 'uniquely complicated' netcode
61 points by danso
http://www.pcgamer.com/the-strange-science-of-destiny-2s-uniquel...
___________________________________________________________________
 
zitterbewegung - 47 minutes ago
Let me get this straight.Destiny has peer to peer server hosting at
$60. Also it?s expansions are paid.Warframe (a similar game which
people have compared it to) is free to play with no $60 up front
charge and also has peer to peer server netcode. Nearly all of in
game content is locked behind you grinding for resources and
waiting for it to be built. Every expansion is also free.Why am I
paying for a game if it doesn?t have dedicated servers? And I?m
forming over money for the expansions ?
 
  GVIrish - 4 minutes ago
  > Why am I paying for a game if it doesn?t have dedicated
  servers?Uhh, because paying several hundred people for the 2-3
  years to make a AAA game costs money.Warframe is free-to-play and
  survives off microtransactions.  Cool, that's one business model.
  Destiny is a shrinkwrapped pay-up-front game with
  microtransactions on the side.  Another business model.The
  question of "why no dedicated servers" is a good one but it's
  separate from the actual business model.
 
  angersock - 40 minutes ago
  >Why am I paying for a game if it doesn?t have dedicated
  servers?Do you think the game code and artwork is donated gratis
  by developers and artists? Fuck no.
 
    wppick - 31 minutes ago
    >Why am I paying for a game if it doesn?t have dedicated
    servers?More like: so $ATVI can grow 550% in 5 years.
 
  djrogers - 33 minutes ago
  > Why am I paying for a game if it doesn?t have dedicated
  servers? And I?m forming over money for the expansions ?Becuse
  none of the people that work on the game want to work for free.
 
    Viper007Bond - 13 minutes ago
    Plenty of paid games have dedicated servers. All of the
    Battlefield titles for example.
 
  Jach - 31 minutes ago
  Warframe is just really good (except the latest expansion was
  rushed and had many bugs), it really has no business being F2P
  with how good it is.
 
  QAPereo - 25 minutes ago
  Games like Destiny, For Honor, that kind of game, are just pure
  money grabs. You get early beta quality releases with the full
  price game ending up being north of $160 even before whichever
  flavor of micro transactions are in that day. Currently, loot
  boxes are the way to fleece teenagers.The good news is that these
  games can be avoided, and should be avoided at all costs.
 
jackmott - 1 hours ago
A peer to peer online game is a game where people are going to
cheat a lot.  You don't have to inject code to cheat, you can
inject bits into the network stream.
 
  [deleted]
 
Grollicus - 1 hours ago
> To shield the game from hacks on PC, Bungie is preventing
applications from injecting code into the game.Whats different to
like every PC game since 19something? I mean thats a core component
of most anti cheat tools and copy protections? (And - spoiler alert
- they never really work)
 
  jackmott - 1 hours ago
  The difference is with an authoritative servers many types of
  cheats become impossible.  If the server doesn't broadcast the
  position of a player when it is impossible to see them, then the
  client can't hack to get their position.  The player cannot cause
  themselves to move faster than is possible, or grant themselves
  health or items.There are still types of cheats that remain
  possible, like aimbots. Nothing can be done about that.
 
    [deleted]
 
    Grollicus - 1 hours ago
    But with their offline mode they don't have authorative Servers
    here so some cheats are inherently possible. Only defense is do
    be as obscure as possible and hide the important bits in
    megabytes of fog, aka. a race against the popularity of the
    game.
 
[deleted]
 
[deleted]
 
politician - 1 hours ago
After reading the article, this netcode sounds like a complete
mess.  It's like Diablo 2, scaled up (contrast with Diablo 3).Maybe
they'll throw a blockchain in there to help with the obvious
hacking issues that will inevitably happen.
 
ranger207 - 33 minutes ago
This sounds a lot like Elite: Dangerous's netcode model, which is
pretty bad for many of the same reasons.
 
Kiro - 1 hours ago
> To shield the game from hacks on PC, Bungie is preventing
applications from injecting code into the game.What prevents
hackers from simply forging the network messages? How does loot,
gear, economy, levelling up and other hard incentives work when a
player is the host? Where's the authority?
 
  nichochar - 1 hours ago
  From what I understood from the article, it's not a pure P2P
  model, but a hybrid model, which makes it particularly
  interesting.I think the conclusion of the article is very good:
  the experience is great in "free play" (when you're running
  around a world and people appear/disappear), but (very) bad for
  doom/overwatch/csgo style PVP (= the crucible).
 
    fokinsean - 1 hours ago
    Yeah there's been many complaints of people getting DOS'd in
    pvp play because it is relatively easy to find the player's ip
    address.
 
      drawkbox - 32 minutes ago
      This happens in most PvP games though, eventually a hack is
      found that allows people to spam messages to win
      battles/races.  In racing games this happens alot to slow
      other players or force them to disconnect.  In Madden when it
      was on PC, it was very common for people to run something
      like this as they started to lose, forcing the other player
      to disconnect and losing reputation while they gave the
      victory to the player that didn't disconnect.  Spam
      disconnections are handled better now and incentive is mostly
      gone from that through game design and verification (a user
      spamming is booted in cheat detection systems), but you have
      to be aware of that in PvP especially real-time battles,
      sports or racing type games.
 
  failrate - 2 minutes ago
  The loot server is hosted, not player authoritative.
 
  drawkbox - 37 minutes ago
  The authority on these is validation against a server for
  verification when it comes to currency/purchasing and important
  events like leveling.  You might be able to fake one and get one
  through (though difficult without understanding the system due to
  crypto/signatures/timestamps/one-time use) but it will be
  reversed in most good online systems after verification or not
  allowed due to that. The server/data is still the authority on
  the simulation and progress of all actors.
 
everyone - 23 minutes ago
Very good analysis of this
here.https://www.youtube.com/watch?v=ks5lgcCFvvE
 
aerovistae - 2 hours ago
> 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?
 
  setr - 1 hours ago
  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 backgroundIE 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.
 
    elefanten - 1 hours ago
    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?
 
      datasage - 50 minutes ago
      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.
 
    Rotten194 - 1 hours ago
    Seamless singleplayer / multiplayer is an orthagonal problem to
    P2P network architectures, though. You can have one without the
    other.
 
  munchbunny - 1 hours 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?
 
    hobofan - 52 minutes ago
    Isn't that a problem Lord of the Rings Online (and I suspect
    also other games) have "solved" ~10 years ago?
 
      Impossible - 7 minutes ago
      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).
 
    SXX - 49 minutes ago
    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.
 
      lesdeuxmagots - 20 minutes ago
      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.
 
  kaosjester - 12 minutes ago
  > 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.
 
jgmmo - 20 minutes ago
The game limits multiplayer interaction big time. It's no more than
3 parties allowed in an instance at any one time, and that's where
a single person can count as a party. So really how tough does the
netcode be when you really just have instance based coop.PVP is
basically csgo in space. Not too many people on each team. Only 2
teams. Etc.As an aside, as a gamer - terribly displeased with
destiny 2. Huge dissappointment. Mostly because of it's multiplayer
and communicated drawbacks.
 
judge2020 - 1 hours ago
There's a nice video on destiny 2's netcode that I feel goes more
in-depth compared to this article.
https://www.youtube.com/watch?v=ks5lgcCFvvE
 
  gruez - 1 hours ago
  that's basically this article in video form.