I know it's in every game (online) - and it's a tough problem. You have to build netcode to take into account latency and pings and drops etc.
I also know you guys play your game as well - and can see it getting worse and worse. Can you please at least mention it in an update that you are looking on how to best deal with lagswitchers and the lot?
Bad connections happen, but if it's the 'same' profile over and over and over - pretty obvious, especially when you can compare that to crucible scores/stats.
I enjoy crucible - but chasing ghosts and dying mysteriously from behind while I was actually shooting at that person is ruining it.
Peace
G
-
Edited by J1bber: 1/15/2015 6:11:20 PMThis is just a pet peeve and not in anyway directed at anyone, but its something I see over and over in the forums and it always makes me cringe for some reason... As a person who makes a living designing and implementing "netcode", I have never heard anyone refer to it as "netcode" before I started reading these forums. Now to get on with it, there is little that their "netcode" can do to deal with latency. All packet reception/transmission happens a the device driver layer which is below the application layer. Their physical hardware will receive packets off the network interface cards (Hardware IRQs) and these will most likely be forwarded to the application through sockets (Software IRQs). By this time the "lag" that you experience most likely has already taken place. Now it is possible, that their socket level code, or network code ("netcode"...ughh) is not effeicient for the type of hardware their servers run on (i.e. not taking advantage to the number of cores available see. Ahmdal's Law, see Gustavson's Law). But more probable is that the lag you are encountering is a result of the route the data packet takes from the client (you) to the server (Bungie). The internet is a collection of routers and gateways and a packet has to cross many of these to reach its destination. Each one, depending on its function (edge router, firewall, NAT, policy filters etc) will introduce some overhead or latency to the round trip time of the packet. So, depending on the network the packet had to travel over (ATT, Verizon) or the physical location on the client to the server (sorry Hawaii), this lag will be introduced well before Bungie can do a damn thing about it. Furthermore, for those people that are "lag-switchers"... unforutnately most gaming servers use the UDP protocol, because it is connection-less and there is little overhead to the packet transmission. So a person's packets get sent and processed quicker. The problem with this protocol is that it is an un-reliable protocol. Meaning that there is no error checking (besides an optional checksum in the datagram), and no re-sequencing, flow or congestion control, etc... Basically its packet in, packet out... Bungie's "net code" may do some minimal re-sequencing at the application layer, but any other user-space processing introduces more overhead... so probably you wouldn't want that. But there is little that can be done to accurately predict someone is lag-switching compared to a person who just has a connection with a lot of jitter. Since we do not want to kick someone for not having the greatest connection, then there is again little Bungie can do about this without affecting others connections at the same time, including yours.