ETA: This is a fix for you Athlon X2 users who randomly disconnect from servers with no warning. It is not for anyone with a single core AMD or ANY Intel chip. The Pentium D's do not have this problem AFAIK.
If you're tired of having to manuall set affinity or you're having problems with your BF2 or any other games since you've changed to a dual core AMD try this (it still uses shortcuts to load the game):
Have you tried changing the Affinity of the BF2.exe to run on just 1 CPU? It hasn't been patched yet to know how to handle running on two cpu's.
There is a pretty good tool you can get to setup the affinity each time you start the game:
Here's the download: http://www.valhallalegends.com/adron/prioaff/prioaff.zip Download it and create a folder in your root called prioaff and extract the 2 files there.
I use it to run BF2 to force it to run at normal priority on cpu 0 with the following short cut
C:\WINDOWS\prioaff\prioaff.exe 2 01 "D:\Games\Battlefield 2\BF2.exe" +menu 1 +fullscreen 1
To run on both cpu's at realtime priority
C:\WINDOWS\prioaff\prioaff.exe 3 11 "D:\Games\Battlefield 2\BF2.exe" +menu 1 +fullscreen 1
And to force it to run at realtime priority on cpu 1
C:\WINDOWS\prioaff\prioaff.exe 3 10 "D:\Games\Battlefield 2\BF2.exe" +menu 1 +fullscreen 1
To use different priorities change the number following the exe. 0 = Idle 1 = low 2 = normal 3 = realtime
Eg: C:\WINDOWS\prioaff\prioaff.exe 0 ( would run idle priority )
To pick what cpu / core it runs on change the 2nd number after the exe.
01 = run on cpu 0 10 = run on cpu 1 11 = run on both
Eg: C:\WINDOWS\prioaff\prioaff.exe 0 01 ( run idle priority on cpu 0 )
*WARNING* users of single cpu systems should never use the realtime priority if you do expect to do a hard reset.
|
I've been using this successfully for the past 3 months in a ranked server and it takes up almost no memory and PB hasn't had any issues with having a loader starting BF2. It also fixed a problem in Counter-Strike where it would studder until a core was disabled for the processes (steam.exe and one other). BF2 would simply drop connection without any warning, this app fixed that.
Forgot to add this:
You will need a shortcut to launch BF2 from when using prioaff. Copy the original shortcut in the startmenu and edit the name to read "BF2 - Single Processor" (or whatever you like). Then edit he properties on this new shortcut and change the following boxes. Copy an paste everything to the right of the : (it's exactly what I have in mine)
Target: C:\WINDOWS\prioaff.exe 3 01 "C:\Program Files\EA Games\Battlefield 2\BF2.exe" +menu 1 +fullscreen 1
Start In: "C:\Program Files\EA Games\Battlefield 2\"
Ok, what the target is doing is telling prioaff to launch bf2 with the following settings; 3= realtime cpu priority & 01= processor 0 (1st core). You shouldnt change the cpu priority, but you can change it to use the 2nd core by putting 10 in place of 01.
The Start In is instructing the program as to it's home folder (I think...) I do know that if this isn't set to the correct folder for your BF2 installation, BF2 will not be able to load any of the content it uses from that directory. This is shown when you load in and get some crazy error saying something couldn't be found/loaded. If it's set correctly, bf2 will run just the same.