Time for another old classic. Master of Magic was originally released in 1994, and it is a game of the 4x genre (explore, expand, exploit and exterminate). The game is turn based with a randomly generated game world. Replayability is great because of all the customization options when starting a new game.
Follow my guide and you will be able to play this game on Linux with the use of DosBox. This guide is specifically for the digital edition available on GOG.com, but should also be applicable to other editions.
Setting up games for DosBox is quite similar for most games, so this guide will only specify the particular steps the apply to this game.
First Steps in: DosBox Generic Guide
For the rest of this guide, I assume that the contents of the app folder from extracting the Master of Magic installer has been moved to:
'username' is your user name
Config file Setup
By now, you should have a config file for the game located in:
I will assume you named the config file: magic.conf
Open the config file with a text editor and make the following changes:
This will depend on personal preference, but an old game like this is great to play windowed while browsing or doing other stuff, but if you want it fullscreen, simply set it to 'true'
in case you decide to play fullscreen, then this will ensure the game renders in your desktop resolution
windowresolution=1280 x 960
this is mostly provided as an example, you may put in your own window paramters in case you wish a larger or smaller game window
this is required to enable larger game window than the original resolution
this will let you freely move the mouse outside the game window, which is useful since nothing in the game requires the mouse to be captured
Scroll a short bit further down until you find
this is the largest supported memory size in dosbox, and it helps this game
Under the [render] section, make following changes
Under the [cpu] section make following changes
This game really required a lot of cpu cycles, however certain systems might not be able to handle too high cycles, if this setting result in a lot of stuttering sounds, try reducing it to 25000, or even 20000
Under the [midi] section make the following changes
Remember this step. For most systems 128:0 will be the correct setting, however it may be different on your system, so keep this number in mind and we will check later if you need to set it to another sound setting
Under [joystick] section make the following changes
this actually slightly improves dosbox speed
Now scroll to the end of the file, and under the [autoexec] section, type in the following, replacing 'username' with the name of your user:
mount c /home/username/games/magic
Now we need to set a few game settings. So start dosbox, and type in the following, replacing username with the name of your user:
mount c /home/username/games/magic
Now click on 'Configuration'
Select 'General midi' at the bottom, and click Ok
Now select 'SoundBlaster Pro (later)' and click Ok
Back at the main window just click 'Exit Program', to close the DosBox prompt after this, just type 'exit' and press enter
Setting up Timidity for game music
To get general midi working, you will have to install another program. You could have selected a different sound setting than 'General midi' in the last step, but it would result in some poor sounds, so I strongly suggest you stick to this.
The program you want is called Timidity++, and it should be available in the official repositories for most Linux distros. In Ubuntu and Mint it is simply called Timidity, so just open the software manager and search for it.
You will also need a soundfont, and I suggest the FluidR3_GM soundfont. The specific name might differ from distro to distro, but search on your software manager for 'fluid' and you should find it. Arch Linux users can find it in the AUR. In Mint 16 it is called: fluid-soundfont-gm
This soundfont it quite large, over 100 mb, but it provides great sound for old midi games.
Lastly you simply need to configure timidity to use this specific soundfont. This must be done by editing the config file, and it must be edited as root. I will show how to do it with nano.
Open a terminal and type:
sudo nano /etc/timidity/timidity.cfg
Note that on certain distros, it may be named differently (timidity++ instead of timidity), so when you type this, simply press TAB on your keyboard to auto-finish after you have typed in 3-4 letters for each folder.
You must type in your password, and then you will be presented with the content on the timidity.cfg file in the terminal. Every line should start with #
That means the line is a comment. If you are on Ubuntu or Mint, there will be one line at the end of the file that does not start with #
You should place # in front of that line so it looks like this
The last thing to do is just enable the FluidR3_GM, for both Ubuntu and Mint all you have to do is find the line that looks like this:
And just remove the # at the beginning of the line. However, on some other distros the FluidR3_GM soundfont may be located at a different place, and you may need to use 'soundfont' instead of 'source' if you have .sf2 files instead of .cfg files for soundfont.
For Arch Linux users, you can install the 'soundfont-fluid' from AUR, and edit /etc/timidity++/timidity.cfg, make sure every other sondfont line is commented out, and then you add
soundfont "/usr/share/soundfonts/FluidR3 GM2-2.sf2"
at the end of the file.
When you are done, you press Ctrl+x to exit, and then you will be prompted if you want to save the changes, which you of course must do in order to use the soundfont.
Now, you can run timidity. Timidity must be running for the game to have any sound, but you can easily stop Timidity from running when you are done playing. We will be running Timidity as an Alsa sequencer, making sure it outputs to Alsa. This should work on most distros as Alsa is very widely used. Open a terminal and type:
timidity -iA -Os
You should see this.
Make note of the number I have highlighted. If you get another number, such as 129:0, then you will have to edit the dosbox config file for the game, and set midiconfig to equal the number you see, otherwise you will not get any sound.
Timidity is running now, and will provide sound for the game. Just leave this terminal window open, you can minimize it, just don't close it. When you are done playing and want to stop Timidity from running, select the terminal window and press Ctrl+c to kill the running process in the terminal.
echo -e "#! /bin/bash\ndosbox -conf ~/dosbox_shortcuts/config/magic.conf" > ~/dosbox_shortcuts/Master_of_Magic
chmod +x ~/dosbox_shortcuts/Master_of_Magic
This creates a shortcut which you can simply double click to start the game. The shortcut created can be moved anywhere you wish, and will still work without problem, as long as the config file remains where it is with the same folder names.
Whenever you wish to play the game, just make sure you have started Timidity first, then you can use the shortcut to play the game.