OpenTTD
OpenTTD is a free re-implementation of the popular DOS game Transport Tycoon Deluxe. You are a transport company owner, and you must manage it over the years in order to make profit.
Installation
If you do not own the original game, openttd-opengfx and openttd-opensfx contains the free graphics & sounds.
Additionally, you may install openttd-openmsxAUR from the AUR to get the free OpenMSX music pack. Be sure to read through Timidity#Configuration to setup Timidity correctly, in particular, add yourself to the audio group and configure Timidity to use the Freepats SoundFont.
Original Transport Tycoon Deluxe data (optional)
OpenTTD can use the non-free graphics and sound data of the original Windows/DOS version of Transport Tycoon Deluxe.
You can get these files from the game CD-ROM, from an existing install or you get them from the freely available game installation archive available at Abandonia.
To use the original graphics & sound effects, copy the following files to /usr/share/openttd/data/
or ~/.openttd/baseset
:
- Windows : trg1r.grf, trgcr.grf, trghr.grf, trgir.grf, trgtr.grf
- DOS : TRG1.GRF, TRGC.GRF, TRGH.GRF, TRGI.GRF, TRGT.GRF
- sample.cat from either version
For the original soundtrack, copy the files from the gm folder of the original TTD game directory to ~/.openttd/gm
.
Tutorial
The game can be quite confusing at first. A good tutorial is available on the wiki here.
For an in-game tutorial, a game script has been implemented. Just download 'Beginner Tutorial' with the in-game download manager and load the 'Beginner Tutorial' scenario.
Configuration
The OpenTTD main configuration file is located at ~/.openttd/openttd.cfg
and is automatically created upon first startup.
Various settings in the configuration file can be edited with buttons on the main menu. Each button is explained below.
Game Options
This window allows you to set options which will be used by default at the start of a new game.
You can also set the default graphics, sound, and music here.
Difficulty
This window allows you to change the difficulty of the game, and specific options about them. You can either use the difficulty presets by selecting the difficulty buttons at the top of the window, or set custom options.
More information can be found here[dead link 2021-05-17 ⓘ].
Advanced Settings
In this window, nearly all the other settings in the configuration file can be modified. All the options are grouped in expandable sections. You can also search for the setting to be changed using the search utility.
Details about these settings can be found here[dead link 2021-05-17 ⓘ].
AI/Game Script Settings
This window allows you to customize various options relating to artificial intelligence (bots or CPU players) and Game Scripts.
Game Scripts are a goal-based scripts which can perform many in-game actions to enhance or extend the game.
Detailed information about this window can be found here[dead link 2021-05-17 ⓘ].
Tips and tricks
Heightmaps
OpenTTD allows using a grayscale image as a heightmap for landscape generation. There is an excellent heightmap generator available at terrain.party, based on real Earth terrain. Alternatively, you can use the botherAUR application, which can download larger areas and contains a number of options for fine-tuning the resulting heightmap (see the README for some notes on usage). You may further use gimp for fine-tuning the heightmap, especially useful are the Levels and Gaussian Blur tools.
Cheats
A cheat menu can be shown in a local game by pressing Ctrl-Alt-C.
Detailed information about cheats are available here
Troubleshooting
Music is not playing
The soundtrack of the game is made of MIDI files. Therefore, you need a MIDI synthesizer to play them.
The game will automatically try to use TiMidity++ with no additional arguments. If for some reason you need/want to use another synthesizer, OpenTTD provides the "extmidi" music driver, which allows you to configure a command to be ran to play music.
$PATH
, you must specify the absolute path.Edit your openttd.cfg to configure extmidi :
~/.openttd/openttd.cfg
[misc] musicdriver = "extmidi:cmd=<command>"
openttd -m extmidi:cmd=<command>
However, extmidi does not allow additionnal arguments in the command. The solution is to use a wrapper script (for example, ~/.openttd/playmidi
) :
#!/bin/bash #here, we want to use the FluidSynth synthesizer with the soundfont #provided in soundfont-fluid and PulseAudio trap "pkill fluidsynth" EXIT fluidsynth -a pulseaudio -i /usr/share/soundfonts/FluidR3_GM2-2.sf2 $*
Mark it as executable.
Then you can specify the full path to the script as the command to be used with extmidi :
~/.openttd/openttd.cfg
[misc] musicdriver = "extmidi:cmd=/home/<user>/.openttd/playmidi"