Frogboy Frogboy

SUPPORT: Solving Connectivity Problems

SUPPORT: Solving Connectivity Problems

Tips and Tricks

Most PC games are client/server. That is, someone creates a game and others join that game. The data then goes from you to the host (the server) and then back to the other players.  Sins of a Solar Empire is client/server.

In Demigod, it is peer-to-peer. This was necessary because it needed to have the least amount of latency possible since your moves are directly sent to the other players rather than to a server first.  Because the action in Demigod focuses a great deal on Melee in the third person (i.e. players can see their hits) a lot of traditional methods to mask latency aren't possible. Peer-to-peer reduces the problem of "lag".

The downside of peer-to-peer is that everyone has to be able to connect to each other. In a client server game, many people have heard someone say "I can join games but I can't host them."  In a peer-to-peer game, everyone is technically a host thus greatly increasing the challenge of connecting players.

The solution developed is known as CVP NAT, a new feature of Stardock's Impulse Reactor development library.

So what problems can people have?  Below are the most common issues:

 

  1. Windows may fail to create a local socket. There's a million reasons for this unfortunately and your options are to try to rejoin a game or try hosting the game instead. It's not terribly common but feels very common when it happens to you. It will be more common if you have an older router as we have learned that older consumer routers are more likely to be problematic when opening sockets.
     
  2. Your ISP is sending your messages with different IP addresses. This is common in Europe where people have DSL lines that have multiple IP and the router picks and chooses which IP to send things.  It can also happen for people who have multiple Internet connections going.  For instance, I have a Verizon 3G Internet connectiont that's always on. I also have a Comcast line on.  If I'm trying to play a game, turning one of these connections off will likely help.  At Stardock, we have a thornier issue -- we have 2 comcast lines in which our router picks the one with the most available bandwidth to send out a particular packet.  CVP NAT has been designed to deal with a lot of oddball issues like this but it's not infallible.
     
  3. Firewall. If youre firewall is blocking TCP or UDP packets, you won't be able to connect.
     
  4. Windows failed to configure a local socket.  This is another one of those annoying issues that can come up. It's similar to item #1.  The best way to reduce these kinds of problems is to use Skirmish or the Pantheon.  The "Custom Game" setup in Demigod is the most likely case this will come up since it requires multiple sockets to properly connect players.
TIP:
If you know what you're doing (and only if you know what you're doing) you can load a program that's in the bin directory of Demigod called ImpulseReactorOptions, set up the options there and then seperately go to your router and make sure those ports are port forwarding to the right machine.

To learn how to port forward, see this website: http://www.portforward.com/

To learn more about what ports to open see this document provided by the Monk (THANKS MONK!)

http://themonk.ca/Monk/Networking_and_DEMIGOD.pdf

 

815,430 views 331 replies
Reply #201 Top

Hey all

I'm having a ton of connection problems. It can work, but I fail to connect to about 50% of everyone, so it's really painful. From experimenting with friends, it seems pretty clear the connectivity problems aren't random. If I can connect with a guy, I always can & vice versa.

I'm behind a company non-UPnP NAT router sharing 1 public IP on a dual ADSL line and have no direct access to anything. I have, however, forwarded Monk's guide and the relevant bits of the Demigod manual to our network admin, who swears on his mother's grave everything is configured accordingly. For myself, I'm pretty confident AV and Firewall are configured properly, especially since it appears to make no difference whether neither, either or both are active.

Following the ShieldsUP! link, I get a "ping recieved" on port range 6100-6200 and port 16000, and all ports show as stealthed. I think I know what the former means, but I have no idea about the latter.

When things don't work out (and with 50% connect rate, that's like 90% of the time or something), Demigod simply reports I've "been kicked".

I've tried Game Ranger as well, but without luck so far. I don't know if a 50% connection failure rate is the reason since I don't know how to find the information. All I do know, is that Game Ranger reports a "Symmetric NAT error" evey time.

This, by the way, is all post-patch .053. Prior to that I couldn't connect to anyone at all.

Reply #202 Top

 

FYI,  If the ports are showing as "stealthed" then they will drop/reject etc. traffic in most cases.  Being "ping-able" is one thing....being open to receiving other traffic is another.

 

Also I'm not sure why your port 16000 is being tested.  The only other port (aside from the aforementioned range) should be UDP 6073 (for lobby connections-traffic).

 

The "symmetric NAT" error being reported by gameranger is indicative of the REAL issue here.

As I've said before, more important than "forwarding the ports" is RELAXING one's NAT-filtering.  In some cases NAT-filtering cannot be controlled, so forwarding traffic on the specified ports becomes the next best solution.

 

Your company firewall is probably not willing to relax their NAT-filtering / mapping level and I'm pretty sure, that even if he's allowing traffic in on the specified ports, he's not about to "forward" all incoming traffic on those ports, to only your PC (port-forwarding).

Suffice it to say that if Shields-UP is showing all ports as "STEALTHED" then that is your problem.  You are then still STRICT-NAT (as described in my GENERIC networking guide "Networking_for_the_Gamer_by_the_Monk.pdf") and will have the corresponding connection issues.

 

the Monk

Reply #203 Top

Hi Monk

 

Thanks for the explanation. I guess I'll have to confer with the network admin. Maybe I can bribe him into giving me the log-in details or something so I can ease the restrictions when I need to.

Would you mind trying to explain to me why the NAT setting matters? My (evidently mis-) understanding was it shouldn't for the purposes of multiplayer games, so now I'm feeling a bit confused. I tried to check the wiki, but... I'm afraid I'm none too fluent in technobabble.

EDIT: Port 16000 is used by Game Ranger, hence the inclusion. Also, I forgot to mention port 6073. In case you were wondering, it's the same as the rest.

Thanks again

Disconnected/Simsum

Reply #204 Top

As I pointed out above.... ;)

My more GENERIC networking guide:

Networking_for_the_Gamer

 

Explains how NAT-filtering affects gaming and gaming-connections in more detail.

Reply #205 Top

:blush:

But, but.. why would anyone change their address in the middle of a gaming session? I'm sorry if I'm being retarded, it just sounds really strange.

Reply #206 Top

 

Change their address?

I think you're reading the wrong thing....hehe

 

Please read the section regarding (in layman's terms) STRICT, MODERATE, and OPEN NAT-filtering and the various connection issues one will experience with each.

Reply #207 Top

Hi

I have followed monks Networking fo the gamer and still having problem opening my ports.

My network is  computer <=> router <=> modem <=> ASDL ... the modem is a speedstream 4200 which acts as router (lucky me!!)

I have open the ports on both and have turn off Upnp and firewalls. My computer firewall is setup for demigod.

Looked into relaxing the NAT but can't really find anything that says gamming mode,open NAT, or end point??

my router says i have a Dynamic ip, although a have set my  ipv4 to static (is this a problem and how do i fix it)

Downloaded pfportchecker and it still says i have port 6073 not open.

I am a complete noob at networking so it might be somthing really simple.

HELP!!!!

Reply #208 Top
Okay, I just opened 6000 up and it got further into the connection process. I take this to mean that 6000 is important. But now when I get to the connecting to players bit the game crashes. And my firewall logs show lots of connections on ports that the game shouldn't be using.
Reply #209 Top

Heres what I have done. Since the day I bought this game, I have not connected to a single match through demigods service in hundreds of tries. Not matter what I do, I cannot join a game.

 

Opened ports 6100-6200 UDP&TCP

Opened port 6073 UDP&TCP

Opened port 1600 for game ranger TCP&UDP

Turned off Router Firewall

Put the correct IP in the DMZ

Enabled ping to the WAN port

When using an online port checker such as yougetsignal.com/tools/open-ports/ it reports my ports as being closed, yet when I use a program such as PFPortchecker it reports the correct ports as being open.

So I have done all of this and I cannot connect to any games.

In game ranger, there is always just ONE person, ONE person that I cannot connect to (their name is in italics and comes up with 0 ping in the lobby) and therefore get kicked because everyone else can connect to this person and I can't.

I have played ONE online match through game ranger in a week after hundreds of connection attempts.

Reply #210 Top

I think there's a problem with Demigod's network code that requires a patch.  I paid for 2 copies of the game and can't play on Internet or LAN via the game's own multiplayer interface.  Yet, LAN play works with a 3rd party tool called GameRanger!  Yes it's absurd that I must use an internet tool simply to enable LAN play.

Here's what needs fixing: (1) I cannot see Demigod LAN games on my network, and therefore cannot play LAN.  The problem lies with Demigod since my other LAN games work. 

(2) Please fix the Internet log in issue.  The game should make clear EXACTLY what log-in credentials I should use to log in.

Reply #211 Top

hey,

Just wondering if anyone else having problems is using a Linksys router/gateway?

Monk,
I did the port forwarding exactly as you suggested. forwarding ports 6073, 6100-6200 and 16000, disabling Upnp. Thought there was something wrong with my dlink router/thompson modem setup and went to get myself a linksys adsl2+ gateway(WAG54G2) . Did the same setup to no results.

Dropped by my fren's place who is using Netgear gateway and am able to connect to games. So was wondering if its possible to be the router. Did not manage to find an option to relax NAT. Tried to disable NAT but that screws the whole internet up so do not think that is the problem.

Here is my network map:
My computer<=>Linksys ADSL2+ gateway<=>Internet

Thanks for the help.

Reply #212 Top

I have a rather bizarre issue.  I tried connecting to skirmish/pantheon/custom games for days, and no dice.  I once connected to one person.

So, as a last ditch effort, I hosted a game myself, and immediately 2 people joined.  My brain literally melted and started dripping out my nose.

But I noticed a disturbing trend.  In the connection info, even though they were in the lobby and chatting with me, it showed them as not connected.  And more, no on else ever joined.  Which is when I ran a few more tests and discovered that I could connect instantly to people, if they connected within the timeframe of the first person attempting to connect.  As in, if I host a game, and someone else starts to connect, and other people attempt to connect before his connection is finished, it works without flaw.

However, if someone attempts to connect after the first person has?  Not gonna happen.

As for my network setup, It is my computer >> ActionTec M1000 >> IntarwebZ.  It acts as a NAT, and there is no way to relax that.  I am, however, doing the correct port forwarding.  I've also tried as the DMZ.  It seems to be similar results either way.

Reply #213 Top

This will be the beginning of week 3 for me with no change, and still have yet to join a single game outside of Gameranger. Fantastic.

Reply #214 Top

My network looks like this: gaming computer <> ethernet switch <> FreeBSD router <> ISP

I think the firewall/NAT software on the FreeBSD router (pf) can only operate in NAT-strict mode, however I did manually forward the ports Demigod uses (6073,6112-6132). Shouldn't this make all incoming packets to those ports be forwarded to the backend machine regardless of which address or ports those packets were sent from, thus effectively bypassing the normal NAT filtering policy?

For the outgoing NAT I instructed the router to use "static-port" on the 6112-6132 range. This means that if the source port used by my backend machine is e.g. 6129, then after translating the packet to use my outside address, it will still use 6129 as source port. Some NAT/router equipment might translate not just the address but also the port when transforming in internal packet to an external packet. Depending on the network protocol used by Demigod/ImpulseReactor (i.e. does the application layer tell the lobby server which port clients should connect to) this might also be important.

Reply #215 Top

This is a silly setup if you have to forward ports and not just open ports.  I have alot of computers in my house on the same connection that all play DG.  So for one to play, I would have to forward the ports to that IP?  A game shouldn't take this much work to play.  I am pretty disappointed with Impulse Reactor.

Reply #216 Top

Quoting dustbeta, reply 15
This is a silly setup if you have to forward ports and not just open ports.  I have alot of computers in my house on the same connection that all play DG.  So for one to play, I would have to forward the ports to that IP?  A game shouldn't take this much work to play.  I am pretty disappointed with Impulse Reactor.

 

Sure but using the "ImpulseReactorOptions.exe" file you can specify a different 20+ port range for each of them.  Problem solved.

 

As far as "taking this much work to play"....I have this to say.  The next time you drive your family to the park/beach ask yourself the same question.   (of course in my case there actually is a park pretty much across the street....hehe ;P)

Reply #217 Top

Quoting Aprogas, reply 14
My network looks like this: gaming computer <> ethernet switch <> FreeBSD router <> ISP

I think the firewall/NAT software on the FreeBSD router (pf) can only operate in NAT-strict mode, however I did manually forward the ports Demigod uses (6073,6112-6132). Shouldn't this make all incoming packets to those ports be forwarded to the backend machine regardless of which address or ports those packets were sent from, thus effectively bypassing the normal NAT filtering policy?

For the outgoing NAT I instructed the router to use "static-port" on the 6112-6132 range. This means that if the source port used by my backend machine is e.g. 6129, then after translating the packet to use my outside address, it will still use 6129 as source port. Some NAT/router equipment might translate not just the address but also the port when transforming in internal packet to an external packet. Depending on the network protocol used by Demigod/ImpulseReactor (i.e. does the application layer tell the lobby server which port clients should connect to) this might also be important.

 

Aprogas,

Sounds like you've got everyone setup correctly, and yes I believe you are correct about the out-bound translation messing with the connections of some people.

Reply #218 Top

Quoting tazgecko, reply 7
Hi

I have followed monks Networking fo the gamer and still having problem opening my ports.

My network is  computer <=> router <=> modem <=> ASDL ... the modem is a speedstream 4200 which acts as router (lucky me!!)

I have open the ports on both and have turn off Upnp and firewalls. My computer firewall is setup for demigod.

Looked into relaxing the NAT but can't really find anything that says gamming mode,open NAT, or end point??

my router says i have a Dynamic ip, although a have set my  ipv4 to static (is this a problem and how do i fix it)

Downloaded pfportchecker and it still says i have port 6073 not open.

I am a complete noob at networking so it might be somthing really simple.

HELP!!!!

 

tazgecko,

For your setup you'll have to do one of two things:

1.  Place the WAN IP of your router into the DMZ on your modem and then make sure the proper ports are forwarded on router.

-or-

2.  Forward the specified ports from the modem to the router's WAN IP, and then forward them again from the router to the PC's internal IP.

 

Either way should get things working for you...

Reply #219 Top

Thanks monk for your help....

In the modem i have foward the ports to the router's wan ip,

i have forward the ports in the router to my ipv4 address (as ipconfig has told me the address).

still pfportchecker say the ports are not open!

 

Reply #220 Top

Resounding success!!

Friends, romans, demigods, lend me your ears.  I come to bury this issue, not praise my abilities.  The evil men do oft lives after them.  The good is oft interred with their bones.  But let this not be for Demigod and GPG.  The masses have told you this game was buggy, if it were so, it was a greivous fault.  And grievously has GPG answered for it.

However, I found the solution to my demigod game problems.

I use an actiontec m1000 router/dsl modem with QWEST, and tried everything I could think of to get my connection to get games to work; no dice.  So, as a last ditch effort, I sent transparent bridging on my modem, and used my old d-link router to log in via PPP (not a casading dual nat; i just turned my modem into a dumb modem.)  

I forwarded the correct ports, fired up the game... and connected almost instantly.

It was amazing.

 

In short, it appears that despite my best efforts, it was my router that was causing my problems.  When I busted out my d-link, everything worked beautifully.

Reply #221 Top

i also :

EXCEPTION_ACCESS_VIOLATION (0xc0000005) at address 0x77361b22
    attempted to read memory at 0x3e726579

 

bla bla bla..........

sometimes it works. 2x from 10 times

and it´s not possible for me to login to chat: ERROR closing link (name/ip) Ecsess Flood.....

everything works fine before the update 24.4. !!??  ..but now...

 

i tried tu protforward 6000 to 7000 then turned off avast/windows firewall/router firewall

nothing helps

Reply #222 Top

Quoting Hollow, reply 21
Try here:

http://www.grc.com/default.htm

Then clicking the ShieldsUp link from the "Hot Spots" section.

-HM
ShieldsUp! does not check for open ports. It searches for services behind open ports. To check if your ports are forwarded properly, use PFPortChecker for example.

Reply #223 Top

I may have stumbled upon something a while ago that might help a few players...
I've been playing supreme commander with a group of friends since its release, in demigod terms we play "custom" games amongst ourselves that are rather large by supcom standards, usually 6-8 players. For the longest time I could not connect to the weekly game... I tried everything, even plugging my computer directly into my modem after DMZing my machine still didn't solve the issue. Nothing helped. It was really frustrating... Especially since supcom is such a cool game. :)

It turns out my small town ISP had a global firewall setup on thier end. It wasn't something they advertised or told new customers about, I guess they figured that most of us hicks living in the middle of nowhere (Kanab, UT) could use an extra layer of protection. All it took was a phone call to dissable the firewall on my account and SupCom (and demigod) have been working great ever since.

It might be worth your time to contact your ISP if nothing seems to work, especially if its a smaller local type business... this sort of thing might be common.

Reply #224 Top

Monk, have you observed whether Demigod port requirements are properly announced via UPnP? Assuming the router is to spec and SPI is told to back off, is UPnP sufficient? I'm finding it very difficult to evaluate this on my own due to the intermittent problems Stardock is having.

Please DO be technical with your answer, if you don't mind and have the time.

 

Thank you!

Reply #225 Top

I was having the unhandled error 2 days ago, but it went away last night and I was able to 3 v 3 games. Here is what I did to resolve the issue. Your results may vary. I am running windows xp pro SP3 plus all current patches and the latest nvidia drivers.

First thing I did was upgrade the microcode on my router. (Ancient D-LINK DI-604) The most recent versions of the firmware fixed some QOS issues, so I installed it. (QOS is quality of service. Basically priortizing what packets get sent first and have higher priority)

The 2nd thing I did was uninstall windows live messenger. I did this because it came with the latest Microsoft patches and when I installed it I let it install some other free products. Messenger was abending trying to connect, so there were issues with it and my PC. WHen messenger is installed it adds a bunch of other products and I removed them too. Do a google search on unistalling windows messenger to get the name of the unistaller in add remove programs. It isnt messenger. I also noticed that it left an artifact in msconfig to start itself, even though it did not exist. So I went into the registry and removed that line as well.

 

After doing the above I played a game 4 people v 4 computer opponents on impulse. The game worked fine. The next game I played, was a 3 v 3 all humans and it worked fine as well. Once the game was finished and I tried to get back to the lobbby after looking at the score, my game locked up. This is hopefully an unrelated issue. This was my 2nd lockup. The other was in singleplayer.

 

I am launching the game by using the run option in impulse. I hope this helps some other people. The above could have been a coincidence.

It worked in dmz mode and not,  just defaults. The only other change was that I did not have my 2nd computer on the network when I played.