I got my Xbox 360 controller working with BF2 on the PC, it's pretty good actually. You don't need to spend the extra $5-10 on the "Xbox360 Controller for Windows" package, just download the driver from http://www.microsoft.com/hardware/mo.../download.mspx
. Obviously can't aim quite as well as with a mouse but with a little practice it's pretty good, and it's definitely a lot more fun/relaxing/whatever playing it on the couch on the big screen HDTV with a game controller than hunched over a desk and mouse/keyboard. Had to use 3rd party software called Total Game Control to map the right thumb stick to mouse and the analog triggers to buttons. But once set up the way I want, it's almost exactly the same as Halo 2, plenty of buttons on the controller to control all the important functions in BF2.
Left thumbstick = walk/strafe (pushing = crouch)
Right thumbstick = mouselook (pushing = zoom)
Left trigger = sprint/afterburner
Right trigger = fire
D-Pad up = parachute, D-pad down = voice menu, D-pad left = select pistol, D-pad right = select rifle
A = jump
X = reload
Y = weapon cycle
B = drop weapon
Left button = prone
right button = enter/exit vehicle
Select = spawn screen
Start = Squad screen
Works great for flying jets and choppers too, much better control than mouse/kb with the analog controls you don't have to keep tapping keys to make minor corrections it's all smooth and precise.
I only wish you could map multiple actions to the same button depending on the context, like X should reload unless i'm next to a vehicle in which case it should be enter/exit vehicle. Actually you could probably use Total Game Controller to map two keys to the same button on the controller so in that case it might actually work.