Linux and battlefield 2
Below are a few solutions and tricks I have learned on playing Battlefield 2 on Crossover Games while utilizing a an Asus G60VX laptop and Fedora 15 x86_64 with Gnome-3 and Crossover Games 10.0.10. Game was updated with 1.41 and 1.5 patches. While having an above average knowledge of computers, I am primarily a gamer, and a new-comer to Linux, so the problems/and or answers below could be fixed through other more technical means, but at this time this is what I know works.
Additionally it should be known that I have learned that it is easier to play Battlefield 2 on Crossover Games than it is to play on Windows-7 (seriously, google Battlefield 2 CTD and Windows 7!), and often times will yield better performance on Crossover Games (in terms of load times, frame rates, and latency) than Windows-7 and Windows Vista.
1.) Problem: Game will not start and/or freezes upon start-up.
Solution: Launch game with virtual desktop the same size as your current (mine is 1366×76 with the virtual desktop being activated not under BF2.exe in Wine Config, but general settings. Uncheck hardware support for both types of shaders under general settings, but ensure that BF2.exe has vertex shader support enabled.
Additionally modifying your video.con files found in your «My Documents —> Battlefield 2 folder» by replacing the line which contains «800 600 32 60» to be your desired resolution; mine I changed to «1366 768 32 60», though «1366×768@60Hz» also seems to work.
2.) Problem: Numerous graphical glitches (black hash-mark like glitches on terrain, and black boxes) are observed in game.
Solution: I have found that you must do 2x things to correct this; (1) Turn terrain detail to lowest setting (the rest of the settings can be turned all the way up besides anti-analysising); (2) Utilizing the Nvidia control panel (AMD is untested at this time), force at least 2xAA. I utilize thr maximum 16xAA. The combination of those 2x things should fix the graphical glitches.
3.) Problem: Game does not exit cleanly (game exits with error messages).
Solution: I have noticed that this is somewhat connected to the graphical glitches, if you are forcing +2xAA to fix graphical gltiches, you tend to get the nasty looking and numerous error messages. Luckily the work around is too easy; when you want to exit from the game logout of your players account first to the player account page and then exit, at which point NO error messages regarding renderers will pop-up.
4.) Problem: While attempting to install the game from CD-ROM, the installation program does not recognize when you swap discs.
Solution: First make sure you unmount the drive properly and then swap the disc. If the install still does not recognize the disc, go to the bottle and lauch the WINE config, go to drives and hit refresh and/or rename what the disc that may be present from BF2 CD 01 (or something like that) to BF2 CD 02 or BF2 CD 03. I think that this is a Crossover Games issue as debugging couple of installs yield me a message about /OPT/CROSSOVER something line 56 something or another being depreciated.
5.) Problem: Online play keeps resulting in PunkBuster (PB) kicking me out.
Solution: Either (A) Don’t utilize Punk-Buster and play on non-PB servers or (B) a possible solution I have heard of is using a Windows-98 compatibility setting on PB.exe (or the game possibly?), I have not tried it nor do I have any additional information on that possible solution.
6.) Problem: Game indicates that a disc must be inserted for play, and/or an error mesage regarding cd-keys is observed.
Solution: Install the patches 1.41 and 1.5 to remove, through officially sanctioned means, the DRM. The CD-Key error message is a known issue with BF2 on any operating system, and is not a Crossover/WINE issue.
7.) Problem: The game does not start, and/or gives me an error message, even though the above fixes were applied.
Solution: Uninstall the game, delete the bottle, and delete the Battlefield 2 files in your «My Documents» folder. Reinstall using the Cross-Tie and/or CP4 from the Battlefield 2 compatibility page. DO NOT attempt utilize DirectX June 2010 redistributable (as I learned) as it will not fix any graphical gltiches, and result instead with the game not starting. Reinstall using Crossover Cross-Tie (or CP4) using the included «Modern DirectX», reinstall 1.41 and 1.5 patches, retry (keeping in mind above tips). Ensure that you are using the «True» Nvdia and/or AMD drivers for your graphics chip (Use the closed-source drivers).
9 times out of 10 the game not running is because of other modifications and/or additional/untested software being present in Crossover Game’s Battlefield 2 bottle. The game runs, trust me, I have tested it on both Nvidia and AMD hardware software.
***************************************TRICK(S)*** ************************
1.) Save time and bandwith when using the CP4 / Cross-Tie to install the game, copy and back-up the downloaded patches (1.41 and 1.5) to a safe place, as they are huge (2.0 GB?) and will likely be needed if you plan on «Tweaking» anything.
2.) Don’t utilize the EA Games patch downloading software to obtain the game patches, the patches downloaded are a «One-time-Use» varient which will give you headaches if you use them again, more so if you are a Windows user!
3.) Don’t use the built in VOIP service, instead utilize the program «Mumble», which will not bring with it the known issues the BF2’s intergrated VOIP services have.
4.) Use the proprietary (closed source) Nvidia / AMD / Intel linux drivers. Recognizing that most people who use Linux prefer open-source drivers, when it comes to gaming, the open-source drivers suck as of the date of this post, and using the closed-source drivers will yield performance that actually is on par with if not better than Windows Vista / Windows 7.*
*On that note, if you are going to attempt to game on Linux, try to go with Nvidia based hardware, as AMD’s current drivers are still maturing, and Intel, well, if you thought Intel’s hardware sucked on Windows for games.
1.) Problem: «Project Reality: BF2» (Project Reality : Realistic Gaming Redefined) does not work on Crossover-Games or WINE, because it requires that the player use «PR.exe» instead of «BF2.exe», and «PR.exe» requires Microsofts .NET framework v3.5 to be installed.
I.) I think the solution to this issue lays with the alternitive to Microsoft’s .NET framework, which is known as «MONO» (Main Page — Mono).
II.) The Project Reality Mod community is huge (kind of like their mod!), and very active in refining Battlefield 2’s numerous identified issues, perhaps cross-talk between the developers and the WINE community could allow for quicker development of a fix.
III.) Crossover/WINE community develop the means to run Microsofts .NET framework v3.5? (I think it would/will be easier to work the mod development team fixing the problem at the modification level than it would be speeding up what I know must be grueling work for the Crossover/WINE personnel reverse engineering Mircosofts products..)
1.) I believe the Codeweavers and/or Linux community should really attempt to refine this game as much as possible.
I.) The game is fundimentally broken for use in Windows Vista and/or Windows 7 (Battlefield 2 with patch 1.5 crashes to desktop on Windows 7 x64 RTM — Fix on Page 2! — Battlefield 2 Members Helping Members — Battlefield 2: EA Forums), it was easier to install and setup on Fedora 15 with Crossover than it was to install and get running on a more poweful Windows-7 based machine! EA will likely never fix the now known problems associated with its use on newer Windows version, leaving Linux to literally be a better OS to run the game on.
II.) Battlefield 3 is due out later this year, and with the above statement, the Battlefield 2 will undoubtedly recieved increased attention once more. Being able to say that the preferred operating for Battlefield 2 is Linux w/ Crossover Games (or WINE) would greatly increase the report of Linux and Crossover/WINE with gamers and non-gamers alike.
III.) Still continueing off the first reason, Battlefield 2 continues to have a strong modding community with such total conversions as Forgotten Hope 2 (Forgotten Hope — News) and Project Reality (Project Reality : Realistic Gaming Redefined) still continuing, the community is still there to embrace additional support for the game. Additionally the many software programs that Linux offers that could support the modding community could see increased attention and use as people who mod the game use Linux more because of it’s better performance and flat out ability to be able to run the game.
IV.) The problems and fixes mentioned above most likely effect numerous other games as EA I know likes to recycle it’s game’s engine’s code, and what fixes BF2 may help some other game, such as perhaps fixing Battlefield 1942’s (classic!) notoreous 3D-sound issue. Additionally the errors/glitches seem to be so close to being resolved (at least to my perception) through the hard-work of either Codeweavers and/or the WINE/LINUX community that it would be a shame to never have BF2 run «better» than it is now. The black hatch-mark like graphical glitches in game being solved by turning down the terrain settings? Really? That indicates (at least to me) a possiblely easy fix (though I am on this matter definately not a hard-core programmer, so I have little to no credibility on this one besides the overall theme of the message, and yes, I recognize the difficulty in reverse engineering / developing synthetic code, and applaud those able to do it, and the work they do!)
Alas I end this post with the hopes that it will help someone, and again I beg that the PR:BF2 team helps participate in the creation of a work around for us not using Windows to play Battlefield 2! (I mean come one, how awesome would it be for to play some of the maps I have heard/seen that take place in Afghanistan, as I sit here writing this in Afghanistan playing Battlefield 2 while being out on a real battlefield!)
Last edited by SnipingCoward; 2011-07-03 at 21:20 .. Reason: sry, title limitation forced me to cut off some words