

By Xav de Matos, Sep 15, 2010 11:45am PDT Much like its upcoming third-person shooter Space Marine, Relic Entertainment has decided to adopt Steamworks for its upcoming Dawn of War 2: Retribution.





Click here to comment...


21 Threads | 58 Comments

  • This is the problem with GFWL: under it's model, a game client will have an "inside" and and "outside" port to connect to other clients. the inside port is static, in DoW2 it's 3074. The outside one is random. The game will listen on the inside port, but will tell other clients to send data to the outside port.

    This is not normal. Traditional PC games will listen for traffic on one static port that can be forwarded through a firewall without issue. Forwarding port 3074 on your firewall to the client should do the trick. This is also not NAT. Network address translation usually only applies to clients connecting to servers; the computer sends a packet to the destination port, and the Firewall will translate the addresses and the SOURCE port (just to keep track of it), without the program's knowledge.

    A traditional NAT firewall without special treatment for this will not know what to do. Forwarding 3074 and the other required ports will not make it work right, because your incoming traffic is not on 3074. IF you have a fancy commercial firewall, you can also do PORT Translation, and I've actually gotten this to work with DoW2, but I have to start up the game, then bring down the GFWL interface, see what random outside port it's picked, alt-tab out, and then manually create a rule to forward and port-translate those packets. I've also recently read that you can simulate this with a fancy firewall's SIP transformations settings. I suppose most gamers can just go buy a cheap home-use firewall that supports uPnP out of the box, but I have to have this fancy one for work so it's not an option for me.

    I am at a complete loss as to why exactly they chose to do this. I know it goes all the way back to DirectPlay, which was like Direct3D for networking, which never took off cuz it sucked so bad (I think Shogo used it). There are some advantages sort of. Users don't have to keep certain ports open, which means if you did a security scan on them it would look better. However, this is only safer on paper, if it's possible to root someone through a game bug, this won't help in the least. It also simplifies the procedures for running more then one client on the same network, but I would prefer that they let you customize your game port for that scenario.

    I typed this up quickly and I'm sure there are mistakes and confusing parts, but the point is, no matter what anyone tells you, GFWL (and XBL) are just stupid and terrible from a networking perspecive and brings pain and sorrow to a lot of people.