Many people find that when they try and play on a second PC on the same network, be it a room mate, brother or sister etc... in my case my son, they often get disconnected with the error "the connection to the server has timed out". Luckily I have a solution that will hopefully fix it, at least it worked for us!

Ok you'll need to edit the registry for this fix as Origin loads the bf3.exe from the registry settings.

1. Go to the Start menu and then type "regedit" and hit return

2. Navigate to:

HKEY_LOCAL_MACHINE > SOFTWARE > Microsoft > Windows > CurrentVersion > GameUX > Games >

Here you'll find something that looks like this:

3. Click each one until you find the one for Battlefield 3:

Click here to view the original image of 1355x320px.

4. Right click AppExePath in the right window and choose modify and add " +clientport 2xxxx". Where "2xxxx" is a number between 20000-29999 but not "22990" as this is already reserved for Battlefield 3.

5. You'll need to do this for each and every machine that you want to play Battlefield 3 on the same network. Remember to change the port number to something unique on each and every machine.

The final AppExePath should look something like this:

C:\Program Files (x86)\Origin Games\Battlefield 3\bf3.exe +clientport 21234

Hope this helps! Please take care editing your registry as I take no responsibility for any damage caused.

A thing to remember, UPNP on your router should be disabled if was enabled its wise to do a hard reset of the router. Hard reset being unplug for at least 15 seconds then plug back in.