Battlefield 2 & Patches Guide

Since many of us can't afford the $60 price tag of Battlefield 4, but we can still try Battlefield 2 in Linux for almost nothing. Specially if you already own it.

I will walk you through this Step-by-Step guide on how to install and configure Battlefield 2 in order to run it with the optimum settings like you could in Windows.

battlefield93.png


battlefield81.png


Tips & Specs:

To learn more about PlayOnLinux and Wine configuration, see the online manual: PlayOnLinux Explained

Mint 17 64-bit
PlayOnLinux: 4.2.5
Wine: 1.7.31

Wine Installation

Click Tools
Select "Manage Wine Versions"
wine01.png


Look for the Wine Version: 1.7.31
Note: Try using stable Wine 1.8 and 1.8-staging

Select it
Click the arrow pointing to the right
wine02.png


Click Next

Downloading Wine
wine04.png


Extracting

Downloading Gecko
wine05.png


Installed
wine06.png


Wine 1.7.31 is installed and you can close this window

Initial Setup

If you have the retail edition with 5 CD ROMs, each disk needs to be copied to a folder on the desktop.
When asked to over-write a file, just click Skip.
This way we can install the entired game right from the desktop

PlayOnLinux Setup

Launch PlayOnLinux
click Install
battlefield01.png


Click "Install a non-listed program"
battlefield02.png


Click Next

Select "Install a program in a new vritual drive"
Click Next
battlefield04.png


Name the virtual drive: battlefield2
Click Next
battlefield05.png


Check all three options:
  • Use another version of Wine
  • Configure wine
  • Install some libraries
Click Next
battlefield06.png


Select Wine 1.7.31
Click Next
battlefield07.png


Select "32 bits windows installation"
Click Next
battlefield08.png


Wine Configuration

Applications Tab
Windows Version: Windows 7
Click Apply
battlefield09.png


Graphics Tab
Check "Automatically capture the mouse in full-screen windows"
Check "Emulate a virtual drive"
Desktop size: 1024x768
Click OK
battlefield10.png


Installing Packages (Components, DLL's, Libraries)

Check the following:
  • POL_Install_corefonts
  • POL_Install_d3dx9
  • POL_Install_tahoma

Click Next
battlefield11.png


Note: All packages will automatically download and install

Installing Battlefield 2

Click Browse
battlefield12.png


Navigate to your desktop where you copied all of the CD ROM files
Select "Setup.exe"
Click Open
battlefield13.png


Click Next again

Click OK

Warning "this game has only been tested in WinXP(32bit)"
Click OK

Click Next

Enter Key for Battlefield 2
Click Next

Enter Key for Battlefield 2: Special Forces
Click Next

Click Next

Click Next

Click Next

Select "I accept the terms..."
Click Next

Select "I accept the terms..." again
Click Next again

Click Install

BattleCommo
Click Save settings

Program Error
You might get an error with the BattleCommo
Just Click "Close"
battlefield28.png


Check "No, install GameSpy Arcade later"
Click Next
battlefield29.png


Click "Register Later"
battlefield30.png


Uncheck "View the README file"
Uncheck "Create desktop shortcuts"
Click Finish
battlefield31.png


PlayOnLinux Shortcut

Select "BF2.exe"
Click Next
battlefield32.png


Name your shortcut: Battlefield 2
Click Next
battlefield33.png


Click Next again...

PlayOnLinux Configure

Back to PlayOnLinux
Select Battlefield 2
Click Configure
battlefield34.png


General Tab
Wine verions: 1.7.31
battlefield36.png

Note: Click the + to download other versions of wine. Click the down-arrow to select other versions of Wine.

Important
At this point, Battlefield 2 is ready to play, but you will need to keep the Play Disk in the drive. If you patch up the game you not only get a CD ROM free game, but you also get the rest of the expansion packs.

Battlefield 2 1.41 patch

Download the 1.41 patch and save to your desktop

Miscellaneous Tab
Click "Run a .exe file in this virtual drive"
battlefield37.png


Navigate to you Desktop
Select "BF2_Patch_1.41.exe"
Click Open
battlefield38.png


Select Language
Click Next

Click Next

Click Install

Installation Complete
Click OK

Click Finish

Battlefield 2 1.5 patch

Download the 1.5 patch and save to your Desktop

Miscellaneous Tab
Click "Run a .exe file in this virtual drive"
battlefield37.png


Navigate to you Desktop
Select "BF2_Patch_1.5.exe"
Click Open
battlefield46.png


Select Language
Click Next

Click Next

Click Install

Installation Complete
Click Finish

Launching Battlefield 2

Select Battlefield 2
Click Run
battlefield51.png


Note: Click debug to see errors and bugs

Please be patient, it may take up to 3 minutes for the EA logo to appear.
It isn't crashing, but certainly taking a long time to launch.

Optimization

Click Options
Click Video

Select a resolution to match your Linux desktop

Note: The game will play fullscreen when you set the resolution to match the Linux desktop resollution. If you change the Linux desktop resolution later, Battlefield 2 will crash. You will need to set the resolution in the Video.con located in your /home Battlefield 2/Profiles
If you have folders default, 0001 and 0002, just set the resolution in all three Video.con files.


Select a Quality preset, or adjust settings to your liking...

The game will require a restart after you adjust video settings. When you load a level after making video changes, it will have to optimize shaders and it takes an extra 10 minutes or so.
This is typical in Windows as well.

I also had problems with resolution crashing the game. The virtual desktop is critical but the resolution of it isn't. Just make sure the game has the proper resolution to match your Linux desktop, if not, follow the previous instructions to manually set the Battlefield 2 resolutions.

Rule of thumb:
High settings = More detail, lower frame rates
Low settings = Less detail, higher frame rates

Conclusion:
The only bugs I experienced is some flickering black spots on the ground and the resolution crash. both are absolutely tolerable because Battlefield 2 runs beautifully. You will no longer be able to play online because the EA servers do not exist, but you can play LAN parties and offline cooperative.

The flickering black shader bug is now fixed!

Download updated shader ".fx" files
  1. Download a new "shaders_client.zip"
  2. Navigate to the mods directory C:\Program Files\EA GAMES\Battlefield 2\mods\bf2\
  3. Rename shaders_client.zip (or delete at your own risk)
  4. Copy new shaders_client.zip to the same directory
  5. Delete the Battlefield 2 cache folder: Documents\Battlefield 2\mods\bf2
  6. Launch Battlefield 2 and run a simple singleplayer level to recompile shaders


Gameplay Video:

Screenshots:
battlefield80.png


battlefield82.png


battlefield83.png


battlefield84.png


battlefield85.png


battlefield86.png


battlefield87.png


battlefield89.png


battlefield90.png


battlefield91.png


battlefield92.png
 
Last edited:
Hi everyone, in trouble while reinstalling BF2 with a playonlinux vault .polApp i made earlier to not reinstall everything at everytime, while you reinstall you need mo,o and gecko after you install wine in all your separated wine prefix,i fix it like this:


This time i installed wine with this link(pop os for now)
https://wine.htmlvalidator.com/install-wine-on-pop_os-22.04.html#monoandgecko
I installed playonlinux by flatpak:
https://flathub.org/apps/com.playonlinux.PlayOnLinux4
You can stop your flatpak to be updated to avoid problems with this one:
https://flathub.org/apps/io.github.flattool.Warehouse

In playonlinux:
1/ Install your game or restore your .polApp
2/ go to configure in playonlinux
3/ select your wine prefix
4/ go to miscellaneous
5/ click on open virtual drive's directory
6/ right click in your file manager and open in a terminal
7/ linux command "pwd" to know where you are in my case(where your prefix is named BF_Spirit in my example):
~/.var/app/com.playonlinux.PlayOnLinux4/data/PlayOnLinux/wineprefix/BF_Spirit

8/ verify mono is installed correctly and gecko is not:
Code:
WINEPREFIX=~/.var/app/com.playonlinux.PlayOnLinux4/data/PlayOnLinux/wineprefix/BF_Spirit wine uninstaller

I find gecko for 32 and 64 bits here and download it in my Downlod folder:

https://gitlab.winehq.org/wine/wine/-/wikis/Gecko#installing

With this command it install gecko in my prefix, you have to install both 32 and 64 bits for each prefix even if it is a 32 bist prefix, and i had to delete my prefix BF_Sppirit and to reinstall all because of an update recently (not to long if you save your game with playonlinux vault):

Code:
cool@pop-os:~/Downloads$ ls -l
-rw-rw-r-- 1 cool        cool  53898752 Dec 23 21:56  wine-gecko-2.47.4-x86_64.msi
-rw-rw-r-- 1 cool        cool  55187968 Dec 23 21:56  wine-gecko-2.47.4-x86.msi

install gecko 64bits:
Code:
WINEPREFIX=~/.var/app/com.playonlinux.PlayOnLinux4/data/PlayOnLinux/wineprefix/BF_Spirit wine msiexec -i wine-gecko-2.47.4-x86_64.msi

install gecko 32bits:
Code:
WINEPREFIX=~/.var/app/com.playonlinux.PlayOnLinux4/data/PlayOnLinux/wineprefix/BF_Spirit wine msiexec -i wine-gecko-2.47.4-x86.msi

verify gecko is well installed:
Code:
WINEPREFIX=~/.var/app/com.playonlinux.PlayOnLinux4/data/PlayOnLinux/wineprefix/BF_Spirit wine uninstaller

And now you can run BF smoothly!
 
I recently tried using Heroic Launcher and Proton Experimental. I used the existing prefix from PlayOnLinux and it not only runs perfectly, it also was a lot less steps.
 
Back
Top