Warcraft II Forum

Help & Support => Support Requests => Topic started by: willigetaname on November 09, 2017, 03:11:11 PM

Title: 1 second+ input delay issues
Post by: willigetaname on November 09, 2017, 03:11:11 PM
Like the title says, I am having much too much delay on any unit I try to control.

I don't have delay issues while in single player, but on multiplayer I have the 1 second delay even on low latency.

I have tried running my own private server to test this out myself(1-2ms). The issue still persists despite connecting directly to myself.

I have run through the port forwarding troubleshooting just in case it may be related. Forwarded ports 6112-6119 on both UDP/TCP. uPNP is on. Firewall is not blocking warcraft 2.

I've tried these on both Warcraft 2 Battlenet edition and the latest combat edition.

What exactly is the solution to this delay problem? It's bizarre. All I want to do is to have the ability of doing FFA with computer players(don't see option on single player custom campaign)  :(
Title: Re: 1 second+ input delay issues
Post by: willigetaname on November 12, 2017, 04:31:57 PM
uh bump..?

do you guys service requests around here?
Title: Re: 1 second+ input delay issues
Post by: iL on November 13, 2017, 05:56:11 AM
I don't have delay issues while in single player, but on multiplayer I have the 1 second delay even on low latency.
What's the result of /ping on the server when you in game?
What's the result of "ping server.war2.ru" in your computer command line?

Should be something like that:
<50ms - excellent latency
50-100ms - good
100-300 - quite normal
300-500 - bad
>500 - unplayable.
If command line ping shows bad latency, the only way is to change your internet connection i think.
Title: Re: 1 second+ input delay issues
Post by: Lambchops on November 13, 2017, 07:36:07 AM
What you are describing is lag. If it is not noticably lagging the game (interrupting/slowing down the game) then it is most likely regular packet loss, i.e. your ISP or some server along the route regularly dropping a certian % of the UDP traffic.

WC2 was originally written for the IPX network protocol in the '90s and was then ported to UDP for use on the internet.

The issue is that in modern terms UDP is generally used for lossy traffic such as video or VOIP streaming where loss of a given % of packets just results in a corresponding loss in audio/visual quality, and TCP is used for connections that require guaranteed delivery of packets.

Because of this some providers will routinely drop UDP packets as a way of shedding load. This is bad for WC2 and will often produce the exact symptons you are describing.

With due respect to iL, he has the luxury of playing from Europe. The /ping stats he quotes would no doubt be accurate when playing from there. Myself being in Australia I often have >500 ms ping and that can still be very responsive. From Europe a >500 ping would definately be highlighting a problem with the connection that would be causing lag. From Australia 400+ ping is not unusual and can still be excellent even with WC2 set for low latency.

My current connection (temporary problem) is AWFUL, however it still reports lower ping times than my previous ISP which was pretty good.

Unless it is a local routing issue with your LAN (which is unlikely) the solution is to stop the decemation of your UDP traffic. There are 2 ways of (possibly) achieving this.

1) Change to a different ISP - i.e. some cheap ISPs buy and on-sell bandwidth from other providers that is de-prioritized by the parent provider, and therefore much less reliable.

2) Encapsulate your UDP packets inside TCP packets by using a VPN. This way servers will not be able to identify it as "droppable" and MAY be far less likely interrupt it. Although adding the VPN layer actually increases latency in the connection, if it stops packet loss it can cause a dramatic improvement in lag.

It all depends on your geographical (and political!) location, your ISP and their infastructure and the individual characteristics of any VPN you may be using. You may have to experiment a bit to get the best results.

If you are technically minded there is an extended discussion on the WC2 network mechanics HERE (http://forum.war2.ru/index.php/topic,2664)


.... and I havn't even bothered mention that if you're using some overloaded WIFI with a bad signal and your mum surfing Facebook then stop bothering everyone and go play farmville  ;)






Title: Re: 1 second+ input delay issues
Post by: Lambchops on November 13, 2017, 07:50:25 AM
All I want to do is to have the ability of doing FFA with computer players(don't see option on single player custom campaign)

Oh.
Just noticed this line.

Do you mean without any other players in the game? Just you vs comps?

You can do this by:

- log in to the server
- [Create] game
- Select map, type a name and make game type melee [OK]
- Use the drop-downs to change a few of the players to "computer" and start

Once the game has started you should have zero lag.
At this point you can actually switch off you router and keep playing. You will get a message saying "Your connection to battle.net has been lost" but the game will continue, if there are no other people playing it is all happening on your local machine.

If you have any lag at this point it is an issue with your computer.
Title: Re: 1 second+ input delay issues
Post by: willigetaname on November 13, 2017, 06:17:33 PM
I don't have delay issues while in single player, but on multiplayer I have the 1 second delay even on low latency.

What's the result of /ping on the server when you in game?
What's the result of "ping server.war2.ru" in your computer command line?

Should be something like that:
<50ms - excellent latency
50-100ms - good
100-300 - quite normal
300-500 - bad
>500 - unplayable.
If command line ping shows bad latency, the only way is to change your internet connection i think.


30-31ms is what I normally get for cmd ping. However, when I'm on server it's around 250ms.I live in Canada, so I shouldn't be getting 30ms unless there's another server nearby me.

My internet connection is fine. I have a fiber connection that doesn't drop packets.

What you are describing is lag. If it is not noticably lagging the game (interrupting/slowing down the game) then it is most likely regular packet loss, i.e. your ISP or some server along the route regularly dropping a certian % of the UDP traffic.

WC2 was originally written for the IPX network protocol in the '90s and was then ported to UDP for use on the internet.

The issue is that in modern terms UDP is generally used for lossy traffic such as video or VOIP streaming where loss of a given % of packets just results in a corresponding loss in audio/visual quality, and TCP is used for connections that require guaranteed delivery of packets.

Because of this some providers will routinely drop UDP packets as a way of shedding load. This is bad for WC2 and will often produce the exact symptons you are describing.

With due respect to iL, he has the luxury of playing from Europe. The /ping stats he quotes would no doubt be accurate when playing from there. Myself being in Australia I often have >500 ms ping and that can still be very responsive. From Europe a >500 ping would definately be highlighting a problem with the connection that would be causing lag. From Australia 400+ ping is not unusual and can still be excellent even with WC2 set for low latency.

My current connection (temporary problem) is AWFUL, however it still reports lower ping times than my previous ISP which was pretty good.

Unless it is a local routing issue with your LAN (which is unlikely) the solution is to stop the decemation of your UDP traffic. There are 2 ways of (possibly) achieving this.

1) Change to a different ISP - i.e. some cheap ISPs buy and on-sell bandwidth from other providers that is de-prioritized by the parent provider, and therefore much less reliable.

2) Encapsulate your UDP packets inside TCP packets by using a VPN. This way servers will not be able to identify it as "droppable" and MAY be far less likely interrupt it. Although adding the VPN layer actually increases latency in the connection, if it stops packet loss it can cause a dramatic improvement in lag.

It all depends on your geographical (and political!) location, your ISP and their infastructure and the individual characteristics of any VPN you may be using. You may have to experiment a bit to get the best results.

If you are technically minded there is an extended discussion on the WC2 network mechanics HERE ([url]http://forum.war2.ru/index.php/topic,2664[/url])


.... and I havn't even bothered mention that if you're using some overloaded WIFI with a bad signal and your mum surfing Facebook then stop bothering everyone and go play farmville  ;)



Thanks for trying to educate me. I do understand how UDP works vs TCP already.

I can play games using UDP connection over to europe and australia already without packet loss on a different format(kaillera). So I shouldn't be getting these issues. I already thought that this wouldn't be an issue on warcraft 2 online because I'm not actively connecting to anyone else during a game I host.

My connection is extremely consistent and I am the only one using it. It is fiber and I am on ethernet: http://beta.speedtest.net/result/6791060448 (http://beta.speedtest.net/result/6791060448)

Like I said above, my ping when on war2.ru server is around 250ms.

My ISP is definitely not changing seeing as I don't drop packets on other platforms using UDP. VPN wouldn't solve this issue due to it being an internal delay put on when a network game is played.

All I want to do is to have the ability of doing FFA with computer players(don't see option on single player custom campaign)


Oh.
Just noticed this line.

Do you mean without any other players in the game? Just you vs comps?

You can do this by:

- log in to the server
- [Create] game
- Select map, type a name and make game type melee [OK]
- Use the drop-downs to change a few of the players to "computer" and start

Once the game has started you should have zero lag.
At this point you can actually switch off you router and keep playing. You will get a message saying "Your connection to battle.net has been lost" but the game will continue, if there are no other people playing it is all happening on your local machine.

If you have any lag at this point it is an issue with your computer.



Yes. I mean only with computers.

I am aware I can do the ffa game creation on server, and that's what I've been trying to do. Is there an alternate to this for single player? Doesn't seem like it.

I've timed how much delay I get offline and online. It's a negligible difference between the two(on low latency).:

offline single player: 0 delay
0ms(my test server): 0.8 of a second delay for an action to deploy
250ms(war2.ru): 0.82 of a second delay for an action to deploy


How exactly is this a problem with my computer? Seems like that's the go to if you don't know what the issue is.

Explain to me how this delay is possible on 0ms still.
Title: Re: 1 second+ input delay issues
Post by: iL on November 14, 2017, 09:04:03 AM
30-31ms is what I normally get for cmd ping. However, when I'm on server it's around 250ms.I live in Canada, so I shouldn't be getting 30ms unless there's another server nearby me.

My internet connection is fine. I have a fiber connection that doesn't drop packets.

That is strange, still no idea how to fix that...

I am aware I can do the ffa game creation on server, and that's what I've been trying to do. Is there an alternate to this for single player? Doesn't seem like it.

you can use offlinebattlenet from here: http://en.war2.ru/downloads/ (http://en.war2.ru/downloads/) to setup your local bnet on 127.0.0.1
Title: Re: 1 second+ input delay issues
Post by: easycompany on November 14, 2017, 09:33:09 AM
if u installed a ddraw...it may be the problem.im using i think the 2 version, 4v cpu lags me like hell! os win7.

offline single player: 0 delay
0ms(my test server): 0.8 of a second delay for an action to deploy
250ms(war2.ru): 0.82 of a second delay for an action to deploy

 :blank: wierd

lamb-".... and I havn't even bothered mention that if you're using some overloaded WIFI with a bad signal and your mum surfing Facebook then stop bothering everyone and go play farmville  ;)" loool fucking fb its gotta go under soon!
Title: Re: 1 second+ input delay issues
Post by: willigetaname on November 14, 2017, 09:27:31 PM
30-31ms is what I normally get for cmd ping. However, when I'm on server it's around 250ms.I live in Canada, so I shouldn't be getting 30ms unless there's another server nearby me.

My internet connection is fine. I have a fiber connection that doesn't drop packets.

That is strange, still no idea how to fix that...

I am aware I can do the ffa game creation on server, and that's what I've been trying to do. Is there an alternate to this for single player? Doesn't seem like it.

you can use offlinebattlenet from here: [url]http://en.war2.ru/downloads/[/url] ([url]http://en.war2.ru/downloads/[/url]) to setup your local bnet on 127.0.0.1


I have done the setup with offlinebattlenet already. I've tried with both my 127.0.0.1 address and 192.x.x.x private address. Same delayed result with both.

if u installed a ddraw...it may be the problem.im using i think the 2 version, 4v cpu lags me like hell! os win7.

offline single player: 0 delay
0ms(my test server): 0.8 of a second delay for an action to deploy
250ms(war2.ru): 0.82 of a second delay for an action to deploy

 :blank: wierd

lamb-".... and I havn't even bothered mention that if you're using some overloaded WIFI with a bad signal and your mum surfing Facebook then stop bothering everyone and go play farmville  ;)" loool fucking fb its gotta go under soon!


Which ddraw should I try? There seems to be 4 versions and I'm not sure where to place it.
Title: Re: 1 second+ input delay issues
Post by: iL on November 15, 2017, 03:06:24 AM
I have done the setup with offlinebattlenet already. I've tried with both my 127.0.0.1 address and 192.x.x.x private address. Same delayed result with both.
Ops! That means your problem is not related to network, is it?
Did you check your CPU? Maybe it's 100% loaded?
Which hardware and OS you have?
How many cores? War2 always uses 100% of 1 core.

Which ddraw should I try? There seems to be 4 versions and I'm not sure where to place it.
If you have such problems with performance, i'd say you to try to not use any draw. Drraw helps with graphics but includes additional layer of performance loss...
Title: Re: 1 second+ input delay issues
Post by: Lambchops on November 15, 2017, 07:58:32 AM
Yes. I mean only with computers.

I am aware I can do the ffa game creation on server, and that's what I've been trying to do. Is there an alternate to this for single player? Doesn't seem like it.


You can edit a map and change the controller from 'human' to 'computer' then load it in single player. IIRC the interface only lets you select then number of AI opponents, whereas with the multiplayer interface you can select 'fixed order' then choose exactly which slots you set to 'computer' abd what race each is, so it's a lot more flexable.


I've timed how much delay I get offline and online. It's a negligible difference between the two(on low latency).:

offline single player: 0 delay
0ms(my test server): 0.8 of a second delay for an action to deploy
250ms(war2.ru): 0.82 of a second delay for an action to deploy

How exactly is this a problem with my computer?


WC2 is a 100% peer-to-peer game. The server is a matchmaking/messaging service only. When a game is underway the communication is only between the client computers. The TCP connection is only used for server commands (messages that start with the '/' character) and reporting post-game results.

So if you're the only human player in the game, then it's a problem with your computer because that's the only place anything is happening. There is an idle TCP connection handshaking every now and again, but that has no effect whatsoever on gameplay, it's being done by your TCP drivers and wouldn't even amount to 0.01% of your CPU or network usage.

My internet connection is fine. I have a fiber connection that doesn't drop packets.


I am very happy that you are pleased with your fibre-optic connection.

You will notice I said "i.e. your ISP or some server along the route". The internet functions by each IP packet having an address attached to it. Your network adapter forwards this packet to your router which in turn forwards it to your ISP where the rules programmed into your ISP's routing table will then forward it on to the most appropriate (or perhaps even the cheapest!) server downstrean, which will in turn forward it to any number of other servers along the way before it finally reaches it's endpoint.

It does not matter if your connection is fibre-optic or a gold plated salad-fork jammed into a mains outlet - it only takes one server along the route to cause this effect. It happens quite commonly regardless of what your ISP's glossy brochure or any dinky-toy network app you have plugged in says. You can't know this because UDP doesn't report it. That is the fundamental difference between UDP and TCP.

         ...anyway based on your most recent post this isn't the main problem, at least.

VPN wouldn't solve this issue due to it being an internal delay put on when a network game is played.


As I stated in my post "Although adding the VPN layer actually increases latency in the connection, if it stops packet loss it can cause a dramatic improvement in lag". Some long term users have reported greatly improved connections after switching to VPNs, despite the overheads, and now routinely use VPN connections to play server games for this reason.

Seems like that's the go to if you don't know what the issue is.

Explain to me how this delay is possible on 0ms still.


I could guess, and will do shortly, but as you sound a bit sceptical, first try this:

1) Start a server game with just you and AI players.
2) Turn off your router

Now explain to me how it is NOT a problem with your computer.


    ..... Lamb waits patiently for some new guy to realise he should actually be paying attention     :critter: zzzZZZZZ


Ok Willie. Hi! I'm Lamby :) Tech support isn't my job, but I usually try to help if you pay attention and don't tell me I'm just making stuff up because I don't know what I'm talking about. Deal?.... KEWL  :D

If you have tried the standard fixes from the en.war2.ru site (ddraw etc.), and you aren't simply attempting to run WC2 on a system...maybe a VM... that doesn't have the processing power to run it (seems unlikely) then based on the information you are supplying, I would GUESS that it is related to either some firewall and/or anti-virus program that you have running or you have some messed up stuff going on with your network drivers. Perhaps it is related to Kaillera (which is basically a 15 year old kludgey hack), or it could be related to any one of the numerous backyard networking apps I suspect you may have at some time installed on your system... possibly even the one you are using to get this 0.8 second figure from. It could even be related to a rootkit/botnet malware of some type.

I really don't know, (and can't diagnose without looking at your system) but I do know that if it's happening with no other players in the game it is a problem with your system.    .... and an unusual problem at that - I have never heard of anyone else having this particular issue.

.... as a completely wild stab in the dark have you (or anyone else on your network) ever used or installed libPcap/WinPcap, tcpdump, Wireshark or anything else that forces a network adapter to operate in promiscious mode, or any other similar scullduggery?


Here's a bunch of random stuff that might be useful in your situation:

The PvPGN server will report your /ping as 0ms, before it has scheduled and completed the task of checking it. After you have been connected for a minute or two check again and you will get a more accurate /ping result.

The server /ping results are server->client->server roundtrip times and aren't necessarily related to gameplay because the game is all peer-to-peer and the server isn't part of the loop.

Normal network pinging such as via the DOS or unix 'ping' command is done using the ICMP protocol. Most servers handle ICMP traffic completely seperately to IP traffic so the results from pinging can be radically different from actual IP transmission speeds.

Internet speed testing sites such as speedtest.net and many other similar sites are quite often totally useless. This is not because there is anything inherantly wrong with the function of these sites, but because ISPs routinely give traffic to and from these sites the highest possible priority to make their service appear better than it is to gullible end users. It is not uncommon to have speed test sites report 3 to 10 times the actual service speed being supplied to the end user. I don't know if your ISP does this, but many do.

Uninstalling software that has installed custom drivers on your system will not necessarily remove the drivers of fix any mess the software may have made.

Have you tried changing to a random game port? (certianly if you have more than one client on the same LAN you must use different game ports).

As I understand it, Kaillera operates by blindly sending user-input to 1 or more remoter computer(s). I don't use it but under those circumstances I would guess it could be very hard to detect either packet loss or a <1 second delay.

The single player and multiplayer games actually use entirely different game engines internally, so even offline (i.e. just you and AI players) there is still different code running.

Much of the above information can be found HERE (http://forum.war2.ru/index.php/topic,2664)


Thanks for trying to educate me.


You're welcome.


I do understand how UDP works vs TCP already.

Awesome  ;D
Title: Re: 1 second+ input delay issues
Post by: BabyShark on November 15, 2017, 01:27:19 PM
Thanks for your sharing your expertise here, Lamby.
Title: Re: 1 second+ input delay issues
Post by: easycompany on November 15, 2017, 05:52:50 PM
new guy seems to know what your talking about.

i was thinking vpn it but dam that sucks :/ hope ya get it fixed.
Title: Re: 1 second+ input delay issues
Post by: Lambchops on November 16, 2017, 05:51:09 AM
Thanks for your sharing your expertise here, Lamby.

No problem. Thanks for noticing :)

i was thinking vpn it but dam that sucks

Yeah personally I have never had any success with VPNs either. In any case it won't help for offline games.

Title: Re: 1 second+ input delay issues
Post by: Lambchops on November 16, 2017, 06:16:02 AM
The speedtest thing is impressive if its accurate. Interestingly you are not the only player who uses Rogers cable.... but I don't talk out of school, you know  ;)
Title: Re: 1 second+ input delay issues
Post by: Szwagier on November 20, 2017, 06:56:55 AM
my friend got the same, it cant be problem internet connection cause he is playing sc, cs, dota2 and he havent got lags there, where speed is higher than w2 needs

ping only show your current ping when u are  joining server, it should change all the time ^^
Title: Re: 1 second+ input delay issues
Post by: Lambchops on November 20, 2017, 07:57:06 AM
my friend got the same, it cant be problem internet connection cause he is playing sc, cs, dota2 and he havent got lags there, where speed is higher than w2 needs

ping only show your current ping when u are  joining server, it should change all the time ^^

The whole thing is that server ping isn't relevant.

Your ping time to the server is not related to games, only your connection to other players matters... the server isn't part of the game.

If I am on Mars playing 1's with another guy on Mars we both have like 20 minute server ping times, but we could play each other with no lag. It  would take 20 minutes to /m each other though, because that goes via the server.


Moral: Server ping time != lag ...... BUT it can show up issues (like if a player is on Mars).
Title: Re: 1 second+ input delay issues
Post by: Szwagier on November 21, 2017, 12:26:17 PM
I know how it works anyway he watch  my stream and in his opinion i got his lag all the time, its Just w2 multimedia lag
Title: Re: 1 second+ input delay issues
Post by: easycompany on November 21, 2017, 07:37:00 PM
how are we going to play with people on mars :( fiber isnt fast enuff..but i read(could be bullsh*t) that quantum stuf if one matter does this the other related matter will do the same with no regards of distance ....
Title: Re: 1 second+ input delay issues
Post by: willigetaname on November 22, 2017, 01:29:01 PM
So I've thought about this a little bit. I figure the delay is the internal delay given by warcraft 2 netcode itself(low latency). I've had this delay happen on starcraft 1 on patch 1.16 and below as well.

I figure if warcraft 2 had a turnrate configuration like sc does, then I wouldn't be having delay issues.

Also, is there something similar to chaoslauncher for warcraft2? It had the option to play on LAN setting(better than low latency) for online play.
Title: Re: 1 second+ input delay issues
Post by: dJ_boSs on November 26, 2017, 11:39:51 PM
I just registered to the forum because I just found this topic that is also my problem about.

As Szwagier mentioned, the lag Im having during games is huge and I feel like I dont have any control on my units at all. About 1 seconds delay, makes this unplayable for me at all. Setting for lan latency often doesnt change anything for better. But from time to time it's ok, units are responding to my commands very fast and game is running very smooth, I can feel it, since I got 144 hz monitor (dont know if this matters in war2 :D). Sooo, its;s not like its impossible for me to play war2 without this huge delay. But i cant find the problem what is causing it. I am from Europe, servers are in Europe (?), so everything should be ok. I have 3 Internet connections, tried all of them, and the problem is with every of them. Just pinged server.war2.ru and here are the results :

Reply from 45.33.94.234: bytes=32 time=481ms TTL=52
Reply from 45.33.94.234: bytes=32 time=309ms TTL=52
Reply from 45.33.94.234: bytes=32 time=554ms TTL=52
Reply from 45.33.94.234: bytes=32 time=175ms TTL=52

Looking forward for your help! :D
Title: Re: 1 second+ input delay issues
Post by: XuRnT on November 27, 2017, 06:03:38 AM
Try cpu savior dj? Its in the downloads section of site. My last computer I had to run it or there wpuld be random pauses in my game sounds like what you guys are describing.
Title: Re: 1 second+ input delay issues
Post by: dJ_boSs on November 27, 2017, 11:31:18 AM
This is not CPU for sure since on single player game works great. I have just read whole thread and found Lambchops posts very interesting.

Quote
I could guess, and will do shortly, but as you sound a bit sceptical, first try this:

1) Start a server game with just you and AI players.
2) Turn off your router


Yeah I did this test, and lag was still there. I guess it's problem with my computer then. I tried this solution:

http://forum.worldoftanks.eu/index.php?/topic/398115-possible-fix-for-a-lot-of-users-lag-updated-tcp-affects-udp-packet-loss/ (http://forum.worldoftanks.eu/index.php?/topic/398115-possible-fix-for-a-lot-of-users-lag-updated-tcp-affects-udp-packet-loss/)

but seems it doesnt help at all :D Maybe problem is that I have about 250 active TCP connections? Lambchops do you have any ideas? :P

Also, VPN doesnt help for lag, even make it bigger, but only allows you to play without any conflicts with other players (which happens to me when I play on my mobile internet)
Title: Re: 1 second+ input delay issues
Post by: easycompany on November 27, 2017, 06:25:02 PM
ok dudes ..bnet isnt like the best..fastest u will lose peon in the gold and try like hell to stop them...kali ipx in bnet pkt:4 is instant..be cool if u could get that in  bnet..i dont even play fastest much because of it.

but yeah vs cpu lag is all on the user.
Title: Re: 1 second+ input delay issues
Post by: Lambchops on December 12, 2017, 01:44:48 PM
Lambchops do you have any ideas?

Hi DJ, sorry I just noticed this - didn't mean to ignore you.

Firstly I should say that I don't have any definitive solutions for you, because I don't have this problem, so I have no way of diagnosing it apart from the words people write here.

That being said I can try to guess at things and provide a little bit of information.

Here's some stuff that might provide food for thought:

 - WC2 used to run fine on a 90's 486. It's pretty much impossible to get a computer that doesn't have 100x enough power to run WC2 these days, unless you're shopping at a museum. So this problem, whatever it is, is a modern issue.

- Don't use the "CPU saviour" mod if you are trying to troubleshoot problems. Get the problems sorted out first then install it afterwards if you wish to use it.

 - The single player and multiplayer modes are internally very different, they use different code and memory structures (some things are the same, some are quite different). I'm actually amazed that after this long people havn't discovered a heap of gameplay glitches/differences between the two modes. It's testimony to the solid grass roots programming the blizzard guys did back then. So single player running fine is just demonstrating that your computer is well capable of running the game (as we know).... rendering the graphics and updating the internals is most of the work.... the network stuff isn't really increasing the load much at all.

 - In multiplayer mode the game obviously has a network component whereby other players become part of the loop. Using this exact setup, if you don't have any remote players in the game then there is no (relevant) external communication over the network - as can be demonstrated by the "switch of your router" test. However, the code that is running is still written to allow remote clients to be looped in. WC2 doesn't switch to single player mode, it is still running multiplayer, just with no remote players.

  - So because of this, and because of reports of this problem, I assume (without actually knowing - never devoted the time to investigate this scenario) that WC2 is still using your network to run the game, but its just being routed straight back to the local client without leaving the computer because there aren't any remote clients. Lots of programs use this form of behavior, it's generally referred to as "loopback". The dummy IPv4 address of 127.0.0.1 is reserved for loopback, also sometimes designated as "localhost". Anything you send to 127.0.0.1 is routed straight back to you by your TCP/IP drivers. Actually I doubt that WC2 would be sending anything to 127.0.0.1, it is no doubt designed to forward everything on to the next remote client and as in this case there are no remote clients is is probably explicitly sending information to you own local IP address.

So this is where I think this problem is manifesting - it's WC2 is sending UDP packets to itself by bouncing them off your network services. This should be virtually instantainious - like a ping time of 0.1ms or whatever. If it's not then SOMETHING is causing a delay to these packets.

So what is messing with it?.... how long is a piece of string? Could be anything. My first suspect for this kind of this is always security: Anti-virus programs, stateful firewalls, air-port security, bitchy door-people at nightclubs.... you know the type - they want to make everyone stand in a queue so they can make themselves feel important before they allow you past. This could mean 3rd party security programs of stuff that is built in to your OS. Perhaps the culprit doesn't like network traffic that is explicitly addressed to the local node instead of using the loopback address?

If it's not a security program/protocol then perhaps its a routing issue of some description. It could be that instead of just throwing the packets straight back to WC2, you network is actually forwarding them further into the network before they are retuned... your network adapter and its drivers... a LAN router... a virtual network device of some description... who knows - could be anything - and somewhere along this roundabout route things are being delayed before they are finally being returned. 

The other possibility is malware. If you have a rootkit on your computer it could be messing with the network of local services.

PLEASE NOTE: This is all just conjecture. It's a bunch of ideas and guesses based on assumed premises. I have never seen this problem myself and I have never seen your computer/OS/software/network.  This could all be total garbage and the problem could be something else entirely.

Reply from 45.33.94.234: bytes=32 time=481ms TTL=52
Reply from 45.33.94.234: bytes=32 time=309ms TTL=52
Reply from 45.33.94.234: bytes=32 time=554ms TTL=52
Reply from 45.33.94.234: bytes=32 time=175ms TTL=52

Like I say: server ping times aren't relevant for gameplay, only UDP times to the other clients, however I should mention that these ping times don't look good. Mainly because they are so inconsistant.

481 - down to 309 - up to 554 - down to 175 ... this much variation is not a good sign and would probably suggest network congestion somewhere. The first 3 also seem a bit slow if you are in Europe.

Here's what I get from my computer in Australia via my cellphone's data connection (only 2 bars right now!)
Code: [Select]
Reply from 45.33.94.234: bytes=32 time=263ms TTL=43
Reply from 45.33.94.234: bytes=32 time=254ms TTL=43
Reply from 45.33.94.234: bytes=32 time=253ms TTL=43
Reply from 45.33.94.234: bytes=32 time=253ms TTL=43

Usually the first time will be slightly slower as you can see here, but they should normally all be in the same ball park. Like I have said previously ping traffic uses different network protocols to UDP traffic, so your in game ping will usually be slower that a standard network ping.

Maybe problem is that I have about 250 active TCP connections?

This isn't ideal, but isn't necessarily a problem as long as your network hardware can cope. If it was me I would want to know WHY I had 250 TCP connections from my local puter. This is an unusually large amount for normal use. Is there is some reason why you have apps on your puter that need to be connected to 250 different remote locations? If there is a reason then fine, that's your call, but if there isn't I would be checking it out, this could possibly indicate malware/botnet type behavior.

I find Android phones tend to have higher numbers of open connections. They are a result of almost every installed app having a few connections (their home servers, google and amazon add servers etc.) plus a heap of built in google data mining and advertising stuff. I would expect to find modern Windows versions moving further in this direction too - IDK I try to keep it old school myself.

If you dont need all of these connections open, it certialy can't hurt to shut down as much of it as possible, but an idle TCP connection does not generate a very large amount of network traffic. Hovever if some of these connections are active they could possibly be causing all sorts of conjestion problems.

Anyway there's some stuff to think about, I hope some of it's helpful. Let me know if you have any other questions. You can PM me too just in case I don't notice your post, or if you wish to discuss personal info about your system/setup.

 :critter:




Title: Re: 1 second+ input delay issues
Post by: Lambchops on December 13, 2017, 01:48:58 AM
I tried this solution:

[url]http://forum.worldoftanks.eu/index.php?/topic/398115-possible-fix-for-a-lot-of-users-lag-updated-tcp-affects-udp-packet-loss/[/url] ([url]http://forum.worldoftanks.eu/index.php?/topic/398115-possible-fix-for-a-lot-of-users-lag-updated-tcp-affects-udp-packet-loss/[/url])

but seems it doesnt help at all


This fix is based on an interesting article. It is basically suggesting that the automatic reizing of buffers used to transmit network packets by the TCP services may be making them too small for large UDP packets, causing loss.

Apparantly the World of Tanks game designers have increased the size of UDP packets with their latest update which has made some of the packets larger than whatever the TCP service has set for the lower threshold for buffer size.

So when the game tries to trasmit large UDP packets, if the buffer has been decreased to a smaller size than the packet, it can't be transmitted.

This kind of arbitrary messing with stuff is annoying. It would appear to have appeared in later versions of windows - my own system doesn't have the referenced registry keys.

At a guess, it's probably not going to affect WC2 as it would be unlikely that such large packets would be being used, however this kind of interference is worth consideration.

I have to go out right now, but I might investigate this further later.