Jump to content
EN
Play

Forum

[Issue 6] What is Lag?


 Share

Recommended Posts

lag01.pnglag02.png

lag03.pnglag04.png


Hello, tankmen! It seems one can hardly go through a day of serious gaming without encountering a multitude of lags. Of course there’s nothing unique about having lags now - tanki players have always experienced the dreaded “zombie tanks”, falling through skyboxes, spinning turrets, and nonresponsive pickups. In fact, most, if not ALL online games supported by a server have experienced lag at some point in time. Well, what to do?

Before anyone gets any false preconceptions about this article’s content, please note that this is NOT meant to be a complete guide on the minute details of the cause of lag, nor a manual on how to completely FIX it. Rather, this article’s intention is to be an informative look at the general causes of lag and game mechanics, as well as a guide on some techniques and solutions to compensate for lag and poor performance. No prior knowledge is expected, though a basic idea of how online multiplayer games work is helpful. Anyhow, let’s get started.

What is Lag?

Formally defined, lag is a delay between a player’s actions and the server’s reaction. While a common cause of this is high latency, lag can also be a symptom of insufficient power in the player’s computer and/or in the server. Latency is a measure of the delay experienced by user; basically how “late” a reaction time is. While it can refer to a variety of things depending on its context, in online gaming, latency specifically refers to the hardware delay. In technical terms, if the “latency” of a system is high, its reaction time is low. Note the distinction.

In “tankman’s terms”, “lag” is the irritating delay in which you cannot pick up boxes on the playing field, enemy tanks are unresponsive to weapons, and tanks spin in circles and/or drive into walls or off the map. I’m sure that everyone is familiar with this. In addition to the occasional zombie tank, lags are also considered to be any FPS rate (frames per second) lower than that projected by your internet speed and processor’s power. This type of lag is usually on the client’s side (to be discussed later).

While lags generally occur in ANY multiplayer internet game, they only have a noticeable effect on live action games, called “twitch games”. Twitch is the term used for any game which relies on the player’s reaction time. Such games include FPS (first person shooter, not to be confused with “frames per second”), tetris and other simple reaction games, and TPS (third person shooter) like Tanki. On the other side of the coin, lags don’t really have an effect on turn based games, like online chess.

What Causes Lag? What to do?

Remember when I said that lags occur on any multiplayer internet game? Well, the reason why, is that every multiplayer game requires a server to support player-to-player interactions. On each side, the players give inputs to the server through their computers, and the server takes the data, crunches it, and sends an updated string of feedback to the users. For example, every time you press the spacebar to fire your weapon, your computer takes the input from your keyboard, and sends it over through your browser in a string of binary. Once the server has received the information, it automatically updates and sends an output back to your computer, which, in this case, shows that your gun has fired. Every cycle of sending and receiving input over the server is represented by a “frame”. When you look at your “frames per second”, or FPS (not first person shooter in this case), you know how fast your internet communication with the server is running, and how many cycles can be executed per second.

Now on a side note, just for clarity, I find it necessary for some novices to define exactly “what” a server is. The general usage of the term “server” refers to tanki itself, and while this form of usage is basically correct, it leaves out the important fact that the “server”, is NOT the actual internet page (tankionline.com), but actually a real, physical piece of hardware. In the context of computing, a server is an actual computer dedicated to the sole purpose of supporting a certain function, like tanki, in this instance. For example, if personal computers are like self sufficient bacteria (having all the necessary abilities to survive), then a server is like a neuron. If you’ve taken a basic biology or anatomy course on the human body, you must remember that neurons are EXTREMELY specialized. In fact, without the aid of supporting glial cells, they can’t even survive on their own. On the other hand, bacteria, while primitive and basic, have the ability to live life without any help or support. Using this analogy, a PC can run basic applications, but can’t really do anything big, like communicate and interact with multiple users while running a complex program. On the other hand, specialized servers devote all of their computing ability to running a very specific application, without any other nice, user friendly features. Typically, servers are stacked on a rack, and linked together for even more power, similar to neurons’ dendritic and axonal connections. Tanki currently has 25 servers, which are (this may need confirmation) physical machines located on a rack, sitting somewhere in Tanki’s headquarters.

shopping-guide-usv.jpg

This is a typical server configuration. Note the little grayish boxes sitting on the shelves.

Each box is a server, and they are linked together to form a "server rack". Tanki has 25 of these.

Getting back on topic, high latency is caused by some error on the part of the physical server, or a player’s computer. Which end the error occurs on can be discovered, depending on if all players experience lag, or only a few. If you see everyone spamming the chat in fury over a recent lag, then the problem is with the game server. On the other hand, if you’re the only one who’s lagged out, and while you were incapacitated, a couple of your flags were captured, then the problem is on your end. A lot of times, players blame ANY lag they experience on tanki. However, I’m sure they’d be interested to know that almost 50% of the lags (at least those that I experience) are actually caused on the client end. For every application that you run, your cpu has to run through each one every time it refreshes. To help speed things up if you experience lag which is caused on your end, close some applications in your task manager, and see if there is any improvement. This will lower the number of instructions your computer has to execute, and you will see your “cpu usage” will lower in your task manager (at least on windows).

To make this relevant, I find it necessary to address some issues which players have experienced over the past weeks since the new graphics update, which arrived in update 1.100. If you notice, in Tanki’s Video News Blog 15 (), Ivan Zykov, tanki’s art director, said that photo textures were eliminated in order to increase object’s resolution close up (0:46). While this has the benefit of making gameplay a bit more dynamic and, even perhaps more realistic, this increases the amount of data players’ computers have to process, despite the simplistic details of the new design. This is why global lags have been more common throughout the servers and on client computers. To compensate, it helps to exit any extraneous applications while playing, and to lower your screen resolution to 16 bit High Color, as opposed to the default 32 or 64 bit, depending on your system, of course.

To sum up, there are two culprits for lag. The first is a problem with the game server, located in Tanki's headquarters in Perm, Russia. The second is a problem with your machine. Lag on the client end generally originates from a slow computer or poor connection. A slow computer is usually the result of too many applications running at once, or simply an outdated cpu. A poor connection is the result of bad weather, your machine's distance from an internet router, or other networking deficiencies.

The way to solve such problems, is to lower your moniter resolution, get closer to a router if you're using a wireless connection, and/or close any running applications.

Edited by Hexed
  • Like 1

Share this post


Link to post
Share on other sites

Hello, doctor Mcblaster here to tell you about the disease called "Lag"

 

Lag is a horrible disease that effects players tanks, it causes rhythm though the tanks treads, turret, everything, causing a need for the tank to dance, some tanks are effected differently, some tanks lose control on being able to turn so they just keep moving forward. also time seems to delay for the tanks that get effected, some sort of unknown zone for these tanks? who knows...

 

 

:D

Share this post


Link to post
Share on other sites

I disagree, A slow computer will only show a lower FPS, Not a difference in delay. The delay will remain the same regardless of how slow your computer is. In other words.

 

Lag is caused by your internet connection, and low FPS is caused by your slow computer.

Edited by r_AdvocatusDiaboli0

Share this post


Link to post
Share on other sites

I disagree, A slow computer will only show a lower FPS, Not a difference in delay. The delay will remain the same regardless of how slow your computer is. In other words.

 

Lag is caused by your internet connection, and low FPS is caused by your slow computer.

i agree with you my brother always complains about him needing a new computer cuz hes getting internet lags. Edited by finlay27

Share this post


Link to post
Share on other sites

I disagree, A slow computer will only show a lower FPS, Not a difference in delay. The delay will remain the same regardless of how slow your computer is. In other words.

 

Lag is caused by your internet connection, and low FPS is caused by your slow computer.

 

Generally, games consist of a looped sequence of states, or "frames". During each frame, the game accepts user input, performs necessary calculations (AI, graphics etc.). When all processing is finished, the game will update the game state and produce an output, for example in the form of a new image on the screen and/or a packet to be sent to the server. The frequency at which frames are generated is often referred to as the frame rate.

The way I interpreted this was that 1) client accepts input, and does calculations, then 2) packet is sent to server, and after the game is updated, one frame is finished. Lag formally defined is "any delay between player action and action of the server", and so, in order for a packet to be sent to the server as an output, the client has to be able to process all the graphics, etc. So yes, a slow computer will make a low FPS, but the low FPS can itself be considered a "lag", as it meets all the criteria needed to be described with that word. You seem to be using "lag" slightly differently than I am.

Online multiplayer gaming lag: Online video games suffer lag because of communication latency (sending/receiving packets) and local processing deficiencies.

 

So, a low FPS is formally considered "lag". Local processing power in this context refers to the player's computer. A slow computer (a.k.a. local processing deficiencies) causes lag in online multiplayer gaming.

Edited by chriswu

Share this post


Link to post
Share on other sites

Maybe You should consider telling us which is the best browser for playing Tanki, because Tanki behaves a bit differently using differnet browsers. My computer is fast and internet connection even better but lags happen quite frequently ( as i like fast and light armoured tank and precision shooting it is annoying then my shots don't reach target but opponent can kill me easily). My main browser is currently Mozilla Nightly ver 19.0a1 but its much better with Tanki than Chrome or IE.

Share this post


Link to post
Share on other sites

cut

 

You quoted only part of the wikipedia page. The same section of the article later claims.

 

Perhaps the most common type of lag is caused by network performance problems. Losses, corruption or jitter

The lag that 99.99% of tanki users talk about (not counting the ones playing this game on a potato) is that ^

Edited by r_AdvocatusDiaboli0

Share this post


Link to post
Share on other sites

Well, you can't say for sure exactly what percent of users have lag caused by networking problems, but yes, that is certainly the most probable culprit for lag.

However, my point above was that a low FPS IS lag, because it's another form of delay between action and a response, where you seemed to indicate that a low FPS was different than latency.

Edited by chriswu

Share this post


Link to post
Share on other sites

Well, you can't say for sure exactly what percent of users have lag caused by networking problems, but yes, that is certainly the most probable culprit for lag.

However, my point above was that a low FPS IS lag, because it's another form of delay between action and a response, where you seemed to indicate that a low FPS was different than latency.

Lets do some math here, a computer processes your inputs per frame according to what you said. So, Even if someone is having 5 fps his computer is working on an amazing local delay of 200ms maximum. This is not counting the difference between these two things:

  1. The actual frames and inputs being processed by your CPU as opposed to
  2. The number of frames being seen by you because of the incompetence of the GPU to be on the same level as the CPU. (Most common cause of low FPS)

So round about everyone gets 20 fps in this game. That puts local processing at 20 times a second, aka, 50ms.

Now compare that to the delay between your local internet connection and Moscow and you'll start seeing the difference. I'm not saying that your computer has NO effect, I'm saying that it's effect is insanely overrated in your post.

Edited by r_AdvocatusDiaboli0

Share this post


Link to post
Share on other sites

kool, my understanding is that every frame consists of getting updates from the game server. Therefore, local processing power and internet connection are indistinguishable from one another. How do you explain the fact that slow computers like netbooks get really low FPS, if connection is the primary cause of lag (lag being the low FPS)?

 

Also, as you obviously know a lot about lag, it would be interesting for me and readers, if you could describe the difference between low fps and lag where your fps stays relatively unchanged, and tanks just drive off the map.

Edited by chriswu

Share this post


Link to post
Share on other sites

Those boxes are similar to most internet service towers in the USA, too. The servers restart 'cause they're programmed to do that every once in a while (I'm no insider, I just have a lot of computerized knowlege on this stuff).

Share this post


Link to post
Share on other sites

I'll answer you after I'm done with this

 

You're misunderstanding the difference. FPS has a visible effect on your "latency" "delay" or "ping" if it is in the noticeable range of your eyes and brain. Lag is something else.

 

Stuff happens in online games in 2 ways

  1. Client side stuff -You can actually see this happen, in front of your eyes.
  2. Server side stuff - You can't see this happen, but it happens even if your client is not online.

The server is independent of the client, It does not care if your client is online or not. If player X shoots player Y just when player X turns off his client, Player Y will still get a kill, regardless of player X's effort of denying it. Because there is always a short delay between your client closing and the server removing your tank from the game.

 

Lag

 

I live in Pakistan, I have a 300ms average delay to tankionline, Proof

That means that I can visually see the delay between these two things happening

  • Client side: Me killing someone with my shaft.
  • Server side: Client sends message to server that tank was shot.
  • Server side: Server sends message back to client that enemy tank exploded.
  • Client side: His tank exploding.

Now for someone sitting in Moscow, the delay between these things would be around 10 - 50 ms, Which means these two things will happen "instantly" because his eyes just can't notice the difference between them.

300ms is normal for me, 10 - 50 ms would be normal for that guy. So what is lag then?

 

Lag for me is basically when this delay becomes more than 300ms, I'm not talking 350 or 400, I'm talking 1k - 2k. When the server is literally taking seconds to respond to you. That is when you see tanks falling off the sides and turning around randomly. The server's connection to your computer has been broken for the time being.

.

What exactly is lag?

 

You shooting a guy and his tank not exploding at the "normal" delay for you. It can either never explode, or it can explode after a delay. During this time your client is simply speaking, NOT connected to the server. The connection between you and the server is either broken or delayed. So the common question would be:

.

Why don't I get "Connection closed by server" when this happens?

Because the client is simply "waiting" for a replay from the server.

 

 

Therefore, local processing power and internet connection are indistinguishable from one another. How do you explain the fact that slow computers like netbooks get really low FPS, if connection is the primary cause of lag (lag being the low FPS)?

You answered yourself, Connection is the primary cause of lag. What you are explaining is low FPS. If you're having low FPS how do you distinguish between connection delay and computer incompetence to begin with. For all we know the connection could be perfect and you're only getting 5 fps, or the connection could be "crappy" and you'll still be getting 5 fps.

 

If that's not enough, I could tell you to get the most expensive computer and plug it with a telephone wire to use dial-up internet. You'll have a worse experience than on the netbook while still having a constant 60 fps.

 

Is it still indistinguishable?

 

Also, as you obviously know a lot about lag, it would be interesting for me and readers, if you could describe the difference between low fps and lag where your fps stays relatively unchanged, and tanks just drive off the map.

 

What you mean by "tanks simply drive off the map" in computer language would be:

 

The server stops telling the client what to show on your screen, the client shows random stuff because that is how programming works

Ok maybe not random, It just shows what was happening just before the client disconnected. (Tank was moving towards wall, keeps moving even after server disconnected because server never said " tank stopped moving towards wall")

Edited by r_AdvocatusDiaboli0

Share this post


Link to post
Share on other sites

 Share

×
×
  • Create New...