I decided to embrace the old school and dig out my copy of Freespace 2 which is meant to run perfectly under Wine according to the Wine AppDB and I remember it very fondly, well after a straight forward Wine install it didn't work on my Fedora 18 installation currently running Wine 1.5.24.
Rather than shuffling towards the drudgery of trying to get FS2 working under Wine or the even worse experience of having to exit what I had running in the background, rebooting into Windows 7 (ugh) and trying to get it working there, I noticed during my search-fest that there's a FreeSpace Source Code Project (FCSP) that is actively developing the open source, multi-platform version of the Freespace 2 binaries called FS2Open! Sometimes life just throws you a bone.
Now it should really end there, I installed the thing, used the old disks to grab the content, had a wail of a time, went and did something else. Erm... no.
As with some open-saucy type projects, the only set of end to end instructions that seems to exist for Linux is a mighty wall of links & text. Their guide is comprehensive but many links and pages are involved and so it becomes a bit of a slog.
Therefore if you're running Fedora and want to begin playing the latest open-source, upgraded FreeSpace 2 the straight forward way then I've documented my simplified, start to finish guide for Fedora 18 for you.
What's required?To get FS2Open going you need;
The FS2Open engineThis is the open-source Freespace 2 core engine.
Project contributor 'niffiwan' has published some pre-compiled Linux binaries for a range of distros, these are available for download HERE.
You can go ahead and download the appropriate binary for you distro but if you want the latest version of FS2Open you're best just compiling from source as covered in this walkthrough.
A launcherLauncher software is used to configure and run FS2Open.
The FCSP project's launcher download page gives the option of 3 launcher projects. The official launcher software is called wxLauncher and appears to be the most complete.
For Linux, compilation of wxLauncher from the source code is required. The source comes with build instructions but the Linux section only covers Ubuntu. This gives you little idea of what packages you need to install on Fedora to compile the sofware.
The original game mediaYour 3 original Freespace 2 CDs or ISO images.
The FS2Open media enhancementsA lot of work has been done to enhance the original game's content to bring FS2 more up to date. The extra content comes in the form of game mods packaged up in additional VP files
The official download page for the latest MediaVPs is a forum post HERE.
Rather than manually download each file in the browser we'll make things a bit more straight forward later using the command-line.
Let's go..Firstly open a new terminal.
Install the Fedora packages you'll need
sudo yum install SDL SDL-devel python python-markdown wxGTK wxGTK-devel openal-soft openal-soft-devel cmake gcc gcc-c++ unshield subversion libvorbis-devel automake autoconf libtheora-devel readline-devel lua-devel libpng-devel libjpeg-devel
Create game directories under your home directory
mkdir -p ~/Games/freespace2/temp/mvp mkdir ~/Games/freespace2/temp/src mkdir ~/Games/freespace2/mediavps_3612
Get the FS2Open source code
cd ~/Games/freespace2/temp/src svn checkout svn://svn.icculus.org/fs2open/trunk/fs2_open
Compile & install the FS2Open binariesNote: we're not doing any optimization here, just the quick and easy get-it-going approach. The full mega-guide is HERE.
Assuming the compilation went OK copy the binary to your freespace2 directory;
cd fs2_open ./autogen.sh make
cp code/fs2_open_* ~/Games/freespace2
Compile & install wxLauncher
DownloadDownload the latest source code tarball from the wxLauncher downloads page HERE. Save the file to your Downloads directory.
cd ~/Downloads mkdir -p wxlauncher/build tar -C wxlauncher -xzf wxLauncher-*.tar.gz
cd wxlauncher/build cmake -DUSE_OPENAL=1 -DCMAKE_INSTALL_PREFIX=/usr/local ../
You should see messages confirming a successful build which looks like this;
-- Configuring done
-- Generating done
-- Build files have been written to: /home/yourname/Downloads/wxLauncher-0.9.1/build
sudo make install
Get the game content.The next step is to copy the original game content from the FreeSpace 2 CDs (or ISO images if you have them) to the freespace2 directory you created earlier.
Mount the game mediaClearly there are many ways to mount disk and iso images but here's the easy to describe, simple way of doing this. It assumes as you're running Fedora then you'll be running a Gnome 3 desktop, it is the best DE after all.
If you're using CDs, insert the first disk and open it in Gnome 3's file manager 'Files' when prompted.
Alternatively if you have ISO images of the CDs it is just as easy to mount them in Gnome 3, just double-click the ISO file in 'Files' and it will be automatically mounted and appear as a device. You could mount all 3 ISOs at once this way if you wish.
Whether you're using a CD or an ISO file, just hover your mouse cursor over the device to see it's path, this example shows the path of a mounted ISO file;
These paths will be the source of your data extractions.
Extract the data to your game directoryThe tool 'unshield' you installed earlier is a tool for extracting files from Microsoft CAB files with InstallShield headers.
With the first disk/ISO mounted unpack data1.cab and put all '.vp' files in your game directory as follows (substituting /path/to/your/cdoriso for the actual mounted disk/ISO path);
For disk/ISO 2 the required vp files are just in the root of the disk, so mount disk/ISO 2 and copy them directly;
cd /path/to/your/cdoriso unshield -j -d ~/Games/freespace2/temp x data1.cab mv ~/Games/freespace2/temp/*vp ~/Games/freespace2
... and lastly mount CD/ISO 3, like you did with disk 2 copy the vp files directly from it's path to the game directory;
cd /path/to/your/cdoriso cp *vp ~/Games/freespace2
cd /path/to/your/cdoriso cp *vp ~/Games/freespace2
Implementing the game enhancements (MediaVPs)
Download the filesThe available MediaVPs are packaged up in a number of separate ZIP files.
Download them to your ~/Games/freespace2/temp/mvp directory and unpack them. All together this is a 1.2GB download.
There are cleverer ways to process this list of downloads but the following list of commands requires less explanation here. You can just copy the list of commands and paste into your terminal to perform them in a batch.
A few of these file are optional but we're going full fat here.
cd ~/Games/freespace2/temp/mvp wget http://mvp.fsmods.net/3612/MediaVPs_3612.zip wget http://mvp.fsmods.net/3612/MV_Root_3612.zip wget http://mvp.fsmods.net/3612/MV_Root_Update.zip wget http://mvp.fsmods.net/3612/MV_Music_3612.zip wget http://mvp.fsmods.net/3612/MV_Assets_3612.zip wget http://mvp.fsmods.net/3612/MV_Assets_Update.zip wget http://mvp.fsmods.net/3612/MV_Effects_3612.zip wget http://mvp.fsmods.net/3612/MV_Effects_Update.zip wget http://mvp.fsmods.net/3612/MV_Advanced_3612.zip wget http://mvp.fsmods.net/3612/MV_AnimGlows_3612.zip wget http://mvp.fsmods.net/3612/MV_RadarIcons_3612.zip wget http://mvp.fsmods.net/3612/MV_CB_ANI_1.zip wget http://mvp.fsmods.net/3612/MV_CB_ANI_2.zip
Unzip the files
Place the VP files in their own subdirectory which you created earlier.
mv *vp ~/Games/freespace2/mediavps_3612/ mv mediavps_3612/* ~/Games/freespace2/mediavps_3612 mv MediaVPS_3612/* ~/Games/freespace2/mediavps_3612
Running and setting up FS2OpenNow, still in the terminal run wxlauncher;
You'll be presented with something like this;
ModsSelect the 'Mods' tab.
Select the MediaVps mod and select the [Activate] button.
Basic SettingsSelect the 'Basic Settings' tab.
Select the browse button to set the Game Root Folder to /home/yourname/Games/freespace2.
Select the Refresh button and pick the available FS2 Open executable option.
Once you've picked the executable the video and audio settings should be picked up automatically.
If you have your joystick or gamepad plugged in, select it in the Joystick drop-down.
Advanced SettingsSelect the 'Advanced Settings' tab, here's where you can experiment with the many settings available with FS2 Open.
As a starter set the Lighting Presets to 'Baseline Recommended' and the Flag Sets to 'High Memory usage features on'.
Then select/enable the following options;
- Apply Lighting to Missiles
- Enable 3D shockwaves
- Enable Post-processing
- Enable soft particles
- Enable FXAA anti-aliasing
- Enable 3D radar
- Enable 3D warp
- Enable flash upon warp
- Enable 3D models for ship selection
- Enable 3D models for weapons selection
- Preload mission game sounds
There are many user-made mods available that continue the Freespace saga as well as introduce additional stories & universes including Babylon 5 and BSG. Check out the highlights panel on wxlauncher's Welcome tab, the Freespace Wiki and the project's list of user-made campaigns and total conversions list for more details on what's available.
Before you do, don't forget your joystick, hit the Play button and get stuck in...
This should at least see me through until the release of Star Citizen.