c0000005 UE, Attempts on 3 computers, still nothing but Unhandled Exception

edited August 2009 in Support
I have been passively trying to get this game running for a few months now. It appears that my desktop (AMD socked 939, 2GB RAM, Nvidia Vid Card) nor my 2 laptops (Toshiba Satellite and Toshiba Tecra) will run this game. Seeing how before the master servers went down, I was able to run it on two of them, I am rather disappointed.

Since I have been trying to get it running for too long now, rest assured, I have tried everything that I have seen in the forums. Updating Vid drivers, D3D/OpenGL setting changes, deleting DSO files, taking off intro, running in window mode, peeing on monitor, reinstalling the game/patch (using the version hosted online AND my original patched T2 CD), everything in the FAQs and every search result I could find..

I am able to play the training mode and host a game without a problem, but I keep UEing when I try to join a server. I either get "unreasonable IP challenge source" or the UE. I have really spent hours rummaging post on this forums off and on for a couple months now. If anyone has any input, I would appreciate anything at this point. Thanks in advance, and I surely miss playing this game.

Comments

  • So, the game produces a UE only when you try to join another server?
  • Yes, all three computers produce either a UE or "unreasonable IP challenge source" when I try to join any online server. Hosting or playing a single player game is fine, no problems there.
  • Are you using the same account for both? That error message is generated persistently in only two circumstances.

    In the first, your client has not acquired its own IP address for one of the anti-active-MTiM code, which would indicate a network problem. Since you seem to have been able to generate an account, and are able to see the server list, it's unlikely that this is the problem. To make sure, try running the following command in the console (~ key) once logged in (it should show your internet side IP address, equivalent to www.whatismyip.com): echo($IPv4::InetAddress);

    It's also possible that the RSA key generated when you made your account is somehow invalid for decryption. The IP address is encrypted as part of the full challenge, so if your client is unable to properly decrypt the challenge (the private key doesn't match the public key), it would also produce that error message. There are several measures in place to prevent something like this from happening (for one, the account creation request is digitally signed with the key you generate to test it for validity).

    If the console command above shows your correct IP address, try generating a new account.
  • edited August 2009
    Thanks for the help so far Thyth. Before this post, I created a total of 2 accounts and tried them across my 3 computers.
    In the first, your client has not acquired its own IP address for one of the anti-active-MTiM code, which would indicate a network problem. Since you seem to have been able to generate an account, and are able to see the server list, it's unlikely that this is the problem. To make sure, try running the following command in the console (~ key) once logged in (it should show your internet side IP address, equivalent to www.whatismyip.com): echo($IPv4::InetAddress);

    If I understand this correctly, I locate the IP address that my command console is giving, then compare it to the IP address that whatismyip.com is giving? Well, they are different.
    It's also possible that the RSA key generated when you made your account is somehow invalid for decryption. The IP address is encrypted as part of the full challenge, so if your client is unable to properly decrypt the challenge (the private key doesn't match the public key), it would also produce that error message. There are several measures in place to prevent something like this from happening (for one, the account creation request is digitally signed with the key you generate to test it for validity).

    I just generated a 3rd account now for testing, still getting the same c0000005 UE in location 00583973. I did notice hoewever, when I tried changing OpenGL to D3D the location changed to 0058a841 if this helps to narrow it down.

    Any more suggestions? Is it my differing IP addresses or the D3D/OpenGL approach? Thanks again for all your help.

    EDIT: I have reset my router/modem a few times and can't seem to get the two IPs to line up. They are often times 2 digits off, but never the same. When I tried to log in last time, there was a message about "man in the middle" or something to that effect, talking about an IP problem.

    Could it be my ISP? I am stationed in the United Arab Emirates and we have a HORRIBLE ISP that is government owned (pure monopoly), and the way the internet works here is a bit 'dark ages' to say the least.
  • Ok, if you've generated multiple accounts, then it's definitely not a bad key. I didn't think it was likely in the first place, since it's tested as part of creating the account.

    The TN authentication interface between servers doesn't fail very gracefully. Sometimes you get the error message that the system generates, but sometimes the game just crashes and generates a UE, like you've seen.

    If the IP address data IS changing, that means your Internet service provider is manipulating your network connection. For security reasons, TN is designed to abort connections to servers if either side detects tampering with the connection (if it didn't, impersonation attacks become possible).

    This is what you're running into, and beyond a VPN to another ISP (that doesn't manipulate the connection this way), I don't think you'll be able to make this work.
  • So my inferior monopolized ISP is causing this? I won't ever be able to play again while being stationed in this country? (There aren't any other ISPs) :-\

    I tried using a free VPN, still nothing. Is there really nothing else that I can do, it seems strange that I am able to play ALL online 360 and PC games, but this nearly decade old game won't work. Thanks for your help and please let me know what else I can try because I refuse to give up.
  • Well, TN was designed with fully decentralized authentication, so client and server IP addresses are used to verify challenge credential destinations. It doesn't work the same way as a centralized authenticator that you would find on systems with guaranteed up time.

    A full IPsec VPN that tunnels all traffic (TCP and UDP) would work. I don't know what free VPN you're using, or what specifically that VPN is doing.

    But, it's possible to disable the client side component of verification... If the error message you are getting is: "Server sent back unreasonable IP challenge source. Possible replay attack attempt."

    If you're getting: "Potential man in the middle attack detected. Your client claims it connected to: {ip}, but the server does not consider this reasonable.", this won't work.

    Create a file in Tribes2/GameData/base/scripts/autoexec (if the folder does not exist, create it), named override.cs, and include the following contents.
    function clientCmdt2csri_decryptChallenge()
    {
    	%challenge = strlwr($encryptedchallenge);
    	for (%i = 0; %i < strlen(%challenge); %i++)
    	{
    		%char = strcmp(getSubStr(%challenge, %i, 1), "");
    		if ((%char < 48 || %char > 102) || (%char > 57 && %char < 97))
    		{
    			schedule(1000, 0, MessageBoxOK, "REJECTED","Invalid characters in server challenge.");
    			disconnect();
    			return;
    		}
    	}
    
    	rubyEval("tsEval '$decryptedChallenge=\"' + $accountKey.decrypt('" @ %challenge @ "'.to_i(16)).to_s(16) + '\";'");
    
    	%replayedClientChallenge = getSubStr($decryptedChallenge, 0, strLen($loginchallenge));
    	%serverChallenge = getSubStr($decryptedChallenge, strlen(%replayedClientChallenge), strLen($decryptedChallenge));
    	if (%replayedClientChallenge !$= $loginchallenge)
    	{
    		schedule(1000, 0, MessageBoxOK, "REJECTED","Server sent back wrong client challenge.");
    		disconnect();
    		return;
    	}
    	schedule(getRandom(128, 512), 0, commandToServer, 't2csri_challengeResponse', %serverChallenge);
    }
    schedule(5000, 0, exec, "scripts/autoexec/override.cs");
    
  • Thyth, I really appreciate your help. But sadly, I don't think I will be able to get this thing working. Without a VPN, I am pinging servers at roughly 300, so if I buy/enable a VPN, it will surely be a bit higher and probably unplayable.

    This is my all time favorite game and I was stoked that the master servers were back online, but this is just a huge bummer. Man, I surely miss the US. :(
  • FYI Thyth, I was getting this error:

    usLn8ed.jpg

    Ever since I just recently set up a wireless 4G connection. I've no idea exactly at what point of my network config this error is caused at. But basically I have a wireless 4G modem. My computer connects through to this through wireless, but also via a wireless repeater. So there are 2 local wireless networks I'm effectively tunnelling through to get to the ISP's wireless network, and then connecting to the internet through that...

    Aynwho I just tried creating that script and low and behold I'm able to connect now. \o/
Sign In or Register to comment.