Finally, I have found a solution for us people having the problem of playing simultaneously Starcraft / Brood War on multiple computers (in a same game) using a single internet connection with no latency or choppy movements!
******THIS WORKS FOR PATCH 1.16.1 (as tested on July 16, 2009 AND again on November 12, 2009)
This solution is for ADVANCED to EXPERTS technically-savvy individuals only, and have been tested only with a Linksys WRT54G router with DD-WRT firmware installed. (Please do not attempt to install DD-WRT on your router if you do not have the knowledge to do so, as you may brick your router). Please DO NOT attempt to do anything below if you do not know what you are doing!!!
1) Remove any Port Forwarding rule on your router and make sure that all computers have their software firewall disabled;
2) You need to change the Network TCP/IP settings manually on each computer that you intend to play Starcraft / Brood War on as follows (this can be done by going to Network Connections, right-clicking on your Internet Connection and clicking on Properties, then scrolling down and double-clicking on Internet Protocol (TCP/IP)):
Each computer must have an IP Address with a different Subnet Mask.
Let's assume that the router has an IP Address of 192.168.1.1
3) You need to change the Port that Starcraft is using on Computer B.
To do this, open your registry editor "regedit" and go to your Starcraft registry key (in HKEY_CURRENT_USER\BATTLE.NET\Configuration\) and add a DWORD value, name it [Game Data Port] (without the brackets) and give it a value of 6113 (DECIMAL value, make sure you check that radio button). (Some computers might need to add it in HKEY_LOCAL_MACHINE\BATTLE.NET\Configuration\ and create the keys if they are not there (depends on Operating Systems))
4) You need to add a new NAT rule in the firewall of your router. To do this in DD-WRT, go to the Administration tab, then Commands and enter the rules below then click on SAVE FIREWALL.
In this example, 70.100.200.112 is the public IP address for the two people behind the NAT router (WAN IP Address). 192.168.1.129 is the IP address of one client machine (Computer A), and 192.168.1.193 is the IP address of the other client machine (Computer B). On the router, type these commands as root:
5) That's it! You're all set! Only problem is that you guys won't be able to create a game together, BUT IF YOU BOTH JOIN A GAME IT WILL WORK 100% with NO LAG OR CHOPPY! EVEN TRIED 4v4 with no problem whatsoever!!
6) You could add more computers this way, as long as they are not on the same subnet mask and port as the other ones you should be fine!
Examples of additional computers settings:
Computer C: IP Address: 192.168.1.225
Subnet Mask: 255.255.255.224
Gateway: 192.168.1.1
Preferred DNS Server: 192.168.1.1
Game Data Port: 6114 (add new DWORD in regedit)
Computer D: IP Address: 192.168.1.241
Subnet Mask: 255.255.255.240
Gateway: 192.168.1.1
Preferred DNS Server: 192.168.1.1
Game Data Port: 6115 (add new DWORD in regedit)
Then add the two additional IPTABLES rules above accordingly (change IPAddress and Ports) as follows:
Only thing is that sometimes your IP Address changes (more often if using DSL), so make sure that you also change the WAN IP Address in the IP_Tables above.. Only inconvenient to this fix.
GL HF~!!!
Cheers!
Jonathan aka Ass[eM]
Quebec, Canada
Some parts of this post were taken from an original solution from John Paul (funofmath.com) at the following link: http://www.funofmath.com/weblog/2007/04/starcraft-and-nat.html . However, since patch 1.16.1, John Paul's solution stopped working. I have made some additional research as well as many hours of trial and error to find a suitable solution. You may look at the bottom of John Paul's page for my comment and solution, which is essentially the same as this post.
[ Post edited by Ass[em] ]
Maged
USWest
1. Re: SC on bnet with 2+ Computers SAME LAN - F 07/17/2009 10:12:03 PM PDT
Awesome! I think we'll start using your post instead of this old link that we gave out:
http://www.gamethreat.net/forums/starcraft-gaming/25758-how-play-sc-friends-behind-same-router-no-vpn-needed.html
Ass[em]
USEast
2. Re: SC on bnet with 2+ Computers SAME LAN - F 07/18/2009 10:29:34 AM PDT
This works great. Using it on a WRT54G v8 running v24 SP2 .. (night build)
HOWEVER.. If you have a DHCP'd external address.. PPPoE especially, do NOT click save firewall.. DD-WRT restarts and thus you get a different IP, making your firewall rules obsolete and not apply anymore because your IP changed... just hit run commands button. Once it's applied, it's running the rules in the background so you can close out.. if you reboot your router, the rules are gone, but your IP will probably change anyway unless you're like charter in the USA which as long as you touch the IP once every like 12hrs it won't change.. Anyway, this won't apply to static, just DHCP. If you have static then a save firewall is appropriate
What I don't get is.. if I use the rule for computer 'B' in this example, but do NOT put a rule in for computer 'A' and i leave computer 'A' at 6112 as in the tutorial and move computer 'B' to 6113 via registry... then why can't i just forward port 6112 to computer 'A' and host games that computer 'B' can join? with the iptables rule, traffic from computer 'B' on port 6113 is goona head out on 64002 to the external interface. then it would come back in from the external and talk to computer 'A' on that port.. but talk to battlenet and other users on 6112..
At least this makes sense to me.. but it doesn't work..
Wonder if there's another method.. hmmmmmmmmmm
isn't networking fun?
-Pookumz
Cb-shot
USEast
4. Re: SC on bnet with 2+ Computers SAME LAN - F 12/21/2009 06:38:07 PM PST
Hi, we couldn't find any ''commands'' in administration tab. I have a linksys WRT610N. Do you think there is a way for this router too?
Also, there was a time where we had a D-link router. It lets us play in LAN. HOWEVER, we had to join somebody's game. We couldn't host by ourselves. (random, but might be useful, maybe?)
Thanks, and good job.
Spaniard
Europe
5. Re: SC on bnet with 2+ Computers SAME LAN - F 02/06/2010 04:54:40 AM PST
My setup: 2 computers, 1 router connected to the modem and out to the internet; wanting to join games on Battle.net without the horrible lag.
I'm still not having much luck as the problem I'm running into now is trying to get the second computer to find the default gateway on its side of the subnet. Incidentally, how do you guys set up Computer B's default gateway address so that you can get out to the internet and Battle.net if the default gateway is on Computer A's side of the subnet?
The only thing that I can really figure out is that I need a router to handle "Proxy-ARP" requests...or something like that...
Any thoughts that you guys have would be most appreciated...otherwise, I suppose I'll just have to wait for SC2 in about a month or so before I can battle with my buddies on Battle.net...