As a French person I feel like it's my duty to explain strikes to you. - AdrienIer

Create an account  

 
Pitboss 18 IT and Tech Issues Thread

Novice and I need two people who know they have been able to connect simultaneously before, and who feel confident enough to do an adjustment to their hosts-file for testing novice's gamespy-server-emulator.
As the Americans learned so painfully in Earth's final century, free flow of information is the only safeguard against tyranny. The once-chained people whose leaders at last lose their grip on information flow will soon burst with freedom and vitality, but the free nation gradually constricting its grip on public discourse has begun its rapid slide into despotism. Beware of he who would deny you access to information, for in his heart he dreams himself your master. - Commissioner Pravin Lal, "U.N. Declaration of Rights"
Reply

I'm available.*

*In a "working from home" kind of availability, i.e., I can edit a host file and try to connect.

Played: Pitboss 18 - Kublai Khan of Germany Somalia | Pitboss 11 - De Gaulle of Byzantium | Pitboss 8 - Churchill of Portugal | PB7 - Mao of Native America | PBEM29 Greens - Mao of Babylon
Reply

These lines should be present in the hosts file:

Code:
127.0.0.1    motd.gamespy.com

84.216.80.162       civ4bts.natneg1.gamespy.com
82.116.84.39       civ4bts.natneg2.gamespy.com
82.116.84.39       civ4bts.natneg3.gamespy.com
84.216.80.162    civ4bts.available.gamespy.com

Keep in mind that you need Admin Rights to edit the hosts file, and on Win8/8.1 systems the hosts file won't appear. So basically what you do is that you find Notepad (in Win7 you find this in the start menu - on Win8 you can press Start and type "notepad" in the search field and it will appear in the list on the right), and then you hold down your left shift key and right click the shortcut, and select "Run as Administrator". When Notepad is open, you press the menu File and then click Open. In the field "File name" type this: "c:\windows\system32\drivers\etc\hosts" and click enter. It will open your hosts file, and you can copy/paste the above information into the file. Then click Ctrl+S and close the file (If you receive a dialogue saying it can't save the file you haven't properly opened notepad as administrator - try again following the instructions above).

NB! We have encountered one person where Windows ignored the hosts file altogether, which I am 99% certain is because of an Anti Virus program (in that case it was AVG Free). The hosts file is a popular place for domain hijacking, so some Anti Virus/Internet Security suites simply overrides the hosts file altogether for your protection. To test if your hosts file is working properly after you have modified it, please start a command prompt (press Win+R and type "cmd" and press enter) and type the following command: "ping civ4bts.natneg2.gamespy.com" - you should get ping timeouts, but it should attempt to ping 82.116.84.39. If the IP address it attempts to ping is different than that, double check that the modifications to the hosts file has actually been made - and if it has, then you probably have an AntiVirus/Internet Security suite that overrides it. We'll deal with that kind of problems later, when we've tested whether or not this Gamespy server emulation works.

If the ping is successful to 82.116.84.39 then you're set to go. Try to log in to the game together with someone who also has done these modifications - preferably someone you know you were able to log in at the same time with before the Gamespy servers went offline. Please give feedback here in the thread whether it worked or not!

Edit: It is also possible that you need to port forward the UDP ports 27900 and 27901 to your computer, in addition to the Civ4 port forwards - but I strongly doubt this is neccessary considering it wasn't before the Gamespy servers went poof. If you are attempting this together with someone you know you could be connected simultaneously with before, and it doesn't work even with the modifications above, please attempt to port forward those two ports, and retest - just to eliminate that option too.
As the Americans learned so painfully in Earth's final century, free flow of information is the only safeguard against tyranny. The once-chained people whose leaders at last lose their grip on information flow will soon burst with freedom and vitality, but the free nation gradually constricting its grip on public discourse has begun its rapid slide into despotism. Beware of he who would deny you access to information, for in his heart he dreams himself your master. - Commissioner Pravin Lal, "U.N. Declaration of Rights"
Reply

I've updated my hosts file with the entries above and can try logging in if someone else is available to test logging in at the same time.

Edit: Oops, didn't see Furungy was already connected. Sorry about that. The connection failed, btw. I'll assume he hasn't updated his hosts file for now.

Played: Pitboss 18 - Kublai Khan of Germany Somalia | Pitboss 11 - De Gaulle of Byzantium | Pitboss 8 - Churchill of Portugal | PB7 - Mao of Native America | PBEM29 Greens - Mao of Babylon
Reply

Here's what I've got from Soren Johnson, in case it's useful to anyone.

Soren Wrote:Wow, that sounds really frustrating... I'm afraid I have no idea what is going on as I didn't code the Gamespy stuff. Have you posted about this to the official forums?

Soren Wrote:Here's info I've gotten from the guy who did the networking (who no longer works at 2K, I'm afraid):

"Oh man all the NAT Traversal stuff used a 3rd party server hosted by GameSpy. If that server is gone, no one (except for those running with no firewall) will allow an incoming connection to be established. In this case, it looks like the Pitboss itself is behind some sort of firewall, so the game trying to connect to it is trying to ask that GameSpy server to help traverse it. That's why this guy is seeing that connection attempt, and that's why it's failing.

Even if the Pitboss were to be put on a completely exposed network connection, a player could connect to it, but unless that player is also on completely exposed network connections, a 2nd player will NOT be able to connect, since each player is required to connect to every other player in the game. This is the reason behind that whole "Bad Peer" mess we got into with routers that weren't supported by GameSpy's traversal solution back when we first released.

I put network relay into the engine during CivRev so that all players could connect as long as ANY ONE PLAYER was accepting incoming connections, but I'm sure none of that ever went back into Civ4. Honestly the only option now is to have 2K port Civ4 over to the Steam multiplayer SDK (which is far more robust and easy to use). I thought I read somewhere that they were going to do that, but I guess they haven't yet?"

Hope that helps...

Soren Wrote:one other tidbit:

"I imagine it would be possible for all the players to configure their firewalls to open up the port that Civ4 uses. I forget what the port is (2491 or something?), but it should be in the .ini file we used and shipped. If they are a tech savvy group this might work for them. I THINK the game should try to connect directly before attempting to talk to GameSpy's traversal system"
Lord Parkin
Past games: Pitboss 4 | Pitboss 7 | Pitboss 14Pitboss 18 | Pitboss 20 | Pitboss 21
Reply

Quote:Even if the Pitboss were to be put on a completely exposed network connection, a player could connect to it, but unless that player is also on completely exposed network connections, a 2nd player will NOT be able to connect, since each player is required to connect to every other player in the game.

This is exactly what I suspected - everyone needs to have all ports forwarded for this to work. That is port 2056, 2058 and all the different ports we might use in the .ini file.
As the Americans learned so painfully in Earth's final century, free flow of information is the only safeguard against tyranny. The once-chained people whose leaders at last lose their grip on information flow will soon burst with freedom and vitality, but the free nation gradually constricting its grip on public discourse has begun its rapid slide into despotism. Beware of he who would deny you access to information, for in his heart he dreams himself your master. - Commissioner Pravin Lal, "U.N. Declaration of Rights"
Reply

(August 5th, 2014, 15:52)Lord Parkin Wrote:
Soren's friend Wrote:I THINK the game should try to connect directly before attempting to talk to GameSpy's traversal system"

I have seen no evidence that this is the case, though.
I have to run.
Reply

Or, frustratingly, to eliminate NAT as a factor at all put everyone on the same network segment (VPN....banghead ), which was the solution CanuckSoldier espoused over at CFC. I really don't like that solution and would view it as a total last resort kind of thing. I don't want to have to launch a vpn connection to some network/endpoint that I don't know anything about.

I hope we can test the replacement NATNEG server and get a good result from that instead. I can get online and test again in a few hours from now if someone will be available.

Played: Pitboss 18 - Kublai Khan of Germany Somalia | Pitboss 11 - De Gaulle of Byzantium | Pitboss 8 - Churchill of Portugal | PB7 - Mao of Native America | PBEM29 Greens - Mao of Babylon
Reply

(August 5th, 2014, 16:30)novice Wrote:
(August 5th, 2014, 15:52)Lord Parkin Wrote:
Soren's friend Wrote:I THINK the game should try to connect directly before attempting to talk to GameSpy's traversal system"

I have seen no evidence that this is the case, though.

Yeah, in the packet sniffing I did the pitboss server attempted to contact gamespy servers in all of the multiplayer game modes. I'd have to go back and check again to see if the NATNEG server was targeted in each mode, but I'm almost certain that it was with Direct IP.

Played: Pitboss 18 - Kublai Khan of Germany Somalia | Pitboss 11 - De Gaulle of Byzantium | Pitboss 8 - Churchill of Portugal | PB7 - Mao of Native America | PBEM29 Greens - Mao of Babylon
Reply

(August 5th, 2014, 16:35)spacetyrantxenu Wrote:
(August 5th, 2014, 16:30)novice Wrote:
(August 5th, 2014, 15:52)Lord Parkin Wrote:
Soren's friend Wrote:I THINK the game should try to connect directly before attempting to talk to GameSpy's traversal system"

I have seen no evidence that this is the case, though.

Yeah, in the packet sniffing I did the pitboss server attempted to contact gamespy servers in all of the multiplayer game modes. I'd have to go back and check again to see if the NATNEG server was targeted in each mode, but I'm almost certain that it was with Direct IP.

The test natneg-server that novice has coded even gets contacted and does it's work when one player connects to the server, so it's fairly safe to assume that the natneg-server is required. frown
As the Americans learned so painfully in Earth's final century, free flow of information is the only safeguard against tyranny. The once-chained people whose leaders at last lose their grip on information flow will soon burst with freedom and vitality, but the free nation gradually constricting its grip on public discourse has begun its rapid slide into despotism. Beware of he who would deny you access to information, for in his heart he dreams himself your master. - Commissioner Pravin Lal, "U.N. Declaration of Rights"
Reply



Forum Jump: