The Bad
Great as it may be, Battlefield 2 is far from perfect.
The issues come up immediately, in an area that we really didn't expect considering how much flak DICE got over this last time - the interface. The interface, specifically the server browser and keymapper, are not designed badly so much as they perform terribly. The browser in particular is extremely ponderous and slow to respond. It's hard to believe an interface can lag, but it feels like the player's computer is connecting to itself through a 14.4Kbps modem. The server list is particularly egregious, where even merely scrolling through it can be an exercise in frustration.
This isn't helped by some of the design decisions that went into the browser. An inordinate number of servers show "0" as their ping time. Presumably, these are servers that are timing out or not responding to ping queries properly, but the end result is that when the player sorts servers by ping time, these end up on top! So to find servers that actually responded, this means struggling with that unresponsive scroll bar. It's all needlessly frustrating, and would be an easy - and we think obvious - fix for a top-tier developer like DICE.
Opening the front menu during combat by hitting the escape button is not unlike committing suicide outright. The loading time and quit time for the menu could be measured on a sundial. This seems to afflict new commanders and squadmates especially, who are trying to quit the command/squad menu (Caps Lock) by pressing the escape button. Of course, the escape button is also easy to hit when the player is trying to switch between positions on a vehicle, which is done by the function keys (F1 being the default position, of course).
Then there are some gameplay issues that have been unaddressed and perhaps never can be. Team damage is important in a game with so many area-effect weapons, thus most servers run it. To help deal with the teamkillers, there's an option to forgive or punish a teamkiller, for the person who suffered at his hands. Now whether or not people use this appropriately is out of DICE's hands, but some people go out of their way to BE teamkilled. The most egregious example of this is the minerunner; a type of griefer who jumps into a vehicle and seeks out friendly mines to run over and thus report the "teamkiller" engineer. This was an issue in the past and is one in other games, like Enemy Territory. There's no perfect solution to this, but mines that don't do team damage are probably better than kicks and temporary bans of players trying their best to play the game properly.
Continuing with the player issues, there's no manual kick/squelch menu as far as we can tell. It seems that a player must commit teamkills repeatedly to get kicked. Thus, the annoying prick spamming chat or voice can do so with impunity unless there's a server admin present. [
Emphasis on the "as far as we can tell" -ed.]
The game's performance is also suspect. While leagues better than Battlefield 1942, which had serious issues on even powerful systems at the time, Battlefield 2 has some odd stutters and hiccups. We're not sure if these are lag issues, a lack of main RAM or video RAM, but certain areas of some maps can be very problematic for players, especially when they're crossed for the first time. Regardless, Battlefield 2 runs much better in general than BF1942 ran on its contemporary equipment, so this is only a minor point. The only thing we'd like to emphasize is that FSAA is a must in BF2, there are so many bump maps and shadows that the pixellation can become quite annoying.