OpenTTD GitHub
Contributing to OpenTTD - guidelines
OpenTTD Doxygen
Coding style
Compiling OpenTTD
Debugging
Add a setting
Add a squirrel function
Understanding the SaveGame handler
Bumping the savegame version
Doing an OpenTTD release
Manual of style
Format of langfiles
Using OpenTTD strings
List of special strings
Using the window system
Colour codes that exist in OpenTTD
Adding a text box
Understanding the widget focus system
GUI style guide
The OpenTTD TCP protocol
The OpenTTD UDP protocol
Debugging desyncs
Server Admin Port development
The console window
Console commands
Console variables
Using console scripting
Adding functions/commands to the console
Adding variables to the console
Console development history
Graphics and similar (NewGRF)
AI framework (NoAI)
GameScript framework (NoGO)
Social Integration
Map array (landscape grid)
Vehicles
Pathfinding
Train acceleration
Sound IDs
Debugging/Troubleshooting
If you want to actively contribute to the development of Manual, you will need to debug your patch. Use your favourite debugger for debugging. In addition to that, OpenTTD has some debugger options that might help you.
If you just downloaded the game and something does not work, you also might to run the game with debugging enabled.
Debug Options
Starting the game with "-d 1" will enable global debug level '1'. All debug messages with a severity of 1 will be shown. Use the following syntax in a command line window:
user@home\> openttd -d 1
In addition to that, you can only show debug messages for certain areas of the game. Currently there are the following debug facilities:
NAME | EXPLANATION | SEVERITY |
driver | ||
map | ||
net | ||
oldloader | ||
npf | ||
yapf | ||
freetype | ||
script | ||
sl | ||
gamelog | ||
desync | ||
console | ||
misc | Will show messages for miscellaneous events. This includes loading of sound, video, or resorting of various items or general warning messages | 1, 2 |
sprite | Will show the processing of sprites | 1, 2 and 9 |
grf | Will show NewGRF messages, such as their copyright info (1) and notices if some parts failed to load, were loaded incorrectly, or are not yet supported (2) | 1, 2 |
You can combine any of these to get only their desired lvl. For example misc 1 and grf 1:
user@home\> openttd -d misc=1 grf=1
Debug messages with lvl 0 will always be shown, unless you remove these debugs. To strip the executable of any debug messages, compile with the flag:
NO_DEBUG_MESSAGES