Lag, Network, and Server Issues
There are 3 separate issues that can cause somewhat similar bad experience, and people often mistake those and call them all lag.
Frame Rate[edit | edit source]
This one is personal and mostly irrelevant, lower the settings or get a better computer and you are doing fine. It is an issue on the consoles where you can't do either, both the hardware and the settings are more or less immutable, this is one of the reasons, as was confirmed on stream (and iirc, on reddit ama), why the planned 'raids' will be in the 10 people vicinity and they are not planning larger 25 players. In any case, this cause is extremely easy to confirm or handle, yet often mistaken for lag in when a lot of elements involved or graphic effects, like Smoke Bomb. Other non-graphical factors like combatlog can bring even a good computer it's knees and the effect is the same, similar to lag/rubberbanding, but it's not. The client requires a certain amount of memory (RAM) for processing visual effects and calculating formulas.
Lag[edit | edit source]
Latency, also known as lag, is the time and delay between client-server requests, usually measured in milliseconds (0.001 second).
Neverwinter has a performance monitor that uses a display via client chat. Using the command /netgraph 1 will display the client monitor in the lower right corner of the window, while ping and packet information is displayed on the lower left. The quality of the user's Internet connection as reported by the ping times to the Neverwinter server: a green spike means high latency and the player should expect various issues with delays between taking an action and seeing the result on the screen. Using the command /netgraph 0 will remove the display. The game uses Transmission Control Protocol (TCP) and not User Datagram Protocol (UDP) for data transfer, this has it's advantages, but in terms of the 'lag' experience it has plenty of disadvantages. One of these disadvantages is server load - Obviously the more things that happen, the more information the server / client inform each other, that creates more packets and more chance for packet loss, and lag. The assumption is that the game doesn't send a separate packet per action, but as usual in any game the stream (TCP) is per server update.
Probable Causes for Latency[edit | edit source]
The typical latency of an Internet connection also varies depending on its type. Type could consist of any or all of the following; fiber optic, coaxial cable, phone lines (DSL), or satellite (wireless). Even with an Internet Service Provider (ISP) promising high speed fiber optics, they cannot control other ISPs they communicate through to reach the final destination. Most issues, in this area, have no quick fixes nor can they be controlled by the user or host company (Cryptic).
- Spikes in Internet utilization during peak usage times of day often cause lag.
- Weather and other wireless interference, fixed wireless broadband, and other wireless Internet connections are particularly susceptible to signal interference from inclement weather conditions.
- Personal hardware such as an overloaded modem or router within the owners home. While modern computers are sufficiently powerful in most situations, they can slow down significantly, if too many applications are running simultaneously.
Server Load[edit | edit source]
Also known as the server "tick rate". This is the most important factor, and the cause of most network issues. When people activate powers, or load into instances. For example; the client sends "Activate Icy Terrain", the server needs to verify it's not on cool down, because the server shouldn't trust client data (this is done to avoid exploits and cheats), then calculate the distance of every mob in a given distance from the user. If the mob is in the distance, apply all the effects and the chain of effects (e.g. debuffs, skills, life steal) or everything that can be triggered.
This happens per mob, per skill, per player, and grows exponentially the more elements there are in that vicinity. This has nothing to do with the network or client computer, it has only to do with the server hardware, code optimization/complexity and input length or iterations. These calculation are done also in 'frames', it can't flow continuous, players send their action, the server calculates changes, sends results to the players about their current state.
- Somewhat simplified:
- player/s sends action/s
- server calculates effects
- server sends new state to all players.
This calculation is done many times per second, usually to create a smooth experience for players it's done at least 30 times per second, and better yet, 60 times per second and higher.
Now imagine there is a power that triggers a second power that triggers another power, and all done by 40 players, while you hold the move forward key;
- player/s sends action/s - a lot of players, so we have several actions in the same "window"
- server calculates effects - a lot of actions cause a lot of cascading effects, lets assume this takes half second.
- server sends new state to all players - The issue comes here, your client renders things, but the server now updates you a change that took half second (500 milliseconds) to calculate, eternity in terms of frame rate, and the same as playing at 2 FPS. While there is no lag, and you have top-notch computer that can render every effect at maximum quality at 100 FPS, you just rubberband like crazy back in time.
April 2019, Neverwinter Module 16 reduced the instance cap for Protector's Enclave from 40 to 20 players per instance. This area being a main hub never has battles. This may have been done to reduce lag during event quests.