Battlefield: Bad Company 2 on my PC was causing me MAJOR grief. I’d get into a game, and about 5 minutes in, I’d get dropped and ‘connection to EA server lost’ message. UTTERLY annoying. Appears tons of other people have the same problems. Various solutions from turning firewalls off/etc – but that didn’t work for me.
Changing your router’s UDP and TCP endpoint filtering to “Endpoint Independent” certainly helped – but it would still drop after about 10 minutes.
What seems to have worked is this. Go to your steam client and:
Steam Library -> rightclick BC2 -> properties -> Set launch options… -> “-pingInterval 50000”
Paste the “-pingInterval 50000” phrase without the quotation marks and that’s it.
That seems to have solved the problem for me; but this was pretty much utter fail on EA/Dice’s part. The amount of hate-forum mail that’s gone on for over 2 years relating to this problem is amazing.