Post by Xarious on Jan 8, 2017 18:40:08 GMT -5
*Note, this post is now kind of out of date with the introduction of EternalJK. I'm keeping it up here for reference, but please know that LU is not the only program that does this--the standard clientside ETJK comes with all these features included.
This is a long overdue post. Many people have trouble determining if someone is actually using LU or not, and it's time to give everyone a general idea of how it works, what it does, and how to spot it. Please note that this is for educational purposes and I am neither supporting nor condemning the use of this program, only explaining its functionality.
What is Lag Unlocker?
Lag Unlocker is a cvar unlocking tool that gives access to the cl_maxpackets, cl_packetdup, and cl_timenudge commands. It is banned by ESL, and is considered one of the cardinal sins of JKA. Generally speaking, no one who uses it wants to admit to it's use, because it's primary function is to allow the user to gain a significant advantage in terms of their connection. However, there are some groups of people who believe that since it's intended goals are to speed up connection, it should be allowed. There are also people who believe it should exist as a public tool.
How does it work?
It works by unlocking the cvars of the aforementioned settings, allowing you do exceed the in-built limits. For example, the limitation on cl_maxpackets is 100, and on cl_timenudge it is 30 and -30. With LU, you can set those indefinitely higher (or, more importantly for timenudge, indefinitely lower). This means that with LU running, I could have a cl_maxpackets value of 125FPS/125packets. For those of you who don't understand the relevance of FPS to the cl_maxpackets command, here's an explanation that's being referenced from the Network Commands section of the database. Simply put, your FPS needs to be divisible by your maxpackets, and it lets you have vastly more packets than you were capable of, especially if you're running at 200FPS. Some mods, like OpenJK, also unlock or decrease limitations on certain cvars such as packetdup or maxpackets, howeverLU remains the only cvar unlocker that includes cl_timenudge (EternalJK, the most popular clientside mod, includes timenudge as well now).
It also means that you could run timenudge on any negative value (-40, -50, -100, etc). You can refer to the Network Commands link again for a brief description of what it does, however the general idea is that the game is trying to predict what is going to happen when you use a lower timenudge value. As you can see here, that can sometimes have some weird side effects...
It is trying to predict the movements I'm using here (tapping WASD keys without going in any of those directions) and makes it appear as though I'm moving at increased speed.
In general though, timenudge can be used to artificially give someone lower ping by that interpolation. Their ping wont actually be lowered, but it will feel as though it is. The cl_maxpackets commands can be used to create a similar effect, to a lesser degree.
Ultimately, the goal of LU is to cheat the capped limits of the game so that the player can have an artificially faster connection than their opponents. As a side effect, this can cause oddities in otherwise set-in-stone game mechanics (for example, information the server has to interpret about swings may be slightly distorted by the effects of timenudge. Alternatively with increased maxpackets, the overall registry of hits may be increased, causing unusual blocks to occur).
How can I spot it?
Well, generally speaking, its can be hard to spot or prove (in fact, it can be impossible to prove with the proper settings). But usually, we break out something called a lagometer (specific details of which can be found here). The command for this is cg_lagometer 1, and it will allow you to view lag effects. But this doesn't just apply to yourself. If you spectate someone while your lagometer is on, you can view theirs. Keep in mind though, there is no definitive way to prove this because the number of variables is far too great. So take this with a grain of salt.
#1 Ordinary ping player
#2 High-ping player (Generally an EU player on a US server, or vice-versa)
#3 Player using Lag Unlocker for timenudge and maxpackets.
The stipulation here is that the lagometer can and will look different for the spectator than it will for the player. This is because of the discrepancy between incoming and outgoing packets. So, for example, if someone is using an increased cl_maxpacket value and some level of timenudge, it may appear as picture #1 on the player's screen, but to a spectator, it may show as picture #3. This is because the packets that are outgoing aren't factored into the player's ping. However, the server takes it in, and essentially reports that information to the spectators as well. Because the player's ping is "lower" from the extra packets being sent, it'll show on their lagometer as being lower from the spectator view. On the client's end that is using the timenudge, the upper section of the lagometer will show yellow spikes or even a solid yellow bar.
A general rule in JKA to live by: No one's lagometer is naturally flat lined. Every player has a green bar, unless they are otherwise using external programs to change that, or their ping is literally between 0 and 25. Even then, they will normally have some kind of green, however minimal it may be. However, keep in mind, lagometer is not a set way to prove LU use. A player with 20 ping and -30 timenudge may still reflect image #3. However, it is safe to say that a relatively high-pinger (such as someone with 150+ ping) who has absolutely no green bar, must be using LU in order to achieve that.
On the spectator side, make sure your settings do not cause a misrepresentation of the lagometer. Generally speaking, relatively standard settings will show an average lagometer. However, there are settings you can do as a spectator to greatly affect the look of the lagometer. For example, you can artificially make someone appear to have LU by setting your own timenudge to a high positive value.
This is because the amplification of positive timenudge stacks with the timenudge of the person you spectate when it is reflecting on the lagometer, due to the change in the rate you receive packets. For example, if the person you are spectating is using -30 timenudge, and you have positive +30 timenudge, the lagometer will reflect -60 timenudge value.
That's all for today! LagUnlocker is a very controversial topic, so feel free to post below if you think you have relevant information on it!
This is a long overdue post. Many people have trouble determining if someone is actually using LU or not, and it's time to give everyone a general idea of how it works, what it does, and how to spot it. Please note that this is for educational purposes and I am neither supporting nor condemning the use of this program, only explaining its functionality.
What is Lag Unlocker?
Lag Unlocker is a cvar unlocking tool that gives access to the cl_maxpackets, cl_packetdup, and cl_timenudge commands. It is banned by ESL, and is considered one of the cardinal sins of JKA. Generally speaking, no one who uses it wants to admit to it's use, because it's primary function is to allow the user to gain a significant advantage in terms of their connection. However, there are some groups of people who believe that since it's intended goals are to speed up connection, it should be allowed. There are also people who believe it should exist as a public tool.
How does it work?
It works by unlocking the cvars of the aforementioned settings, allowing you do exceed the in-built limits. For example, the limitation on cl_maxpackets is 100, and on cl_timenudge it is 30 and -30. With LU, you can set those indefinitely higher (or, more importantly for timenudge, indefinitely lower). This means that with LU running, I could have a cl_maxpackets value of 125FPS/125packets. For those of you who don't understand the relevance of FPS to the cl_maxpackets command, here's an explanation that's being referenced from the Network Commands section of the database. Simply put, your FPS needs to be divisible by your maxpackets, and it lets you have vastly more packets than you were capable of, especially if you're running at 200FPS. Some mods, like OpenJK, also unlock or decrease limitations on certain cvars such as packetdup or maxpackets, however
It also means that you could run timenudge on any negative value (-40, -50, -100, etc). You can refer to the Network Commands link again for a brief description of what it does, however the general idea is that the game is trying to predict what is going to happen when you use a lower timenudge value. As you can see here, that can sometimes have some weird side effects...
It is trying to predict the movements I'm using here (tapping WASD keys without going in any of those directions) and makes it appear as though I'm moving at increased speed.
In general though, timenudge can be used to artificially give someone lower ping by that interpolation. Their ping wont actually be lowered, but it will feel as though it is. The cl_maxpackets commands can be used to create a similar effect, to a lesser degree.
Ultimately, the goal of LU is to cheat the capped limits of the game so that the player can have an artificially faster connection than their opponents. As a side effect, this can cause oddities in otherwise set-in-stone game mechanics (for example, information the server has to interpret about swings may be slightly distorted by the effects of timenudge. Alternatively with increased maxpackets, the overall registry of hits may be increased, causing unusual blocks to occur).
How can I spot it?
Well, generally speaking, its can be hard to spot or prove (in fact, it can be impossible to prove with the proper settings). But usually, we break out something called a lagometer (specific details of which can be found here). The command for this is cg_lagometer 1, and it will allow you to view lag effects. But this doesn't just apply to yourself. If you spectate someone while your lagometer is on, you can view theirs. Keep in mind though, there is no definitive way to prove this because the number of variables is far too great. So take this with a grain of salt.
#1 Ordinary ping player
#2 High-ping player (Generally an EU player on a US server, or vice-versa)
#3 Player using Lag Unlocker for timenudge and maxpackets.
The stipulation here is that the lagometer can and will look different for the spectator than it will for the player. This is because of the discrepancy between incoming and outgoing packets. So, for example, if someone is using an increased cl_maxpacket value and some level of timenudge, it may appear as picture #1 on the player's screen, but to a spectator, it may show as picture #3. This is because the packets that are outgoing aren't factored into the player's ping. However, the server takes it in, and essentially reports that information to the spectators as well. Because the player's ping is "lower" from the extra packets being sent, it'll show on their lagometer as being lower from the spectator view. On the client's end that is using the timenudge, the upper section of the lagometer will show yellow spikes or even a solid yellow bar.
A general rule in JKA to live by: No one's lagometer is naturally flat lined. Every player has a green bar, unless they are otherwise using external programs to change that, or their ping is literally between 0 and 25. Even then, they will normally have some kind of green, however minimal it may be. However, keep in mind, lagometer is not a set way to prove LU use. A player with 20 ping and -30 timenudge may still reflect image #3. However, it is safe to say that a relatively high-pinger (such as someone with 150+ ping) who has absolutely no green bar, must be using LU in order to achieve that.
On the spectator side, make sure your settings do not cause a misrepresentation of the lagometer. Generally speaking, relatively standard settings will show an average lagometer. However, there are settings you can do as a spectator to greatly affect the look of the lagometer. For example, you can artificially make someone appear to have LU by setting your own timenudge to a high positive value.
This is because the amplification of positive timenudge stacks with the timenudge of the person you spectate when it is reflecting on the lagometer, due to the change in the rate you receive packets. For example, if the person you are spectating is using -30 timenudge, and you have positive +30 timenudge, the lagometer will reflect -60 timenudge value.
That's all for today! LagUnlocker is a very controversial topic, so feel free to post below if you think you have relevant information on it!