|
How I fixed my Starcraft lag.
(If this is posted in the wrong section, please move it to the correct place)
DISCLAIMER: This is simply my version of how I fixed my lag. I am not responsible if you somehow manage to fuck up your internet or break your router/computer. FOLLOW THIS GUIDE AT YOUR OWN DISCRETION
Why this guide?
I know how incredibly frustrating and time consuming this problem is. So I decided to give everyone who has this problem, my take on how I fixed it. After spending evenings, nights and weekends on this problem, i was literally in tears when I finally solved it. I hope this guide can help some of you out there.
The situation :
I'm on a network with about 5-6 other people, behind a router. Some of our connections are wireless, some are not. Mine is wired. We only have 1 external(WAN) IP, which leads to the router having to split the incoming/outgoing data-stream through NAT(Network Address Translation). This means that every computer connected to the router on the network has an IP in the form of : 10.0.0.x (x being a distinct number between 2-255, with 1 being my router ip).
The problem :
Totally unplayable lag when playing in a game with more than 2 players(me + opponent).
The symptoms :
2 green bars on any player beside the host(if you're joining a game) In any game that you do join until start, the countdown will stop at 0, and freeze for 4-5 seconds before moving on to the next screen. This was a problem ONLY occurring in Starcraft.
The solution:
Wow... where to begin? I could probably write a whole book on how to become a master of Google-fu, and how I approached the problem from 100 different angles(which would probably be an interesting read by itself), but instead I'll just write down the recipe of the steps I belive helped solve the problem.(I say belive, because i tried so many things I'm not 100% sure which ones are essential and which ones that are redundant).
If you don't understand some of these steps, use Google, or simply ask.
TO ACCESS YOUR ROUTER CONFIGURATION TYPE IN YOUR ROUTER IP IN YOUR BROWSER. COMMON ROUTER IP'S ARE :
192.168.0.1 | 192.168.1.1 | 192.168.2.1 | 10.0.0.1
MY SYSTEM IS RUNNING WINDOWS XP PROFESSIONAL SP 2. MY GUIDE WILL REFLECT THAT. MY ROUTER IS A SPEEDTOUCH 585i v6 FROM ALCATEL/THOMSON
Ok here goes :
1: Disable any firewall you have installed on your computer and router, to make sure it doesn't interfere with anything. After you are have fixed the lag or you are finished with a session, you can turn them on again.(With ports forwarded)
2 : Set a static IP for yourself, and make sure that other on your network don't get assigned the same IP as you(by giving them static IP's as well or by other means). REMEMBER THAT YOUR DNS SHOULD NOT BE THE SAME AS YOUR DEFAULT GATEWAY. Here's a guide : http://portforward.com/networking/staticip.htm
3: Your router should support UPNP, turn it ON.
Guide by ruXxar @ www.teamliquid.net
4: Configure your router to forward port 6112 TCP AND UDP to your computer. 1 PORT CAN ONLY BE FORWARDED TO 1 IP ADRESS(computer) AT A TIME. Normally your router prevents you from doing this. I also forwarded ports : 4000 TCP/UDP and ports 6113-6119 TCP/UDP(for other blizzard games) Here's a guide : http://www.portforward.com/english/routers/port_forwarding/routerindex.htm
5: Go into services.msc by going : start->run->services.msc These are the services I set:
Application layer gateway : Deactivated. Universal Plug and Play Host Device : Automatic Windows Firewall / Internet Connection Sharing (ICS) : Automatic TCP/IP NetBIOS Helper : Automatic SSDP Discovery Service : Automatic
6 : Go to your network connections : start->control panel->network connections. Right click the module that connects to the internet and select properties.
Where it says «These elements are in use» I unchecked all but the Internet protocol(TCP/IP)
Click ok to save your settings.
7: Right click -> properties again.
This time click on «Internetprotocol(TCP/IP)» and select click properties.
Click advanced.
Click on the WINS tab.
Make sure that «Activate LMHOSTS» and «Activate NetBIOS over TCP/IP» are checked.
Click ok to save your settings.
8: Right click -> properties.
This time click the button «Configure» next to the name of your ethernet card. My ethernet card is a standard on-board card that came with my motherboard.
Realtek RTL8168/8111 PCI-E Gigabit Ethernet NIC
The features I'm discussing here may not be available on your card, or they may have different names.
Go to the Advanced tab.
This is what each of my setting are set to :
-802.1Q/1p VLAN Tagging : Disable -Flow Control : Enable -Jumbo Frame : Disable -Link Speed/Duplex Mode : 100Mbs/Full Duplex(always select Full Duplex if you pick another -speed) -Network address : INSERT YOUR ROUTER IP HERE(The same IP you used to get into the web GUI). Mine is 10.0.0.1 -Offload Checksum : Tx/Rx Checksum -Offload TCP_LargeSend : Enable -Wake On-Lan After Shutdown : Enable
9: EDIT : CRUCIAL STEP You may have have noticed that in your network connections there has appeared a new thing called «Gateway»-something. Right click on it and select properties. In the window that pops up select configuration. You will here have the ability to open ports. Make a new thing there called Starcraft(or whatever), type in your lan IP(your static IP) Select UDP, and type in 6112 in the 2 bottom left slots. Click ok and exit. If it has NOT appeared, right click on your lan and disconnect. then rightclick again and select connect.
Sometimes after fixing my lag i have the problem reappear again. What has happened is that the router has somehow deleted the open ports i entered in step 9, and I therefore have to redo the procedure.
NOW RESTART YOUR SYSTEM(AND POSSIBLY YOUR ROUTER TOO, THROUGH THE ROUTER SETUP PAGE).
REMEMBER THAT WHEN YOU TURN ON YOUR FIREWALLS AGAIN, YOU NEED TO ALLOW PORT 6112 UDP
|
Thanks a lot! I also lag a lot when in a game with more then 2 people. I'll try this fix now.
|
isnt it so that when u got a firewall blocking TCP UDP at ports 6112 - 6119 that you cant possibly even connect to bnet even if u do u get 6 red or something. a thing u forgot also that saves alot of configuration is just go to router settings and enable DMZ. that saves alot of troubles my friend. I wouldnt recommend to anyone having DMZ on if you are browsing alot of different sites you havent visited before or if u dont know how to keep urself protected from trojans and viruses. I myself never used any firewalls or anti viruses because i simply play BW and browse TL net and some 5-6 other sites. and i use vista.
|
My friend has that exact router I believe and has the same problem. Thanks for the guide I'll show it to him.
|
I got a 2Wire 2701HG-G Gateway combined router/modem about 2 years ago and this caused my 70k/s torrent max speed to shoot up to 330k...and most of my other download speeds increased two fold..so in a sense i was mad happy.
however, this was around the time that my Starcraft started an era of consistent lag..which until now i've had no choice but to adapt to. im saying around the time because im not exactly sure...there could be a gap of a few months. Also., my internet browsing is super fast and..i only play 1 other online game..(wolfenstein) which has never shown any real lag issues both before and after my starcraft lagging. My ISP has been DSL Sympatico for very long..like 5 years. My comp now is pretty much flawless. Bought early 2007, never any issues, clean HD, i got a 3.0 GHz intel P4. 1GB ram. i use by far the most powerful anti-virus out there. Zero viruses. Zero spywares/malwares and all that shit. All programs turned off when i play SC...except my anti-virus. ( Yes i tried uninstalling my antivirus and gaming without it but guess what..)
My Starcraft lag is now part of my life but it's still playable which is the reason that i have pretty much gave up on finding a solution after wasting tons of time and energy on the issue. (i posted a thread here but to no avail) it invariably follows the following pattern;
-Join or create a game (yes my ports are forwarded correctly). Everything seems smooth for a minute or 2
-I get recurrent little lags at every 3 or 4 minutes intervals. Lag means the units and everything else are moving slowly, close to blizzard's "slow" or "normal" speeds but i never see the countdown box. Each lag lasts for about 5 seconds, so it's enough to make me lose my concentration.
-The rest of the game runs relatively smoothly but im forced to turn LAN latency off otherwise the intervals stay the same but lags can go from 5 to say 7 or 8 seconds. My iccup is done at B.net's Low latency...and that's annoying cuz some users just won't play me. Sometimes i turn LAN on but not too often..
This lag is always there with. Out of 100 games, maybe 1 will be totally lag free. The rest of the time, its as described above.
If you help me solve that you're my Hero. My favorite Viking , my Norwegian God.
|
On January 27 2009 19:13 ffswowsucks wrote: isnt it so that when u got a firewall blocking TCP UDP at ports 6112 - 6119 that you cant possibly even connect to bnet even if u do u get 6 red or something. a thing u forgot also that saves alot of configuration is just go to router settings and enable DMZ. that saves alot of troubles my friend. I wouldnt recommend to anyone having DMZ on if you are browsing alot of different sites you havent visited before or if u dont know how to keep urself protected from trojans and viruses. I myself never used any firewalls or anti viruses because i simply play BW and browse TL net and some 5-6 other sites. and i use vista.
What you may not realize, is that your router has its own firewall, which already protects you from internet attacks. However, if you turn on DMZ, you turn off your router firewall, and are then FULLY exposed to the outside world(Unless you have a personal firewall on your system)
----
When you connect to battle.net you are connecting to a server.
That is different from when you join a game, because from that moment on you are connected to each and every one of the other players in the same game, in a peer-to-peer like setup :
When I was trying to find a solution, i realized that although the ports 6112 UDP(which is the only one needed for Starcraft), were forwarded in my router, they were NOT in actuality open when I ran Starcraft.
I used a port scanner (http://www.canyouseeme.org/) to test it out.
I then focused my effort on how to actually get these ports open, and that led to the steps i've listed above.
A router normally stops incoming Internet traffic from getting on your network, unless the traffic is in response to one of your computers or when using port forwarding. But instead of discarding the incoming traffic or using port forwarding, you can send incoming traffic to one computer on your network by establishing a "Default DMZ Server". (DMZ = humorous reference to "Demilitarized Zone".) This avoids you having to figure out what ports an Internet application wants — by throwing all ports open for that computer.
For regular network operation, NETGEAR recommends you do not use a DMZ. A computer with DMZ loses firewall protection, and is exposed to exploits from the Internet. If compromised, your own computer can attack the rest your network. Instead of DMZ, use port forwarding, as described in How is Port Forwarding Configured?
However, the DMZ server feature is helpful: When you have a problem connecting to an Internet service. Setting up a DMZ will determine whether a closed port is responsible for the problem. With some online games and videoconferencing applications that are incompatible with NAT.
P.S : I don't use any firewall or anti-virus programs on my computer either
source : http://kbserver.netgear.com/kb_web_files/n101146.asp
|
when I set up a static IP and make sure everything is in order (followed port forward) I cant get on the internet or anything and go no connection period. Any ideas? I FOLLOWED EVERYTHING. DNS/Default gateway/IP etc and my ports are open.
|
On January 27 2009 23:14 Sadist wrote: when I set up a static IP and make sure everything is in order (followed port forward) I cant get on the internet or anything and go no connection period. Any ideas? I FOLLOWED EVERYTHING. DNS/Default gateway/IP etc and my ports are open.
Are you sure you entered the correct DNS? sometimes the /ipconfig all will display your router ip(Default Gateway) as the DNS.
Have you checked your router gui page, and checked that noone else on your network has the same IP as you?
Have you tried rebooting your router from the router gui page?
If you have multiple people on the network, is the internet connection lost only for you, or for everyone on the network?
|
nice guide.
I think everyone who sits behind a router has this problem. So port 6112 has to be opened.
On my linksys i just entered setup and opened the port, done in 10minutes. And ofc turn of the windows firewall!
|
time ago, i fix my lag and solve the problem that make me impossible to host a game in bnet, hours in google and my eyes full of blood courtesy of my screen was the price that i pay for play sc:bw online, but in those 2 years of net fighting i still can play with only 1 of my pc`s at the time, i can host game now but the others pc's of my net can`t enter.... i'll try your guide but i dont believe in miracles.. sc:bw its my passion but the net configurations are my nightmares...
|
time ago, i fix my lag and solve the problem that make me impossible to host a game in bnet, hours in google and my eyes full of blood courtesy of my screen was the price that i pay for play sc:bw online, but in those 2 years of net fighting i still can play with only 1 of my pc`s at the time, i can host game now but the others pc's of my net can`t enter.... i'll try your guide but i dont believe in miracles.. sc:bw its my passion but the net configurations are my nightmares...
I'm not sure if I'm interpreting what you say correctly, but this guide is not for allowing more than one person behind the same router to play over the internet together. That is a different problem alltogether, which has to do with how your router does NAT between the different PCs on your network.
The NAT capabilities of Starcraft are very primitive(non-existant), which means that your router has a hard time trying to assign the incoming datastreams to the different PCs.
The thing is that Starcraft basically only utilizes port 6112, which means that if two computers(or more) are trying to play together, only one computer ends up getting the data.
The problem: Here's the deal, when two of you are in the same game, you both are comming from the same address...so when that information comes back and it's then up for the router to deliver that information to both of you, since you both are on the same WAN IP and same port number, the router doesnt know how to distuinguish between the two of you. So only one of you ends up getting the data, the other player is left in the dark (ie. gets NO information). Thus, the lag...
The solution: NAT is simple. It basicly uses a port number to ID each computer behind the router so the router knows who to deliver the information to. You can think of this like WC3, going in the game settings and setting your port to 6114 (Computer A) and 6115 (Computer B) then all you have to do is tell the router, ok, if you see port 6114, you know that belongs to computer A, so forward the information there. Starcraft is a little more tricky than WC3, but it's simple:
Basicly, you give each IP address behind your router a SPECIAL # for a port (make up a nice high number like 64000-65535), and when you send packets from your network going to the WAN (Internet), you have the router change make it look like the packet came from the router. This way, the information comes back to the router. Now, all you have to do is change the port number so you can identify which computer sent the information. Then, once your router gets information that's on that speical port number, it knows which computer it's ment for...so all you have to do, is deliever it to that computer by chaning it's DESTINATION Address to match the local IP of your computer (ie. 192.168.1.1).
If that is your problem, you should check this link(advanced) :
http://www.bwhacks.com/forums/starcraft-broodwar-gaming/25758-how-play-sc-friends-behind-same-router-no-vpn-needed.html
|
had same problem, turned off firewalls, on both router + windows, enabled port forwarding for 6112 TCP, or trigger ports, w/e, they do same shit but u gotta restart router or settings dont work rite away.
gg lag.
Nice guide tho, covers EVERY option l)
|
I didn't even know that was possible. Thanks for the link.
|
On January 27 2009 19:13 ffswowsucks wrote: isnt it so that when u got a firewall blocking TCP UDP at ports 6112 - 6119 that you cant possibly even connect to bnet even if u do u get 6 red or something. a thing u forgot also that saves alot of configuration is just go to router settings and enable DMZ. that saves alot of troubles my friend. I wouldnt recommend to anyone having DMZ on if you are browsing alot of different sites you havent visited before or if u dont know how to keep urself protected from trojans and viruses. I myself never used any firewalls or anti viruses because i simply play BW and browse TL net and some 5-6 other sites. and i use vista.
You are also opened to the whole world after enabling DMZ
|
TL:DR
Here's a summary:
GET A FUCKING FIOS.
|
Followed every step in the guide. Didn't fix the issue. I can still only play with one other person. Anything beyond two players and I lag out. Internet seems to be running faster, though O_o
|
After having this problem reoccur to me after it being fixed, i realized that step 9 might actually be a crucial step, and have added some more info there. (Reapplying step 9 re-fixed it again)
|
On February 02 2009 09:11 ruXxar wrote: After having this problem reoccur to me after it being fixed, i realized that step 9 might actually be a crucial step, and have added some more info there. (Reapplying step 9 re-fixed it again)
That did it. I want to have your babies.
|
Sorry, but that guide is bullshit. 90% of the steps are unnecessary or even plain dangerous, and it doesn't fix the fact that 1:1 port mapping won't occur.
I haven't investigated it in much detail, but it would seem that simply setting the Game Data Port in HKEY_CURRENT_USER\Software\Battle.net\Configuration to a unique port per user and setting up the appropriate port forwards would be the correct fix.
|
5385 Posts
It would be nice, but I know from my own trial and error that 6112 (default) is all b.net uses and completely ignores the edited registry values
I say b.net and not starcraft because I tried with D2, War2, and D1 as well.
If you all just use hamachi that will work fine However then you can't pubbie
|
|
|
|