http://nsae01.casimages.net/img/2014/03/18/140318010003902801.png
Setting Delay in Tennis Elbow 2013
In Tennis Elbow 2013 the player creating a match can choose between Auto-Delay and setting Delay manually:
- Auto-Delay sets Delay = Highest Ping + 17ms. Sometimes the Ping is high during the connection process, but stable during a match. This will then lead to Delay higher than needed for this match.
- Setting Delay manually gives you freedom, but one has to know what to do. This is the most recommended way of playing Tennis Elbow 2013, especially when players from far away countries have to play against each other.
With each opponent you can find a good delay value to play in. And the good delay value is determined by the quality of the connections. Let us distinguish two cases.
1. If both players have a stable connection (Ethernet or being very close to router when using WiFi, no other people using internet, no serious internet applications running), then you can set delay in the interval from 0.5 * Ping to Ping -- in some cases, there are no turtles at all (like 230ms ping at 167ms delay against some opponent), in some maybe very little turtles. The more you go to 0.5 * Ping with Delay, the more chances for turtles are there and the more you go to Delay = Ping the less chances for turtles are there.
2. If at least one player has an instable connection (varying ping with WiFi, having a bad router, other people using your internet while you are playing) then you should always put Delay > Ping. Depending on the ping variations, you can try Delay = Ping + x ms where x > 0 depends on the ping variation -- if the ping variation is small, you can choose a smaller value like x=17 or x=33, but with higher ping variations (and if you want to avoid turtles and thus animation glitches) you better put x=50 or x=67.
It is unfair having to go through case 2 at the start of a match due the opponent not making sure things are fine on his side.
1. Ping
What is Ping?
- Spoiler: show
How can I improve my ping without a new connection?
- Spoiler: show
What is "Interleaving Low" option?
- Spoiler: show
What kind of connection is recommended?
- Spoiler: show
2. Lag
When a game developer wants to translate an offline experience to an online one he has to deal with the consequence of Ping: Data containing information about your position, your movement, your actions (be it hitting a tennis ball in a tennis game or shooting a gun in some first person shooter) need time to get to your opponent(s)! Let us call these information "Game State".
If the game developer decides to do nothing, then you will see the actual effect of the time needed to send the "Game State" respectively receive it: You aim at coordinates (x,y,z), where you see your opponent's head in a first person shooter, but your opponent has actually moved on to (x+5,y+5,z+5) in the meantime, for example. Instead of a headshot you will miss your opponent.
In the early days of online gaming game developers did nothing in that regard: In the end the one with the fastest connection was the winner.
These days, there so-called "Prediction engines" are at work in online games. As the name says, they are used to predict an upcoming gamestate, so that the lag is compensated.
3. Delay in Tennis Elbow 2013
There is a Prediction engine at work in Tennis Elbow 2013 and it is mainly controlled by the "Delay" option. Let us quote from the Documentation:
The Delay is an internal latency which allows Tennis Elbow to run in parallel on your PC and your opponent's one. There's a aiming dead time which lasts half of the Delay, just before you hit the ball. During that time, the game considers you're pressing left (or right) if you were pressing left (or right) just before the start of that aiming dead time ; on the opposite, the game considers you're pressing nothing if you were pressing nothing just before the start of the dead time. Concretely, it means if you press left to aim to the left, and that you release left just before hitting the ball, your aiming won't come back to the center like when you're playing against the computer. So you need to prepare your aiming at the right time because you won't be able to fix an overaiming at the last instant, especially when you play with a high delay. Note that it's also the recommended way to do while playing against the computer, to have a consistent aiming.
Source: http://www.managames.com/tennis/doc/Tennis_Elbow-Tennis_Game.html#network (under "Game Creation")
Let's explain this in plain language:
1. Both games are running in the same way on both PCs.
2. If you don't release left/right before hitting the ball, then aiming is the same offline and online. This also applies to serving. If you have some weird aiming technique (be it groundstrokes or serve), where you release buttons earlier, then you will suffer from it online.
3. All shots based on tapping in the last instant (Counters, for example) have a different timing. With high delay you will see more safe shots when you try a last instant shot.
4. Delay does not influence movement because Delay only adds a deadtime for aiming and shot detection.
During that dead time, your input is literally dead. This dead time is used to send the opponent the "Game State" based on your input right before the dead time. For a consistently good prediction it is therefore necessary to have a stable ping:
- If your ping variates quite a bit, then the prediction can (and will) fail. This leads to animation glitches, that is the opponent will see something different than what you actually did, making it difficult for the opponent to read your game. Turtles are a sign of failed predictions, because turtles indicate that a Game State is taking more time than the game expected or is lost.
- If a Game State is not transferred at all (packet lost) then there will be freezes.