2 Replies Latest reply: Dec 20, 2011 8:55 PM by nuttin2say RSS

Understanding the 'Lag' issue, where Black Ops went wrong and what needs to happen for the next game.

So it's about that time of the year where the Treyarch devs get feedback from the commuity, what they're looking to improve on for the next installment.

 

The number one issue for me with Black Ops(and W@W) was this whole lag issue. Let's try and understand this issue further.

 

The community definition:

Now we are not game developers so we tend to gereralise when we describe these issues we see in game. Framerate drops, rubber banding, less that accurate killcams, and poor hit registration to name a few all tend to all get grouped together, we call this grouping 'Lag'.

 

We then say to the Treyarch team 'this game lags please fix it'. That's like me bringing my pet to the vet surgery and saying 'my pet's sick fix him up please'

Now if i gave symptoms and and brief description of what exactly is wrong with my pet it is likely that the vet will be able to do their job far more efficiently and effectively, see what i'm getting at??

Vahn himself stated this in a thread i read a while back and it makes sense, so i'll do my best to explain further.

 

Now onto the topic at hand, we'll start with framerate drops.

Typically the only time i notice this is when a napalm strike drops in and sometimes after a successfull host migration, both appear to fix themselves within a minute or so of the game running.

It's a problem, but for me it's not game breaking, just a tad annoying at times.

 

Rubber banding: A very rare occurence in my oppinion, typically the only time i have seen this is where the host of the game is dropping large ammounts of information i.e. everyone but the host is showing a 1 bar ping.

 

Killcams: Typical symptoms are watching a killcam that is either not accurate with what happened from my perspective or it being out of sync with what happened on my screen.

Now this next part is a question i guess, we've always been told that 'killcams are not an accurate representation', why is this so??

Now i'm not a game developer so my understanding is somewhat limited but as i understand it, killcam information is taken from the host's perspective, all desicisions i.e. who shot who first etc. are calculated my the server(host of the game), the host then sends that info to me so i can generate the killcam, therefore why is it not accurate??

 

Poor hit registration: A problem that has plagued Treyarch games past and present(IMO). Typically symptoms include: Me shooting some dude where on my screen my crosshairs/ironsights are on target yet i don't get a hitmarker.

Headshots not being recognised as such.

Shots not registering on anyone running/walking perpendicular to my line of sight(very common)

An in game example of these issues taken just last night from a couple of games include a point blank shot from the Olympia yielding just a hitmarker and not a kill, and four hitmarkers on the same guy using an M14(cross map WDM), statistically is that second example even possible?? I mean if i hit someone in the toe four times at max range how many shot's is it to kill using the M14, i was always lead to believe it was a 'two shot kill at any range'

 

Possible solutions: Just a few ideas i thing might help.

Host selection is your starting point, if i'm sitting in a lobby with a friend that has a solid fiber connection with oodles of bandwidth there is no reason why he shoud'nt be given host, so many times we have had to put up with unstable host's being picked when clearly there are better options available.

 

I presume the aim-assist is server based, i believe it should be client side based, again this is tied into the issues above but when i aim at someone i want to be helped to aim at where they are on my screen and not where the host deems them to be. (first thing i noticed when i played Black Ops for the first time, was it client side based in previous COD's??)

 

Crucial decisions like who shot who first could be calculated client side, then timestamped and sent onto the host?? If that's a bad idea(i read it was somewhere recently but can't remember where) maybe someone could explain why, thanks.

 

Lastly, you may or may not be trying to do too much at once, is it a coincidence that the COD games that have the most stats available to view either through in game menus or through Elite are 'laggy'??

Is theatre dragging everything down with it??

IMO: Playablity > Stats

 

This is not a rant thread i'm genuinely interested in solving what i believe is the biggest flaw in Black Ops, i've done my best to explain what it is that is wrong, if Vahn happens to read this and needs more detail i'll do my best to provide it.

Hopefully others that see the same thing i do whilst in game will post and add their input.

 

Cheers.

  • Re: Understanding the 'Lag' issue, where Black Ops went wrong and what needs to happen for the next game.

    Easy there people...easy now, i can't keep up with all of the responses!

     

    Did i imagine the hundreds of threads created about this very subject over the past 13 months?

    Maybe it was just me out of 20 million+ players that noticed it??

     

    Either way i created this as i did'nt want this issue to be lost in all of the other(less important IMO) stuff in the other general feedback threads because it's far too important for that.

     

    Weapon balance and knife balance would be so much easier to achieve if the networking was fixed, so whilst we argue and debate over what shade of orange we want our guns to have and just how sticky we want our sticky nades to be, maybe we can take a step back and address the real issues affecting the game.. hmm

     

    Just a thought, that is all.

    • Re: Understanding the 'Lag' issue, where Black Ops went wrong and what needs to happen for the next game.
      nuttin2say

      I think people are tired of the discussion.

       

      In any case, I'm not real clear on what you're trying to accomplish. All the things that you describe are symptoms of lag. Solve lag, solve those issues.

       

      You can't compensate for a drop in frame rate universally because in doing so it will affect what happens in those situations where lag compensation is not needed.

       

      Otherwise, what you are advocating in this discussion is double compensation. In such a situation, the game would have to detect that lag is occuring and compensate the entire sequence, including hit detection. This process already takes place and is called lag compensation.

       

      However, going beyond that and then compensating specifically for the firing and bullet landing sequence, aka hit detection, the game would then thus be double compensating. Every time you demanded the game compensate for something, the net affect doubles the amount of compensation. The end result is that with five symptoms of lag, each being compensated for, you'd would have scenarios where one player is literally lagging 20ms ... but able to land his death blow more than a full 220ms behind the other player.

       

      Obviously that would not make people happy.

       

      When you shoot someone and the game does not detect your shot, that means what you are seeing is taking place after what they other person saw. You can't shoot someone before they arrive at a location - how do you know, or how does the game know, where the player is actually going to go? Knowing that, who is lagging in that situation?

       

      I've argued for a long time that lag compensation is not the issue at stake here and others have also made the same arguments and have far greater experience and education in this realm than I do. I even have a fairly close relative that is a game designer with a master's degree in the subject. He, too, said lag compensation is not the issue.

       

      The actual issue is lag. Period. To make the game run smoothly and have minimal affect upon what the users see, lag compensation is going to adjust for a very small amount of lag. Lag of 1/2 a second or more, for example, is too great to compensate for because the players would easily see the results of the programming trick.

       

      Lag itself is not going to be a huge number. We're talking about differences between 20ms and 120ms. That looks like a huge difference - 20 vs 120. But in what you can actually see, that's just a tiny fraction of 1 full second. Lag of 1/4 to 1/2 second is going to cause a player to be kicked from the match - "Game lost due to connection loss."

       

      So why do people experience what they experience? There's a lot of reasons.

       

      The game requires less than a 1Mb connection. I think its around 500 or 600 Kb (and that is for peak transfer sequences. Most sequences are half that or less). Pretty much everyone has a 1Mb or larger connection. This confounds people even further. Most people now realize that ping is the true measure of internet speed.

       

      But what most people do not understand is that when you go to Speedtest.net and do a ping test, you're not getting a reflection of your in-game ping. Why?

       

      Because that ping test is to a local server, usually 50 miles away or less. So you will end up with a 19ms or 38ms ping. The problem is you're usually playing against someone more than 50 miles away. On Speedtest.net you can choose servers farther away. Try pinging to a server in Sydney, Australia or Tokyo, Japan and you'll see what I'm talking about. Now suddenly you have 200ms or 300ms ping.

       

      In addition to that, you also have "packet loss." The information sent from your console to another is sent in bursts called packets, for a lack of a better way of explaining it. The same "frame" or picture you see on the scree in 1/60th of a second is sent many  times. 100s, 1000s, I don't know. But it is sent a lot of times. If you have large packet loss, 100 packets lost, then you can see the problem. But if you have small packet loss, you should have a pretty smooth game. In any case, ping and UL/DL speed do not reflect the rate of packet loss.

       

      Another factor is another form of lag called latency. If you look at what the devs post from time to time, they categorize latency in the same category as lag because too many people don't know the difference. In fact, there is very little difference. Lag is overall loss of speed. Ping is the speed at which information travels. Well, there is an amount of time between the information entering your console and that information becoming what you see on the screen. The amount of time it takes for the information to thus be processed is called latency. All Xbox 360 consoles are going to have very close to the same latency so "lag" caused by  the processing process does not have to be compensated for. However, some people run their console through routers, some directly through modems. Two different setups, two different latency figures. Latency = lag.

       

      In addition, your local server may be of higher quality  than my local server. The difference in latency? = a source of lag.

       

      After all that, you have to understand that if you are playing  in Ohio and I'm on the West Coast, the connection may actually run through half a dozen or more servers, each producing lag/latency.

       

      The match-making side of the programming, another thing people don't understand, has not changed much since COD4:MW. Here's a list of when changes came and what those changes were -

       

      MW1 - the initial programming

       

      MW2 - lag detection. After more than one significant episode of lag, host migration chooses a different member of the lobby to be host. This was done strictly to combat lag switch users. The problem was that the 2nd best connection in the lobby may have had great ping but a really crappy router.

       

      BO - I only mention this because Treyarch pretty much told the community to use the locale only option for match searches. This not only ended up reducing complaints about lag among users that followed this advice, it laid the ground work for the next big change

       

      MW3 - Forced localized match-making. Upon release, however, users in remote areas where the next closest user is 100s of miles away literally could not join any match at all. The hot-fix removed forced localization. That was a bigger disaster. Now they are back to forced localization. However, they have also done something else different with host migration.

       

      The game will still choose a new host from within the lobby if significant lag occurs more than once. I am unclear as to whether what I say next has been implemented or if it is still being worked out, but this is what the intent is. Instead of finding the 2nd best ping in the lobby, the game first determines whether or not parties exist in the lobby. If they do, the party member with the best connection becomes a candidate to be the host. The game then also searches the rest of the lobby  to see which player's connection has the best hosting characteristics. It then decides which will be host and begins host migration.

       

      As far as I can tell, this has already been implemented but they are tweaking the hosting characteristics parameters. For example, they may try to migrate to the player that is most centralized of all the players in the lobby.

       

      In any case, from what I have seen the reduction of lag has been very good. In all previous COD titles, there was no telling if I'd be running with 2 bars or 4. After the latest update probably 80% or more of my games are running 4 bars. I have yet to see a single match where there was a player with less than 3 bars.

       

      It is in the matches where I have 3 bars that I still experience lag - but it is very hard to notice it (with my eyes, anyway). However, there is a pattern of my performance being worse in 3 bar matches than when in 4 bar matches. The difference is so minute, however, that I cannot say with certainty that it is lag that causes the weaker performance.

       

      In any case, what I've started doing is backing out of the lobby if I have two matches with only 3 bars in a row. Sometimes this works in getting me into a 4 bar lobby.

       

      Usually, though, it does not.

       

      What I've discovered is that at that point if I totally log off of the Xbox Live and log back on, usually after that I have 4 bar matches every time.

       

      In 4 bar matches I cannot see ANY symptoms of lag whatsoever.

       

      I did have one match where there was only two players with 3 bars and one of those two had two peculiar characteristics. First, he ended up being the second highest scoring player in the match while the top scorer was on his team. Second, during the match, his character would "skip" on the screen. He did not have free-flowing movement. The "skip" or gap in where he appeared on the screen was so fast at first I thought I had imagined it. But by mid-match there was no doubt this phenomenon was occuring.

       

      After being killed once by this guy I watched the kill cam, but did not notice anything unusual.

       

      I decided to hang around for a second match to see if what I suspected was taking place was actually taking place. However, the guy backed out of the lobby.

       

      Now. To the casual observer what I saw in that match is "typical" of bad IW or 3A programming.

       

      I won't report such a player because I have to have overwhelming evidence that such a player was cheating. One match does not qualify as overwhelming evidence.

       

      But there is not a doubt in my mind this guy was using a lag switch.

       

      Yes, it is still possible to use such devices to cheat with. For starters, he does not have to be the host to use a lag switch, contrary to popular belief. Second, the trick these guys use to fool the system is that they do not lag for as long as the amatuers used to do it back in MW1 and WaW days. The lag literally is 5 to 10 ms. Just long enough to be missed by a bullet or two ... just long enough for you to shoot someone 4 times with a MK14 and only land 2 of the needed 3 at-range shots.

       

      I am NOT saying that there is still wide use of lag switches because there definitely is not  wide use of them. The reason is that it is really hard for these guys to use them in a way that the game does not detect. But they are still out there. One of the biggest clues I've seen is that they pop into a lobby for a match then back out afterwards. They do this so that it minimizes the amount of time they are scrutinized by other players.

       

      The bottom line is this:

       

      You are NEVER going to get rid of lag 100%.

       

      I've been through hell and back with my internet connection, routers, the console settings and more. After all of that, I still cannot get a 4 bar connection with every game I throw in my console. Sometimes I get 4 bars, sometimes I don't. It never depends upon the game. It is always random.

       

      If, after restarting my console, I still cannot get 4 bars with a particular game, I either adjust for it in my game-play or stick in a different game and come back to this one at a later time.

       

      I know that does not resolve the issue. But hopefully it helps shed some light on it.

       

      For the absolute best explanations on this issue, do a search either here in Black Ops or over at MW3 for the username -

       

      maccabi

       

      That guy has done some serious, serious research on the issue.