OpenTTD - http://www.openttd.org/ - with additional patches
Go to file
Patric Stout 8946b41d20 Fix: ensure switching blitter happens in the main thread
This because video-drivers might need to make changes to their
context, which for most video-drivers has to be done in the same
thread as the window was created; main thread in our case.
2021-03-08 19:18:55 +01:00
.github Change: [Actions] Also check dedicated build 2021-03-04 16:22:58 +01:00
bin Feature: Add tile parameter for GSCompany.ChangeBankBalance to show text effect if needed (#8573) 2021-01-22 10:28:26 +01:00
cmake Fix: [CMake] Remove timestamps from regression output 2021-03-04 16:22:58 +01:00
docs Doc: Add labels to landscape grid description. (#8452) 2021-02-14 23:09:01 +01:00
media Add: [NewGRF] new GUI sprites for 'rename' and 'go to location'. 2021-01-11 22:15:58 +01:00
os Change: [OSX] Render screen in full native resolution on HiDPI displays. 2021-02-14 11:50:18 +01:00
regression Fix: Remove semicolons from regression output 2021-01-10 15:47:20 +01:00
src Fix: ensure switching blitter happens in the main thread 2021-03-08 19:18:55 +01:00
.dorpsgek.yml Add: [DorpsGek] announce new tags on IRC (#7931) 2020-01-12 17:01:17 +01:00
.editorconfig
.gitignore Fix: [Git] ignore any build folder you might have 2020-12-15 15:46:39 +01:00
changelog.txt Doc: 1.11.0-beta2 changelog 2021-02-28 18:49:21 +00:00
CMakeLists.txt Fix: [CMake] Skip detection for unused libs for dedicated builds 2021-03-04 16:22:58 +01:00
COMPILING.md Update: Specify CMake minimum version in COMPILING.md 2021-02-07 16:21:13 +01:00
CONTRIBUTING.md Fix: update links to new OpenTTD wiki (#8341) 2020-11-16 14:16:21 +01:00
COPYING.md Doc: use a markdown version of GPL v2 for COPYING.md, also restore a missing line about copying to the GPL v2 wording 2019-10-28 20:18:29 +00:00
CPackProperties.cmake.in Add: create bundles via CPack 2020-06-05 19:36:05 +02:00
CREDITS.md Doc: revised README to be more helpful to casual GitHub visitors 2019-11-13 20:40:18 +01:00
Doxyfile.in Add: [CMake] targets to generate documentation 2020-12-12 15:48:04 +01:00
known-bugs.txt Doc: 1.11.0-beta2 changelog 2021-02-28 18:49:21 +00:00
README.md Cleanup: src/3rdparty/optional was removed, also remove its licensing note. (#8567) 2021-01-13 21:41:37 +01:00

OpenTTD

Table of contents

1.0) About

OpenTTD is a transport simulation game based upon the popular game Transport Tycoon Deluxe, written by Chris Sawyer. It attempts to mimic the original game as closely as possible while extending it with new features.

OpenTTD is licensed under the GNU General Public License version 2.0, but includes some 3rd party software under different licenses. See the section "Licensing" below for details.

1.1) Downloading OpenTTD

OpenTTD can be downloaded from the official OpenTTD website.

Both 'stable' and 'nightly' versions are available for download:

  • most people should choose the 'stable' version, as this has been more extensively tested
  • the 'nightly' version includes the latest changes and features, but may sometimes be less reliable

On some platforms OpenTTD will also be available via your OS package manager or a similar service.

1.2) OpenTTD gameplay manual

OpenTTD has a community-maintained wiki, including a gameplay manual and tips.

1.3) Supported platforms

OpenTTD has been ported to several platforms and operating systems.

The currently working platforms are:

  • FreeBSD (SDL)
  • Haiku (SDL)
  • Linux (SDL)
  • macOS (universal) (Cocoa video and sound drivers)
  • OpenBSD (SDL)
  • OS/2 (SDL)
  • Windows (Win32 GDI (faster) or SDL)

1.3.1) Legacy support

Platforms, languages and compilers change. We'll keep support going on old platforms as long as someone is interested in supporting them, except where it means the project can't move forward to keep up with language and compiler features.

We guarantee that every revision of OpenTTD will be able to load savegames from every older revision (excepting where the savegame is corrupt). Please report a bug if you find a save that doesn't load.

1.4) Installing and running OpenTTD

OpenTTD is usually straightforward to install, but for more help the wiki includes an installation guide.

OpenTTD needs some additional graphics and sound files to run.

For some platforms these will be downloaded during the installation process if required.

For some platforms, you will need to refer to the installation guide.

1.4.1) Free graphics and sound files

The free data files, split into OpenGFX for graphics, OpenSFX for sounds and OpenMSX for music can be found at:

Please follow the readme of these packages about the installation procedure. The Windows installer can optionally download and install these packages.

1.4.2) Original Transport Tycoon Deluxe graphics and sound files

If you want to play with the original Transport Tycoon Deluxe data files you have to copy the data files from the CD-ROM into the baseset/ directory. It does not matter whether you copy them from the DOS or Windows version of Transport Tycoon Deluxe. The Windows install can optionally copy these files.

You need to copy the following files:

  • sample.cat
  • trg1r.grf or TRG1.GRF
  • trgcr.grf or TRGC.GRF
  • trghr.grf or TRGH.GRF
  • trgir.grf or TRGI.GRF
  • trgtr.grf or TRGT.GRF

1.4.3) Original Transport Tycoon Deluxe music

If you want the Transport Tycoon Deluxe music, copy the appropriate files from the original game into the baseset folder.

  • TTD for Windows: All files in the gm/ folder (gm_tt00.gm up to gm_tt21.gm)
  • TTD for DOS: The GM.CAT file
  • Transport Tycoon Original: The GM.CAT file, but rename it to GM-TTO.CAT

1.5) Add-on content / mods

OpenTTD features multiple types of add-on content, which modify gameplay in different ways.

Most types of add-on content can be downloaded within OpenTTD via the 'Check Online Content' button in the main menu.

Add-on content can also be installed manually, but that's more complicated; the OpenTTD wiki may offer help with that, or the OpenTTD directory structure guide.

1.5.1) AI opponents

OpenTTD comes without AI opponents, so if you want to play with AIs you have to download them.

The easiest way is via the 'Check Online Content' button in the main menu.

You can select some AIs that you think are compatible with your playing style.

AI help and discussions may also be found in the AI section of the forum.

1.5.2) Scenarios and height maps

Scenarios and heightmaps can be added via the 'Check Online Content' button in the main menu.

1.5.3) NewGRFs

A wide range of add-content is available as NewGRFs, including vehicles, industries, stations, landscape objects, town names and more.

NewGRFs can be added via the 'Check Online Content' button in the main menu.

See also the wiki guide to NewGRFs and the forum graphics development section.

1.5.4) Game scripts

Game scripts can provide additional challenges or changes to the standard OpenTTD gameplay, for example setting transport goals, or changing town growth behaviour.

Game scripts can be added via the 'Check Online Content' button in the main menu.

See also the wiki guide to game scripts and the forum graphics game script section.

1.6) OpenTTD directories

OpenTTD uses its own directory structure to store game data, add-on content etc.

For more information, see the directory structure guide.

1.7) Compiling OpenTTD

If you want to compile OpenTTD from source, instructions can be found in COMPILING.md.

2.0) Contact and Community

'Official' channels

'Unofficial' channels

2.1) Contributing to OpenTTD

We welcome contributors to OpenTTD. More information for contributors can be found in CONTRIBUTING.md

2.2) Reporting bugs

Good bug reports are very helpful. We have a guide to reporting bugs to help with this.

Desyncs in multiplayer are complex to debug and report (some software development skils are required). Instructions can be found in debugging and reporting desyncs.

2.3) Translating

OpenTTD is translated into many languages. Translations are added and updated via the online translation tool.

3.0) Licensing

OpenTTD is licensed under the GNU General Public License version 2.0. For the complete license text, see the file 'COPYING.md'. This license applies to all files in this distribution, except as noted below.

The squirrel implementation in src/3rdparty/squirrel is licensed under the Zlib license. See src/3rdparty/squirrel/COPYRIGHT for the complete license text.

The md5 implementation in src/3rdparty/md5 is licensed under the Zlib license. See the comments in the source files in src/3rdparty/md5 for the complete license text.

The implementations of Posix getaddrinfo and getnameinfo for OS/2 in src/3rdparty/os2 are distributed partly under the GNU Lesser General Public License 2.1, and partly under the (3-clause) BSD license. The exact licensing terms can be found in src/3rdparty/os2/getaddrinfo.c resp. src/3rdparty/os2/getnameinfo.c.

4.0 Credits

See CREDITS.md