It works! It was a major ordeal, but I'm now running a co-op Battlefield 2 server.
The first hurdle was upgrading my #2 machine to the point where BF2 would even run. My #2 box (formerly with a 1.4 GHz P4) already ran all recent games reasonably well, and my friends and I used it regularly to play NHL 2006 with all settings maxed out, yet BF2 wanted more CPU power: 1.8 GHz minimum. Luckily the MoBo would accept up to a 2 GHz CPU, so I got on eBay and found a bunch of possibilities. The 2 GHz CPUs were expensive, but I found a 1.8 that was priced reasonably, so I bid on it and won.
The chip arrived and I immediately discovered that it was the wrong type - it didn't match the item description on eBay. I'd heard all the nightmare stories of shady eBay sellers, so I expected the worst, but the seller in this case offered to pay for an adapter. I bought an adapter and sure enough the CPU seller paid for it. Installing the new adapter and CPU turned out to be tricky as the clamp didn't fit properly, but I hammered it in there somehow.
The next hurdle was video. DICE/EA wanted to use Pixel Shading 1.4 in BF2 to enhance realism, but instead of allowing users to enable/disable that feature according to their taste, it was simply made a requirement. Even relatively powerful video cards without this feature would be unable to run BF2. Guess what? My GeForce4 Ti4200, a card that I had used with great success until now, didn't support Pixel Shading 1.4. Groan. Shelled out a few hundred bucks for a new, mid-performance card and BF2 started working.
I've mentioned elsewhere that BF2 was shipped without support for cooperative multiplayer versus bots. This was - and continues to be - a major disappointment. I've sent feedback to EA support and posted to the BF2 forums, along with many others who feel similarly cheated. EA was sympathetic in their replies, and said that a) their developers were looking at all suggestions in the forums, including co-op modes and b) they were not in a position to say for certain whether co-op would be supported in a future patch. Oh well.
User community to the rescue! Whenever a moddable game is released, the modding community goes into action. BF2 is no exception. There are already plenty of BF2 mods and more arrive every day. Several different groups immediately started work on adding co-op play to BF2. They discovered a surprising fact: BF2 actually includes code that allows co-op play, but it's a) hidden from the user and b) buggy as hell. Playing cooperatively involves PC #1 starting a single-player game and PC #2 joining it by manually entering PC #1's IP address. Further confusing users, the "Connect to IP" button does nothing at all when clicked - if you're logged in with an "Offline" account. The process of creating online accounts is awkward at best, and caused even more confusion among users, particularly those who already had GameSpy accounts. But that's another story. One final hurdle is that your Offline and Online accounts share no settings, so once you've created your Online account, you have to go into the options and make all the same changes you made when you created your Offline account. Ouch!
BF2 sites started posting instructions for playing cooperatively versus bots, along with lists of gotchas, like maps that don't work in co-op mode. In wading through this material, I noticed that a lot of people were having trouble getting co-op mode to work consistently. Most of the problems I read about involved the dreaded CTD (Crash To Desktop). Ugh! Interestingly, I found that hosting a vanilla BF2 co-op game on my #1 box and connecting to it from the #2 box worked reliably, except I had to avoid certain maps.
Modders eventually produced "co-op mods" for BF2. There was (and still is) a lot of confusion about these mods, because they don't actually add co-op play to BF2; they only make the existing, hidden co-op mode more stable. Anyway, perhaps the best of these is the one produced by WCC Coop. This mod does a lot of good stuff, including:
* Reduces map load time dramatically.
* Removes AI and other bugs from maps, reducing CTDs.
* Tweaks weapons, vehicles and soldiers in various ways to make the game more entertaining.
* Allows locked weapons to be played.
* Repositions a few vehicles on certain maps to avoid problems.
* Allows larger versions of maps to be played.
* Allows more total players, increasing the total possible from 16 to 32 (at least).
* And more.
The WCC folks also figured out how to run a dedicated BF2 co-op server that provides map rotation and allows map voting, and explained the server settings that control co-op play. Armed with this, I was able, finally, to set up and run a dedicated co-op BF2 server on my server box. I can join this server from my #1 and #2 boxes and play several maps in sequence without any problems. Hooray!
EA/DICE almost succeeded in turning me away from BF2. In the end, I'm glad they didn't, because BF2 is an awesome game. Even with relatively stupid bots (mine are set to 0.3 out of a possible 1.0) the firefights are amazing. Almost all of the annoying bot behaviour from BF 1942 is gone. I hardly ever scream at bots in frustration in BF2. The new command structure, with an overall commander and squad leaders, is terrific. Squad members can spawn at the squad leader, which means that my buddy and I spend a lot less time trying to find or catch up with each other. If I'm the squad leader and I'm driving a tank, my buddy can spawn to me and he pops right into the gunner position of my tank. Tank gunners can now DUCK, so they can actually survive more than three seconds up there. If there is already a bot gunner, I can tell him to bail out - and he will! The command/communication system is both easy to use and effective. Tell a bot to do something using this system, and they actual do it! Bot opponents take cover, use flanking positions, throw grenades and are deadly shots. And the eye candy in this game is truly spectacular!