From OpenTTD
Jump to: navigation, search
HAL (Hardware Abstraction Layer)


Window System

Using the Window System
Colour codes that exist in OpenTTD
Adding a text box
Understanding the widget focus system


Add a setting
Add a squirrel function
Do a savegame BUMP

The Map / Scenario

Understanding the Dynamic Landscape Array
Understanding the SaveGame Handler
HOWTO - Create good Scenarios
HOWTO - Add New Town Name Generators

The actual simulation

Using Orders
Train Acceleration

Language and Strings

Format of langfiles
Using OpenTTD Strings
List of Special Strings


The Core Interface

Starting a Server
Connecting to a Server
Using the list of LAN/Internet Games

The OpenTTD TCP Protocol
The OpenTTD UDP Protocol
HOWTO - Debug desyncs

Ingame Console

The Console Window
Using Console Scripting
HOWTO - Add Functions/Commands to the Console
HOWTO - Add Variables to the Console
HOWTO - Direct Variable Access using ICONSOLE_VAR_POINTER
OpenTTD Console Commands
OpenTTD Console Variables
Development History

Note: This is just a rough overview of what to do if you want to bump to a new savegame. I myself am not very experienced and hope some more experienced person will complete this to a minimalistic guide on how to create a new savegame version.

Important locations in the code to look at, when you want to do a savegame bump:

  • saveload.cpp:40
    • extern const uint16 SAVEGAME_VERSION = 103; // increase by one
  • openttd.cpp:AfterLoadGame(...) // use this to do default variable settings if a older save game was loaded
  • have a look at all the references of the class SaveLoad. Use SLE_ macros to add your variables to save
Personal tools