(svn r25789) -Fix (r25783): Calling GSTown.FoundTown in world gen caused world gen...
[openttd/fttd.git] / readme.txt
blobefec00cf95126a0bcda4400b57497e959a637d89
1 Last updated:    2013-06-01
2 Release version: 1.3.1
3 ------------------------------------------------------------------------
6 Table of contents
7 -----------------
8 1.0) About
9 2.0) Contacting
10  * 2.1) Reporting bugs
11  * 2.2) Reporting desyncs
12 3.0) Supported platforms
13 4.0) Installing and running OpenTTD
14  * 4.1) (Required) 3rd party files
15  * 4.2) OpenTTD directories
16  * 4.3) Portable installations (portable media)
17  * 4.4) Files in tar (archives)
18 5.0) OpenTTD features
19  * 5.1) Logging of potentially dangerous actions
20 6.0) Configuration file
21 7.0) Compiling
22  * 7.1) Required/optional libraries
23  * 7.2) Supported compilers
24  * 7.3) Compilation of base sets
25 8.0) Translating
26  * 8.1) Translation
27  * 8.2) Previewing
28 9.0) Troubleshooting
29 10.0) Licensing
30 X.X) Credits
33 1.0) About
34 ---- -----
35 OpenTTD is a transport simulation game based upon the popular game Transport
36 Tycoon Deluxe, written by Chris Sawyer. It attempts to mimic the original
37 game as closely as possible while extending it with new features.
39 OpenTTD is licensed under the GNU General Public License version 2.0,
40 but includes some 3rd party software under different licenses. See the
41 section "Licensing" below for details.
43 2.0) Contacting
44 ---- ----------
45 The easiest way to contact the OpenTTD team is by submitting bug reports or
46 posting comments in our forums. You can also chat with us on IRC (#openttd
47 on irc.oftc.net).
49 The OpenTTD homepage is http://www.openttd.org/.
51 You can also find the OpenTTD forums at
52 http://forum.openttd.org/
54 2.1) Reporting bugs
55 ---- --------------
56 First of all, check whether the bug is not already known. Do this by looking
57 through the file called 'known-bugs.txt' which is distributed with OpenTTD
58 like this readme.
60 For tracking our bugs we are using a bug tracker called Flyspray. You can find
61 the tracker at http://bugs.openttd.org/. Before actually reporting take a look
62 through the already reported bugs there to see if the bug is already known.
63 The 'known-bugs.txt' file might be a bit outdated at the moment you are
64 reading it as only bugs known before the release are documented there. Also
65 look through the recently closed bugs.
67 When you are sure it is not already reported you should:
68  * Make sure you are running a recent version, i.e. run the latest stable or
69    nightly based on where you found the bug.
70  * Make sure you are not running a non-official binary, like a patch pack.
71    When you are playing with a patch pack you should report any bugs to the
72    forum thread related to that patch pack.
73  * Make it reproducible for the developers. In other words, create a savegame
74    in which you can reproduce the issue once loaded. It is very useful to give
75    us the crash.dmp, crash.sav, crash.log and crash screenshot which are
76    created on crashes.
77  * Check whether the bug is already reported on our bug tracker. This includes
78    searching for recently closed bug reports as the bug might already be fixed.
80 After you have done all that you can report the bug. Please include the
81 following information in your bug report:
82  * OpenTTD version (PLEASE test the latest SVN/nightly build)
83  * Bug details, including instructions how to reproduce it
84  * Platform (Windows, Linux, FreeBSD, ...) and compiler (including version) if
85    you compiled OpenTTD yourself.
86  * The processor architecture of your OS (32 bits Windows, 64 bits Windows,
87    Linux on an ARM, Mac OS X on a PowerPC, ...)
88  * Attach a saved game *and* a screenshot if possible
89  * If this bug only occurred recently please note the last version without
90    the bug and the first version including the bug. That way we can fix it
91    quicker by looking at the changes made.
92  * Attach crash.dmp, crash.log and crash.sav. These files are usually created
93    next to your openttd.cfg. The crash handler will tell you the location.
95 2.2) Reporting desyncs
96 ---- -----------------
97 As desyncs are hard to make reproducible OpenTTD has the ability to log all
98 actions done by clients so we can replay the whole game in an effort to make
99 desyncs better reproducible. You need to turn this ability on. When turned
100 on an automatic savegame will be made once the map has been constructed in
101 the 'save/autosave' directory, see OpenTTD directories to know where to find
102 this directory. Furthermore the log file 'commands-out.log' will be created
103 and all actions will be written to there.
105 To enable the desync debugging you need to set the debug level for 'desync'
106 to at least 1. You do this by starting OpenTTD with '-d desync=<level>' as
107 parameter or by typing 'debug_level desync=<level>' in OpenTTD's internal
108 console.
109 The desync debug levels are:
110  0: nothing.
111  1: dumping of commands to 'commands-out.log'.
112  2: same as 1 plus checking vehicle caches and dumping that too.
113  3: same as 2 plus monthly saves in autosave.
114  4 and higher: same as 3
116 Restarting OpenTTD will overwrite 'commands-out.log'. OpenTTD will not remove
117 the savegames (dmp_cmds_*.sav) made by the desync debugging system, so you
118 have to occasionally remove them yourself!
120 The naming format of the desync savegames is as follows:
121 dmp_cmds_XXXXXXXX_YYYYYYYY.sav. The XXXXXXXX is the hexadecimal representation
122 of the generation seed of the game and YYYYYYYY is the hexadecimal
123 representation of the date of the game. This sorts the savegames by game and
124 then by date making it easier to find the right savegames.
126 When a desync has occurred with the desync debugging turned on you should file
127 a bug report with the following files attached:
128  - commands-out.log as it contains all the commands that were done
129  - the last saved savegame (search for the last line beginning with
130    'save: dmp_cmds_' in commands-out.log). We use this savegame to check
131    whether we can quickly reproduce the desync. Otherwise we will need...
132  - the first saved savegame (search for the first line beginning with 'save'
133    where the first part, up to the last underscore '_', is the same). We need
134    this savegame to be able to reproduce the bug when the last savegame is not
135    old enough. If you loaded a scenario or savegame you need to attach that.
136  - optionally you can attach the savegames from around 50%, 75%, 85%, 90% and
137    95% of the game's progression. We can use these savegames to speed up the
138    reproduction of the desync, but we should be able to reproduce these
139    savegames based on the first savegame and commands-out.log.
140  - in case you use any NewGRFs you should attach the ones you used unless
141    we can easily find them ourselves via bananas or when they are in the
142    #openttdcoop pack.
144 Do NOT remove the dmp_cmds savegames of a desync you have reported until the
145 desync has been fixed; if you, by accident, send us the wrong savegames we
146 will not be able to reproduce the desync and thus will be unable to fix it.
149 3.0) Supported platforms
150 ---- -------------------
151 OpenTTD has been ported to several platforms and operating systems. It should
152 not be very difficult to port it to a new platform. The currently working
153 platforms are:
155   BeOS                 - SDL or Allegro
156   DOS                  - Allegro
157   FreeBSD              - SDL
158   Linux                - SDL or Allegro
159   MacOS X (universal)  - Cocoa video and sound drivers
160   MorphOS              - SDL
161   OpenBSD              - SDL
162   OS/2                 - SDL
163   Windows              - Win32 GDI (faster) or SDL or Allegro
166 4.0) Installing and running OpenTTD
167 ---- ------------------------------
168 Installing OpenTTD is fairly straightforward. Either you have downloaded an
169 archive which you have to extract to a directory where you want OpenTTD to
170 be installed, or you have downloaded an installer, which will automatically
171 extract OpenTTD in the given directory.
173 OpenTTD looks in multiple locations to find the required data files (described
174 in section 4.2). Installing any 3rd party files into a 'shared' location has
175 the advantage that you only need to do this step once, rather than copying the
176 data files into all OpenTTD versions you have.
177 Savegames, screenshots, etc are saved relative to the config file (openttd.cfg)
178 currently being used. This means that if you use a config file in one of the
179 shared directories, savegames will reside in the save/ directory next to the
180 openttd.cfg file there.
181 If you want savegames and screenshots in the directory where the OpenTTD binary
182 resides, simply have your config file in that location. But if you remove this
183 config file, savegames will still be in this directory (see notes in
184 section 4.2 'OpenTTD directories')
186 OpenTTD comes without AIs, so if you want to play with AIs you have to download
187 them. The easiest way is via the 'Check Online Content' button in the main menu.
188 You can select some AIs that you think are compatible with your playing style.
189 Another way is manually downloading the AIs from the forum although then you
190 need to make sure that you install all the required AI libraries too; they get
191 automatically selected (and downloaded) if you get the AIs via the 'Check
192 Online Content'. If you do not have an AI but have configured OpenTTD to start
193 an AI a message will be shown that the 'dummy' AI has been started.
195 4.1) (Required) 3rd party files
196 ---- --------------------------
197 Before you run OpenTTD, you need to put the game's data files into a baseset/
198 directory which can be located in various places addressed in the following
199 section.
201 For OpenTTD you need to acquire some third party data files. For this you have
202 the choice of using the original Transport Tycoon Deluxe data files or a set
203 of free data files.
205 Do NOT copy files included with OpenTTD into 'shared' directories (explained in
206 the following sections) as sooner or later you will run into graphical glitches
207 when using other versions of the game.
209 4.1.1) Free graphics and sound files
210 ------ -----------------------------
211 The free data files, split into OpenGFX for graphics, OpenSFX for sounds and
212 OpenMSX for music can be found at:
213  - http://www.openttd.org/download-opengfx for OpenGFX
214  - http://www.openttd.org/download-opensfx for OpenSFX
215  - http://www.openttd.org/download-openmsx for OpenMSX
216 Please follow the readme of these packages about the installation procedure.
217 The Windows installer can optionally download and install these packages.
219 4.1.2) Original Transport Tycoon Deluxe graphics and sound files
220 ------ ---------------------------------------------------------
221 If you want to play with the original Transport Tycoon Deluxe data files you
222 have to copy the data files from the CD-ROM into the baseset/ directory. It
223 does not matter whether you copy them from the DOS or Windows version of
224 Transport Tycoon Deluxe. The Windows install can optionally copy these files.
225 You need to copy the following files:
226  - sample.cat
227  - trg1r.grf or TRG1.GRF
228  - trgcr.grf or TRGC.GRF
229  - trghr.grf or TRGH.GRF
230  - trgir.grf or TRGI.GRF
231  - trgtr.grf or TRGT.GRF
233 4.1.3) Original Transport Tycoon Deluxe music
234 ------ --------------------------------------
235 If you want the Transport Tycoon Deluxe music, copy the files from the gm/
236 folder from the Windows version of Transport Tycoon Deluxe to the baseset
237 folder in your OpenTTD folder (also explained in the following sections).
238 The music from the DOS version as well as the original Transport Tycoon does
239 not work.
241 4.1.4) AIs
242 ------ ---
243 If you want AIs use the in-game content downloader. If for some reason that is
244 not possible or you want to use an AI that has not been uploaded to the content
245 download system download the tar file and place it in the ai/ directory. If the
246 AI needs libraries you will have to download those too and put them in the
247 ai/library/ directory. All AIs and AI Libraries that have been uploaded to
248 the content download system can be found at http://noai.openttd.org/downloads/
249 The AIs and libraries can be found their in the form of .tar.gz packages.
250 OpenTTD can read inside tar files but it does not extract .tar.gz files by
251 itself.
252 To figure out which libraries you need for an AI you have to start the AI and
253 wait for an error message to pop up. The error message will tell you
254 'could not find library "lib-name"'. Download that library and try again.
256 4.1.5) Game scripts
257 ------ ------------
258 If you want an extra challenge in OpenTTD you can download so-called game
259 scripts via the in-game content downloader. These game scripts have varying
260 functionality, though they can generally influence town growth, subsidies, add
261 goals to reach or provide a different ranking system.
262 If you download a game script manually you have to follow the same rules as for
263 AIs, except that game scripts are placed in the game/ directory instead of the
264 ai/ directory.
267 4.2) OpenTTD directories
268 ---- -------------------
269 OpenTTD uses its own directory to store its required 3rd party base set files
270 (see section 4.1 'Required 3rd party files') and non-compulsory extension and
271 configuration files. See below for their proper place within this OpenTTD main
272 data directory.
274 The main OpenTTD directories can be found in various locations, depending on
275 your operating system:
276         1. The current working directory (from where you started OpenTTD)
277                 For non-Windows operating systems OpenTTD will not scan for files in this
278                 directory if it is your personal directory, i.e. '~/', or when it is the
279                 root directory, i.e. '/'.
280         2. Your personal directory
281                 Windows: C:\My Documents\OpenTTD (95, 98, ME)
282                          C:\Documents and Settings\<username>\My Documents\OpenTTD (2000, XP)
283                          C:\Users\<username>\Documents\OpenTTD (Vista, 7)
284                 Mac OSX: ~/Documents/OpenTTD
285                 Linux:   ~/.openttd
286         3. The shared directory
287                 Windows: C:\Documents and Settings\All Users\Shared Documents\OpenTTD (2000, XP)
288                          C:\Users\Public\Documents\OpenTTD (Vista, 7)
289                 Mac OSX: /Library/Application Support/OpenTTD
290                 Linux:   not available
291         4. The binary directory (where the OpenTTD executable is)
292                 Windows: C:\Program Files\OpenTTD
293                 Linux:   /usr/games
294         5. The installation directory (Linux only)
295                 Linux:   /usr/share/games/openttd
296         6. The application bundle (Mac OSX only)
297                 It includes the OpenTTD files (grf+lng) and it will work as long as they
298                 are not touched
300 Different types of data or extensions go into different subdirectories of the
301 chosen main OpenTTD directory:
302         Config File:         (no subdirectory)
303         Screenshots:         screenshot
304         Base Graphics:       baseset                 (or a subdirectory thereof)
305         Sound Sets:          baseset                 (or a subdirectory thereof)
306         NewGRFs:             newgrf                  (or a subdirectory thereof)
307         32bpp Sets:          newgrf                  (or a subdirectory thereof)
308         Music Sets:          baseset                 (or a subdirectory thereof)
309         AIs:                 ai                      (or a subdirectory thereof)
310         AI Libraries:        ai/libraries            (or a subdirectory thereof)
311         Game Scripts (GS):   game                    (or a subdirectory thereof)
312         GS Libraries:        game/libraries          (or a subdirectory thereof)
313         Savegames:           save
314         Automatic Savegames: save/autosave
315         Scenarios:           scenario
317 The (automatically created) directory content_download is for OpenTTD's internal
318 use and no files should be added to it or its subdirectories manually.
320 Notes:
321         - Linux in the previous list means .deb, but most paths should be similar for
322           others.
323         - The previous search order is also used for NewGRFs and openttd.cfg.
324         - If openttd.cfg is not found, then it will be created using the 2, 4, 1, 3,
325           5 order.
326         - Savegames will be relative to the config file only if there is no save/
327           directory in paths with higher priority than the config file path, but
328           autosaves and screenshots will always be relative to the config file.
330 The preferred setup:
331 Place 3rd party files in shared directory (or in personal directory if you do
332 not have write access on shared directory) and have your openttd.cfg config
333 file in personal directory (where the game will then also place savegames and
334 screenshots).
336 4.3) Portable installations (portable media)
337 ---- ---------------------------------------
338 You can install OpenTTD on external media so you can take it with you, i.e.
339 using a USB key, or a USB HDD, etc.
340 Create a directory where you shall store the game in (i.e. OpenTTD/).
341 Copy the binary (OpenTTD.exe, OpenTTD.app, openttd, etc), baseset/ and your
342 openttd.cfg to this directory.
343 You can copy binaries for any operating system into this directory, which will
344 allow you to play the game on nearly any computer you can attach the external
345 media to.
346 As always - additional grf files are stored in the newgrf/ dir (for details,
347 again, see section 4.1).
349 4.4) Files in tar (archives)
350 ---- -----------------------
351 OpenTTD can read files that are in an uncompressed tar (archive), which
352 makes it easy to bundle files belonging to the same script, NewGRF or base
353 set. Music sets are the only exception as they cannot be stored in a tar
354 file due to being played by external applications.
356 OpenTTD sees each tar archive as the 'root' of its search path. This means that
357 having a file with the same path in two different tar files means that one
358 cannot be opened, after all only one file will be found first. As such it is
359 advisable to put an uniquely named folder in the root of the tar and put all the
360 content in that folder. For example, all downloaded content has a path that
361 concatenates the name of the content and the version, which makes the path
362 unique. For custom tar files it is advised to do this as well.
364 The normal files are also referred to by their relative path from the search
365 directory, this means that also normal files could hide files in a tar as
366 long as the relative path from the search path of the normal file is the
367 same as the path in the tar file. Again it is advised to have an unique path
368 to the normal file so they do not collide with the files from other tar
369 files.
372 5.0) OpenTTD features
373 ---- ----------------
374 OpenTTD has a lot of features going beyond the original Transport Tycoon Deluxe
375 emulation. Unfortunately, there is currently no comprehensive list of features,
376 but there is a basic features list on the web, and some optional features can be
377 controlled through the Advanced Settings dialog. We also implement some
378 features known from TTDPatch (http://www.ttdpatch.net/).
380 Several important non-standard controls:
382 * Ctrl modifies many commands and makes them more powerful. For example Ctrl
383   clicking on signals with the build signal tool changes their behaviour, holding
384   Ctrl while the track build tool is activated changes it to the track removal
385   tool, and so on. See http://wiki.openttd.org/Hidden_features for a non-
386   comprehensive list or look at the tooltips.
387 * Ingame console. More information at
388   http://wiki.openttd.org/index.php/Console
389 * Hovering over a GUI element shows tooltips. This can be changed to right click
390   via the advanced settings.
392 5.1) Logging of potentially dangerous actions
393 ---- ----------------------------------------
394 OpenTTD is a complex program, and together with NewGRF, it may show a buggy
395 behaviour. But not only bugs in code can cause problems. There are several
396 ways to affect game state possibly resulting in program crash or multiplayer
397 desyncs.
398 Easier way would be to forbid all these unsafe actions, but that would affect
399 game usability for many players. We certainly do not want that.
400 However, we receive bug reports because of this. To reduce time spent with
401 solving these problems, these potentially unsafe actions are logged in
402 the savegame (including crash.sav). Log is stored in crash logs, too.
404 Information logged:
406 * Adding / removing / changing order of NewGRFs
407 * Changing NewGRF parameters, loading compatible NewGRF
408 * Changing game mode (scenario editor <-> normal game)
409 * Loading game saved in a different OpenTTD / TTDPatch / Transport Tycoon Deluxe /
410   original Transport Tycoon version
411 * Running a modified OpenTTD build
412 * Changing settings affecting NewGRF behaviour (non-network-safe settings)
413 * Triggering NewGRF bugs
415 No personal information is stored.
417 You can show the game log by typing 'gamelog' in the console or by running
418 OpenTTD in debug mode.
421 6.0) Configuration file
422 ---- ------------------
423 The configuration file for OpenTTD (openttd.cfg) is in a simple Windows-like
424 .INI format. It is mostly undocumented. Almost all settings can be changed
425 ingame by using the 'Advanced Settings' window.
426 When you cannot find openttd.cfg you should look in the directories as
427 described in section 4.2. If you do not have an openttd.cfg OpenTTD will
428 create one after closing.
431 7.0) Compiling
432 ---- ---------
433 Windows:
434   You need Microsoft Visual Studio .NET. Open the project file
435   and it should build automatically. In case you want to build with SDL support
436   you need to add WITH_SDL to the project settings.
437   PNG (WITH_PNG) and ZLIB (WITH_ZLIB) support is enabled by default. For these
438   to work you need their development files. For best results, download the
439   openttd-useful.zip file from http://www.openttd.org/download-openttd-useful
440   Put the header files into your compiler's include/ directory and the
441   library (.lib) files into the lib/ directory.
442   For more help with VS see docs/Readme_Windows_MSVC.txt.
444   You can also build it using the Makefile with MSYS/MinGW or Cygwin/MinGW.
445   Please read the Makefile for more information.
447 Solaris, FreeBSD, OpenBSD:
448   Use 'gmake', but do a './configure' before the first build.
450 Linux/Unix:
451   OpenTTD can be built with GNU 'make'. On non-GNU systems it is called 'gmake'.
452   However, for the first build one has to do a './configure' first.
454 MacOS X:
455   Use 'make' or Xcode (which will then call make for you)
456   This will give you a binary for your CPU type (PPC/Intel)
457   However, for the first build one has to do a './configure' first.
458   To make a universal binary type './configure --enabled-universal'
459   instead of './configure'.
461 BeOS:
462   Use 'make', but do a './configure' before the first build.
464 MorphOS:
465   Use 'make'. However, for the first build one has to do a './configure' first.
466   Note that you need the MorphOS SDK, latest libnix updates (else C++ parts of
467   OpenTTD will not build) and the powersdl.library SDK. Optionally libz,
468   libpng and freetype2 developer files.
470 OS/2:
471   A comprehensive GNU build environment is required to build the OS/2 version.
472   See the docs/Readme_OS2.txt file for more information.
474 DOS:
475   A build environment with DJGPP is needed as well as libraries such as
476   Allegro, zlib and libpng, which all can be downloaded from the DJGPP
477   website. Compilation is straight forward: use make, but do a './configure'
478   before the first build. The build binary will need cwsdpmi.exe to be in
479   the same directory as the openttd executable. cwsdpmi.exe can be found in
480   the os/dos/cwsdpmi subdirectory. If you compile with stripping turned on a
481   binary will be generated that does not need cwsdpmi.exe by adding the
482   cswdstub.exe to the created OpenTTD binary.
484 7.1) Required/optional libraries
485 ---- ---------------------------
486 The following libraries are used by OpenTTD for:
487   - libSDL/liballegro: hardware access (video, sound, mouse)
488   - zlib: (de)compressing of old (0.3.0-1.0.5) savegames, content downloads,
489     heightmaps
490   - liblzo2: (de)compressing of old (pre 0.3.0) savegames
491   - liblzma: (de)compressing of savegames (1.1.0 and later)
492   - libpng: making screenshots and loading heightmaps
493   - libfreetype: loading generic fonts and rendering them
494   - libfontconfig: searching for fonts, resolving font names to actual fonts
495   - libicu: handling of right-to-left scripts (e.g. Arabic and Persian) and
496     natural sorting of strings.
498 OpenTTD does not require any of the libraries to be present, but without
499 liblzma you cannot open most recent savegames and without zlib you cannot
500 open most older savegames or use the content downloading system.
501 Without libSDL/liballegro on non-Windows and non-MacOS X machines you have
502 no graphical user interface; you would be building a dedicated server.
504 7.2) Supported compilers
505 ---- -------------------
506 The following compilers are known to compile OpenTTD:
507   - Microsoft Visual C++ (MSVC) 2005, 2008 and 2010.
508     Version 2005 gives bogus warnings about scoping issues.
509   - GNU Compiler Collection (GCC) 3.3 - 4.4, 4.6 - 4.8.
510     Versions 4.1 and earlier give bogus warnings about uninitialised variables.
511     Versions 4.4, 4.6 give bogus warnings about freeing non-heap objects.
512     Versions 4.6 and later give invalid warnings when lto is enabled.
513   - Intel C++ Compiler (ICC) 12.0.
514   - Clang/LLVM 2.9 - 3.0
515     Version 2.9 gives bogus warnings about code nonconformity.
517 The following compilers are known not to compile OpenTTD:
518   - Microsoft Visual C++ (MSVC) 2003 and earlier.
519   - GNU Compiler Collection (GCC) 3.2 and earlier.
520     These old versions fail due to OpenTTD's template usage.
521   - GNU Compiler Collection (GCC) 4.5. It optimizes enums too aggressively.
522     See http://bugs.openttd.org/task/5513 and references therein.
523   - Intel C++ Compiler (ICC) 11.1 and earlier.
524     Version 10.0 and earlier fail a configure check and fail with recent system
525         headers.
526     Version 10.1 fails to compile station_gui.cpp.
527     Version 11.1 fails with an internal error when compiling network.cpp.
528   - Clang/LLVM 2.8 and earlier.
529   - (Open) Watcom.
531 If any of these compilers can compile OpenTTD again, please let us know.
532 Patches to support more compilers are welcome.
534 7.3) Compilation of base sets
535 -----------------------------
536 To recompile the extra graphics needed to play with the original Transport
537 Tycoon Deluxe graphics you need GRFCodec (which includes NFORenum) as well.
538 GRFCodec can be found at: http://www.openttd.org/download-grfcodec
539 The compilation of these extra graphics does generally not happen, unless
540 you remove the graphics file using 'make maintainer-clean'.
542 Re-compilation of the base sets, thus also use of --maintainer-clean can
543 leave the repository in a modified state as different grfcodec versions can
544 cause binary differences in the resulting grf. Also translations might have
545 been added for the base sets which are not yet included in the base set
546 information files. Use the configure option --without-grfcodec to avoid
547 modification of the base set files by the build process.
550 8.0) Translating
551 ---- -----------
552 See http://www.openttd.org/development for up-to-date information.
554 The use of the online Translator service, located at
555 http://translator.openttd.org/, is highly encouraged. For getting an account
556 simply follow the guidelines in the FAQ of the translator website.
558 If for some reason the website is down for a longer period of time, the
559 information below might be of help.
561 Please contact the translations manager (http://www.openttd.org/contact)
562 before beginning the translation process! This avoids double work, as
563 someone else may have already started translating to the same language.
565 8.1) Translation
566 ---- -----------
567 So, now that you have notified the development team about your intention to
568 translate (You did, right? Of course you did.) you can pick up english.txt
569 (found in the SVN repository under /src/lang) and translate.
571 You must change the first two lines of the file appropriately:
573 ##name English-Name-Of-Language
574 ##ownname Native-Name-Of-Language
576 Note: Do not alter the following parts of the file:
578     * String identifiers (the first word on each line)
579     * Parts of the strings which are in curly braces (such as {STRING})
580     * Lines beginning with ## (such as ##id), other than the first two lines of
581       the file
583 8.2) Previewing
584 ---- ----------
585 In order to view the translation in the game, you need to compile your language
586 file with the strgen utility. As this utility is tailored to a specific OpenTTD
587 version, you need to compile it yourself. Just take the normal OpenTTD sources
588 and build that. During the build process the strgen utility will be made.
590 strgen is a command-line utility. It takes the language filename as parameter.
591 Example:
593 strgen lang/german.txt
595 This results in compiling german.txt and produces another file named german.lng.
596 Any missing strings are replaced with the English strings. Note that it looks
597 for english.txt in the lang subdirectory, which is where your language file
598 should also be.
600 That is all! You should now be able to select the language in the game options.
603 9.0) Troubleshooting
604 ---- ---------------
605 To see all startup options available to you, start OpenTTD with the
606 './openttd -h' option. This might help you tweak some of the settings.
608 If the game is acting strange and you feel adventurous you can try the
609 '-d [[<name>=]<level>]' flag, where the higher levels will give you more
610 debugging output. The 'name' variable can help you to display only some type of
611 debugging messages. This is mostly undocumented so best is to look in the
612 source code file debug.c for the various debugging types. For more information
613 look at http://wiki.openttd.org/index.php/Command_line.
615 The most frequent problem is missing data files. Please install OpenGFX and
616 possibly OpenSFX and OpenMSX. See section 4.1.1 for more information.
618 Under certain circumstance, especially on Ubuntu OpenTTD can be extremely slow
619 and/or freeze. See known-bugs.txt for more information and how to solve this
620 problem on your computer.
622 Under Windows 98 and lower it is impossible to use a dedicated server; it will
623 fail to start. Perhaps this is for the better because those OSes are not known
624 for their stability.
626 With the added support for font-based text selecting a non-latin language can
627 result in lots of question marks ('?') being shown on screen. Please open your
628 configuration file (openttd.cfg - see Section 4.2 for where to find it)
629 and add a suitable font for the small, medium and / or large font, e.g.:
630         small_font = "Tahoma"
631         medium_font = "Tahoma"
632         large_font = "Tahoma"
633 You should use a font name like 'Tahoma' or a path to the desired font.
635 Any NewGRF file used in a game is stored inside the savegame and will refuse
636 to load if you do not have that NewGRF file available. A list of missing files
637 can be viewed in the NewGRF window accessible from the file load dialogue window.
639 You can try to obtain the missing files from that NewGRF dialogue or - if they
640 are not available online - you can search manually through our forum's graphics
641 development section (http://www.tt-forums.net/viewforum.php?f=66) or GrfCrawler
642 (http://grfcrawler.tt-forums.net/). Put the NewGRF files in OpenTTD's newgrf folder
643 (see section 4.2 'OpenTTD directories') and rescan the list of available NewGRFs.
644 Once you have all missing files, you are set to go.
646 10.0) Licensing
647 ----- ---------
648 OpenTTD is licensed under the GNU General Public License version 2.0. For
649 the complete license text, see the file 'COPYING'. This license applies
650 to all files in this distribution, except as noted below.
652 The squirrel implementation in src/3rdparty/squirrel is licensed under
653 the Zlib license. See src/3rdparty/squirrel/COPYRIGHT for the complete
654 license text.
656 The md5 implementation in src/3rdparty/md5 is licensed under the Zlib
657 license. See the comments in the source files in src/3rdparty/md5 for
658 the complete license text.
660 The exe2coff implementation in os/dos/exe2coff is available under the
661 GPL, with a number of additional terms. See os/dos/exe2coff/copying and
662 os/dos/exe2coff/copying.dj for the exact licensing terms.
664 The CWSDPMI implementation in os/dos/cwsdpmi is distributed under a
665 custom binary-only license that prohibits modification. The exact
666 licensing terms can be found in os/dos/cwsdpmi/cwsdpmi.txt. The sources
667 for these files can be downloaded at it's author site, at:
668 http://homer.rice.edu/~sandmann/cwsdpmi/csdpmi5s.zip
670 X.X) Credits
671 ---- -------
672 The OpenTTD team (in alphabetical order):
673   Albert Hofkamp (Alberth)        - GUI expert
674   Jean-François Claeys (Belugas)  - GUI, newindustries and more
675   Matthijs Kooijman (blathijs)    - Pathfinder-guru, pool rework
676   Ulf Hermann (fonsinchen)        - Cargo Distribution
677   Christoph Elsenhans (frosch)    - General coding
678   Loïc Guilloux (glx)             - Windows Expert
679   Michael Lutz (michi_cc)         - Path based signals
680   Owen Rudge (orudge)             - Forum host, OS/2 port
681   Peter Nelson (peter1138)        - Spiritual descendant from newGRF gods
682   Ingo von Borstel (planetmaker)  - Support
683   Remko Bijker (Rubidium)         - Lead coder and way more
684   Zdeněk Sojka (SmatZ)            - Bug finder and fixer
685   José Soler (Terkhen)            - General coding
686   Thijs Marinussen (Yexo)         - AI Framework
687   Leif Linse (Zuu)                - AI/Game Script
689 Inactive Developers:
690   Bjarni Corfitzen (Bjarni)       - MacOSX port, coder and vehicles
691   Victor Fischer (Celestar)       - Programming everywhere you need him to
692   Tamás Faragó (Darkvater)        - Ex-Lead coder
693   Jaroslav Mazanec (KUDr)         - YAPG (Yet Another Pathfinder God) ;)
694   Jonathan Coome (Maedhros)       - High priest of the NewGRF Temple
695   Attila Bán (MiHaMiX)            - WebTranslator 1 and 2
696   Christoph Mallon (Tron)         - Programmer, code correctness police
698 Retired Developers:
699   Ludvig Strigeus (ludde)         - OpenTTD author, main coder (0.1 - 0.3.3)
700   Serge Paquet (vurlix)           - Assistant project manager, coder (0.1 - 0.3.3)
701   Dominik Scherer (dominik81)     - Lead programmer, GUI expert (0.3.0 - 0.3.6)
702   Benedikt Brüggemeier (skidd13)  - Bug fixer and code reworker
703   Patric Stout (TrueBrain)        - NoProgrammer (0.3 - 1.2), sys op (active)
705 Thanks to:
706   Josef Drexler                   - For his great work on TTDPatch.
707   Marcin Grzegorczyk              - For his TTDPatch work and documentation of Transport Tycoon Deluxe internals and track foundations
708   Petr Baudiš (pasky)             - Many patches, newgrf support, etc.
709   Simon Sasburg (HackyKid)        - For the many bugfixes he has blessed us with
710   Stefan Meißner (sign_de)        - For his work on the console
711   Mike Ragsdale                   - OpenTTD installer
712   Cian Duffy (MYOB)               - BeOS port / manual writing
713   Christian Rosentreter (tokai)   - MorphOS / AmigaOS port
714   Richard Kempton (RichK67)       - Additional airports, initial TGP implementation
715   Alberto Demichelis              - Squirrel scripting language
716   L. Peter Deutsch                - MD5 implementation
717   Michael Blunck                  - For revolutionizing TTD with awesome graphics
718   George                          - Canal graphics
719   Andrew Parkhouse (andythenorth) - River graphics
720   David Dallaston (Pikka)         - Tram tracks
721   All Translators                 - For their support to make OpenTTD a truly international game
722   Bug Reporters                   - Thanks for all bug reports
723   Chris Sawyer                    - For an amazing game!