changeset 17422:859ac1712288 draft

(svn r22172) -Add: Add ini files containing the table/settings data.
author alberth <alberth@openttd.org>
date Thu, 03 Mar 2011 21:04:17 +0000
parents 579c528e8fc8
children 208e71adf897
files src/table/company_settings.ini src/table/currency_settings.ini src/table/gameopt_settings.ini src/table/misc_settings.ini src/table/music_settings.ini src/table/settings.ini src/table/win32_settings.ini
diffstat 7 files changed, 4589 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
new file mode 100644
--- /dev/null
+++ b/src/table/company_settings.ini
@@ -0,0 +1,120 @@
+[pre-amble]
+static const SettingDesc _company_settings[] = {
+[post-amble]
+};
+[templates]
+SDT_BOOL = SDT_BOOL($base, $var,        $flags, $guiflags, $def,                        $str, $proc),
+SDT_VAR  =  SDT_VAR($base, $var, $type, $flags, $guiflags, $def, $min, $max, $interval, $str, $proc),
+SDT_END  = SDT_END()
+
+
+
+[SDT_BOOL]
+base     = CompanySettings
+var      = engine_renew
+flags    = 0
+guiflags = PC
+def      = false
+str      = STR_CONFIG_SETTING_AUTORENEW_VEHICLE
+proc     = NULL
+
+[SDT_VAR]
+base     = CompanySettings
+var      = engine_renew_months
+type     = SLE_INT16
+flags    = 0
+guiflags = PC
+def      = 6
+min      = -12
+max      = 12
+interval = 0
+str      = STR_CONFIG_SETTING_AUTORENEW_MONTHS
+proc     = NULL
+
+[SDT_VAR]
+base     = CompanySettings
+var      = engine_renew_money
+type     = SLE_UINT
+flags    = 0
+guiflags = PC|CR
+def      = 100000
+min      = 0
+max      = 2000000
+interval = 0
+str      = STR_CONFIG_SETTING_AUTORENEW_MONEY
+proc     = NULL
+
+[SDT_BOOL]
+base     = CompanySettings
+var      = renew_keep_length
+flags    = 0
+guiflags = PC
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDT_BOOL]
+base     = CompanySettings
+var      = vehicle.servint_ispercent
+flags    = 0
+guiflags = PC
+def      = false
+str      = STR_CONFIG_SETTING_SERVINT_ISPERCENT
+proc     = CheckInterval
+
+[SDT_VAR]
+base     = CompanySettings
+var      = vehicle.servint_trains
+type     = SLE_UINT16
+flags    = 0
+guiflags = PC|D0
+def      = 150
+min      = 5
+max      = 800
+interval = 0
+str      = STR_CONFIG_SETTING_SERVINT_TRAINS
+proc     = InvalidateDetailsWindow
+
+[SDT_VAR]
+base     = CompanySettings
+var      = vehicle.servint_roadveh
+type     = SLE_UINT16
+flags    = 0
+guiflags = PC|D0
+def      = 150
+min      = 5
+max      = 800
+interval = 0
+str      = STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES
+proc     = InvalidateDetailsWindow
+
+[SDT_VAR]
+base     = CompanySettings
+var      = vehicle.servint_ships
+type     = SLE_UINT16
+flags    = 0
+guiflags = PC|D0
+def      = 360
+min      = 5
+max      = 800
+interval = 0
+str      = STR_CONFIG_SETTING_SERVINT_SHIPS
+proc     = InvalidateDetailsWindow
+
+[SDT_VAR]
+base     = CompanySettings
+var      = vehicle.servint_aircraft
+type     = SLE_UINT16
+flags    = 0
+guiflags = PC|D0
+def      = 100
+min      = 5
+max      = 800
+interval = 0
+str      = STR_CONFIG_SETTING_SERVINT_AIRCRAFT
+proc     = InvalidateDetailsWindow
+
+[SDT_END]
+
+
+};
new file mode 100644
--- /dev/null
+++ b/src/table/currency_settings.ini
@@ -0,0 +1,67 @@
+[pre-amble]
+static const SettingDesc _currency_settings[] = {
+[post-amble]
+};
+[templates]
+SDT_VAR = SDT_VAR($base, $var, $type, $flags, $guiflags, $def, $min, $max, $interval, $str, $proc),
+SDT_CHR = SDT_CHR($base, $var,        $flags, $guiflags, $def,                        $str, $proc),
+SDT_STR = SDT_STR($base, $var, $type, $flags, $guiflags, $def,                        $str, $proc),
+SDT_END = SDT_END()
+
+[SDT_VAR]
+base     = CurrencySpec
+var      = rate
+type     = SLE_UINT16
+flags    = S
+guiflags = 0
+def      = 1
+min      = 0
+max      = UINT16_MAX
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CHR]
+base     = CurrencySpec
+var      = separator
+flags    = S
+guiflags = 0
+def      = "".""
+str      = STR_NULL
+proc     = NULL
+
+[SDT_VAR]
+base     = CurrencySpec
+var      = to_euro
+type     = SLE_INT32
+flags    = S
+guiflags = 0
+def      = 0
+min      = MIN_YEAR
+max      = MAX_YEAR
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_STR]
+base     = CurrencySpec
+var      = prefix
+type     = SLE_STRBQ
+flags    = S
+guiflags = 0
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDT_STR]
+base     = CurrencySpec
+var      = suffix
+type     = SLE_STRBQ
+flags    = S
+guiflags = 0
+def      = "" credits""
+str      = STR_NULL
+proc     = NULL
+
+[SDT_END]
+
new file mode 100644
--- /dev/null
+++ b/src/table/gameopt_settings.ini
@@ -0,0 +1,190 @@
+[pre-amble]
+static const uint GAME_DIFFICULTY_NUM = 18;
+static uint16 _old_diff_custom[GAME_DIFFICULTY_NUM];
+
+/* Most of these strings are used both for gameopt-backward compatability
+ * and the settings tables. The rest is here for consistency. */
+static const char *_locale_currencies = "GBP|USD|EUR|YEN|ATS|BEF|CHF|CZK|DEM|DKK|ESP|FIM|FRF|GRD|HUF|ISK|ITL|NLG|NOK|PLN|RON|RUR|SIT|SEK|YTL|SKK|BRL|EEK|custom";
+static const char *_locale_units = "imperial|metric|si";
+static const char *_town_names = "english|french|german|american|latin|silly|swedish|dutch|finnish|polish|slovak|norwegian|hungarian|austrian|romanian|czech|swiss|danish|turkish|italian|catalan";
+static const char *_climates = "temperate|arctic|tropic|toyland";
+static const char *_autosave_interval = "off|monthly|quarterly|half year|yearly";
+static const char *_roadsides = "left|right";
+static const char *_savegame_date = "long|short|iso";
+#ifdef ENABLE_NETWORK
+static const char *_server_langs = "ANY|ENGLISH|GERMAN|FRENCH|BRAZILIAN|BULGARIAN|CHINESE|CZECH|DANISH|DUTCH|ESPERANTO|FINNISH|HUNGARIAN|ICELANDIC|ITALIAN|JAPANESE|KOREAN|LITHUANIAN|NORWEGIAN|POLISH|PORTUGUESE|ROMANIAN|RUSSIAN|SLOVAK|SLOVENIAN|SPANISH|SWEDISH|TURKISH|UKRAINIAN|AFRIKAANS|CROATIAN|CATALAN|ESTONIAN|GALICIAN|GREEK|LATVIAN";
+#endif /* ENABLE_NETWORK */
+
+static const SettingDesc _gameopt_settings[] = {
+	/* In version 4 a new difficulty setting has been added to the difficulty settings,
+	 * town attitude towards demolishing. Needs special handling because some dimwit thought
+	 * it funny to have the GameDifficulty struct be an array while it is a struct of
+	 * same-sized members
+	 * XXX - To save file-space and since values are never bigger than about 10? only
+	 * save the first 16 bits in the savegame. Question is why the values are still int32
+	 * and why not byte for example?
+	 * 'SLE_FILE_I16 | SLE_VAR_U16' in "diff_custom" is needed to get around SlArray() hack
+	 * for savegames version 0 - though it is an array, it has to go through the byteswap process */
+[post-amble]
+};
+[templates]
+SDTG_GENERAL   = SDTG_GENERAL($name, $sdt_cmd, $sle_cmd, $type, $flags, $guiflags, $var, $length, $def, $min, $max, $interval, $full, $str, $proc, $from, $to),
+SDT_CONDNULL   = SDT_CONDNULL($length, $from, $to),
+SDTC_CONDOMANY = SDTC_CONDOMANY(  $var, $type, $from, $to, $flags, $guiflags, $def,       $max, $full,            $str, $proc),
+SDT_OMANY      = SDT_OMANY($base, $var, $type,             $flags, $guiflags, $def,       $max, $full,            $str, $proc, $load),
+SDT_VAR        =   SDT_VAR($base, $var, $type,             $flags, $guiflags, $def, $min, $max,        $interval, $str, $proc),
+SDT_END        = SDT_END()
+
+
+[SDTG_GENERAL]
+name     = ""diff_custom""
+sdt_cmd  = SDT_INTLIST
+sle_cmd  = SL_ARR
+type     = SLE_FILE_I16 | SLE_VAR_U16
+flags    = C
+guiflags = 0
+var      = _old_diff_custom
+length   = 17
+def      = 0
+min      = 0
+max      = 0
+interval = 0
+full     = NULL
+str      = STR_NULL
+proc     = NULL
+from     = 0
+to       = 3
+
+[SDTG_GENERAL]
+name     = ""diff_custom""
+sdt_cmd  = SDT_INTLIST
+sle_cmd  = SL_ARR
+type     = SLE_UINT16
+flags    = C
+guiflags = 0
+var      = _old_diff_custom
+length   = 18
+def      = 0
+min      = 0
+max      = 0
+interval = 0
+full     = NULL
+str      = STR_NULL
+proc     = NULL
+from     = 4
+to       = SL_MAX_VERSION
+
+##
+[SDT_VAR]
+base     = GameSettings
+var      = difficulty.diff_level
+type     = SLE_UINT8
+flags    = 0
+guiflags = 0
+def      = 3
+min      = 0
+max      = 3
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_OMANY]
+base     = GameSettings
+var      = locale.currency
+type     = SLE_UINT8
+flags    = N
+guiflags = 0
+def      = 0
+max      = CUSTOM_CURRENCY_ID
+full     = _locale_currencies
+str      = STR_NULL
+proc     = NULL
+load     = NULL
+
+[SDT_OMANY]
+base     = GameSettings
+var      = locale.units
+type     = SLE_UINT8
+flags    = N
+guiflags = 0
+def      = 1
+max      = 2
+full     = _locale_units
+str      = STR_NULL
+proc     = NULL
+load     = NULL
+
+# There are only 21 predefined town_name values (0-20), but you can have more with newgrf action F so allow
+# these bigger values (21-255). Invalid values will fallback to english on use and (undefined string) in GUI.
+[SDT_OMANY]
+base     = GameSettings
+var      = game_creation.town_name
+type     = SLE_UINT8
+flags    = 0
+guiflags = 0
+def      = 0
+max      = 255
+full     = _town_names
+str      = STR_NULL
+proc     = NULL
+load     = NULL
+
+[SDT_OMANY]
+base     = GameSettings
+var      = game_creation.landscape
+type     = SLE_UINT8
+flags    = 0
+guiflags = 0
+def      = 0
+max      = 3
+full     = _climates
+str      = STR_NULL
+proc     = NULL
+load     = ConvertLandscape
+
+[SDT_VAR]
+base     = GameSettings
+var      = game_creation.snow_line
+type     = SLE_UINT8
+flags    = 0
+guiflags = 0
+def      = DEF_SNOWLINE_HEIGHT * TILE_HEIGHT
+min      = MIN_SNOWLINE_HEIGHT * TILE_HEIGHT
+max      = MAX_SNOWLINE_HEIGHT * TILE_HEIGHT
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDNULL]
+length   = 1
+from     = 0
+to       = 22
+
+[SDTC_CONDOMANY]
+var      = gui.autosave
+type     = SLE_UINT8
+from     = 23
+to       = SL_MAX_VERSION
+flags    = S
+guiflags = 0
+def      = 1
+max      = 4
+full     = _autosave_interval
+str      = STR_NULL
+proc     = NULL
+
+[SDT_OMANY]
+base     = GameSettings
+var      = vehicle.road_side
+type     = SLE_UINT8
+flags    = 0
+guiflags = 0
+def      = 1
+max      = 1
+full     = _roadsides
+str      = STR_NULL
+proc     = NULL
+load     = NULL
+
+[SDT_END]
+
new file mode 100644
--- /dev/null
+++ b/src/table/misc_settings.ini
@@ -0,0 +1,358 @@
+[pre-amble]
+extern char _config_language_file[MAX_PATH];
+
+static const SettingDescGlobVarList _misc_settings[] = {
+[post-amble]
+};
+[templates]
+SDTG_CONDLIST = SDTG_CONDLIST($name, $type, $length, $flags, $guiflags, $var, $def,                               $str, $proc, $from, $to),
+SDTG_MMANY    =    SDTG_MMANY($name, $type,          $flags, $guiflags, $var, $def,                        $full, $str, $proc),
+SDTG_STR      =      SDTG_STR($name, $type,          $flags, $guiflags, $var, $def,                               $str, $proc),
+SDTG_BOOL     =     SDTG_BOOL($name,                 $flags, $guiflags, $var, $def,                               $str, $proc),
+SDTG_VAR      =      SDTG_VAR($name, $type,          $flags, $guiflags, $var, $def, $min, $max, $interval,        $str, $proc),
+SDTG_END      = SDTG_END()
+
+[SDTG_MMANY]
+name     = ""display_opt""
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+var      = _display_opt
+def      = (1 << DO_SHOW_TOWN_NAMES | 1 << DO_SHOW_STATION_NAMES | 1 << DO_SHOW_SIGNS | 1 << DO_FULL_ANIMATION | 1 << DO_FULL_DETAIL | 1 << DO_SHOW_WAYPOINT_NAMES)
+full     = ""SHOW_TOWN_NAMES|SHOW_STATION_NAMES|SHOW_SIGNS|FULL_ANIMATION||FULL_DETAIL|WAYPOINTS""
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_BOOL]
+name     = ""news_ticker_sound""
+flags    = S
+guiflags = 0
+var      = _news_ticker_sound
+def      = true
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_BOOL]
+name     = ""fullscreen""
+flags    = S
+guiflags = 0
+var      = _fullscreen
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_STR]
+name     = ""graphicsset""
+type     = SLE_STRQ
+flags    = S
+guiflags = 0
+var      = BaseGraphics::ini_set
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_STR]
+name     = ""soundsset""
+type     = SLE_STRQ
+flags    = S
+guiflags = 0
+var      = BaseSounds::ini_set
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_STR]
+name     = ""musicset""
+type     = SLE_STRQ
+flags    = S
+guiflags = 0
+var      = BaseMusic::ini_set
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_STR]
+name     = ""videodriver""
+type     = SLE_STRQ
+flags    = S
+guiflags = 0
+var      = _ini_videodriver
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_STR]
+name     = ""musicdriver""
+type     = SLE_STRQ
+flags    = S
+guiflags = 0
+var      = _ini_musicdriver
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_STR]
+name     = ""sounddriver""
+type     = SLE_STRQ
+flags    = S
+guiflags = 0
+var      = _ini_sounddriver
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_STR]
+name     = ""blitter""
+type     = SLE_STRQ
+flags    = S
+guiflags = 0
+var      = _ini_blitter
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_STR]
+name     = ""language""
+type     = SLE_STRB
+flags    = S
+guiflags = 0
+var      = _config_language_file
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+; workaround for implicit lengthof() in SDTG_LIST
+[SDTG_CONDLIST]
+name     = ""resolution""
+type     = SLE_INT
+length   = 2
+flags    = S
+guiflags = 0
+var      = _cur_resolution
+def      = ""640,480""
+str      = STR_NULL
+proc     = NULL
+from     = 0
+to       = SL_MAX_VERSION
+
+[SDTG_STR]
+name     = ""screenshot_format""
+type     = SLE_STRB
+flags    = S
+guiflags = 0
+var      = _screenshot_format_name
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_STR]
+name     = ""savegame_format""
+type     = SLE_STRB
+flags    = S
+guiflags = 0
+var      = _savegame_format
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_BOOL]
+name     = ""rightclick_emulate""
+flags    = S
+guiflags = 0
+var      = _rightclick_emulate
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_STR]
+ifdef    = WITH_FREETYPE
+name     = ""small_font""
+type     = SLE_STRB
+flags    = S
+guiflags = 0
+var      = _freetype.small_font
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_STR]
+ifdef    = WITH_FREETYPE
+name     = ""medium_font""
+type     = SLE_STRB
+flags    = S
+guiflags = 0
+var      = _freetype.medium_font
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_STR]
+ifdef    = WITH_FREETYPE
+name     = ""large_font""
+type     = SLE_STRB
+flags    = S
+guiflags = 0
+var      = _freetype.large_font
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_VAR]
+ifdef    = WITH_FREETYPE
+name     = ""small_size""
+type     = SLE_UINT
+flags    = S
+guiflags = 0
+var      = _freetype.small_size
+def      = 8
+min      = 0
+max      = 72
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_VAR]
+ifdef    = WITH_FREETYPE
+name     = ""medium_size""
+type     = SLE_UINT
+flags    = S
+guiflags = 0
+var      = _freetype.medium_size
+def      = 10
+min      = 0
+max      = 72
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_VAR]
+ifdef    = WITH_FREETYPE
+name     = ""large_size""
+type     = SLE_UINT
+flags    = S
+guiflags = 0
+var      = _freetype.large_size
+def      = 16
+min      = 0
+max      = 72
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_BOOL]
+ifdef    = WITH_FREETYPE
+name     = ""small_aa""
+flags    = S
+guiflags = 0
+var      = _freetype.small_aa
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_BOOL]
+ifdef    = WITH_FREETYPE
+name     = ""medium_aa""
+flags    = S
+guiflags = 0
+var      = _freetype.medium_aa
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_BOOL]
+ifdef    = WITH_FREETYPE
+name     = ""large_aa""
+flags    = S
+guiflags = 0
+var      = _freetype.large_aa
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_VAR]
+name     = ""sprite_cache_size""
+type     = SLE_UINT
+flags    = S
+guiflags = 0
+var      = _sprite_cache_size
+def      = 4
+min      = 1
+max      = 64
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_VAR]
+name     = ""player_face""
+type     = SLE_UINT32
+flags    = S
+guiflags = 0
+var      = _company_manager_face
+def      = 0
+min      = 0
+max      = 0xFFFFFFFF
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_VAR]
+name     = ""transparency_options""
+type     = SLE_UINT
+flags    = S
+guiflags = 0
+var      = _transparency_opt
+def      = 0
+min      = 0
+max      = 0x1FF
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_VAR]
+name     = ""transparency_locks""
+type     = SLE_UINT
+flags    = S
+guiflags = 0
+var      = _transparency_lock
+def      = 0
+min      = 0
+max      = 0x1FF
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_VAR]
+name     = ""invisibility_options""
+type     = SLE_UINT
+flags    = S
+guiflags = 0
+var      = _invisibility_opt
+def      = 0
+min      = 0
+max      = 0xFF
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_STR]
+name     = ""keyboard""
+type     = SLE_STRB
+flags    = S
+guiflags = 0
+var      = _keyboard_opt[0]
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_STR]
+name     = ""keyboard_caps""
+type     = SLE_STRB
+flags    = S
+guiflags = 0
+var      = _keyboard_opt[1]
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_END]
+
new file mode 100644
--- /dev/null
+++ b/src/table/music_settings.ini
@@ -0,0 +1,91 @@
+[pre-amble]
+static const SettingDesc _music_settings[] = {
+[post-amble]
+};
+[templates]
+SDT_BOOL = SDT_BOOL($base, $var,        $flags, $guiflags, $def,                        $str, $proc),
+SDT_VAR  =  SDT_VAR($base, $var, $type, $flags, $guiflags, $def, $min, $max, $interval, $str, $proc),
+SDT_LIST = SDT_LIST($base, $var, $type, $flags, $guiflags, $def,                        $str, $proc),
+SDT_END  = SDT_END()
+
+[SDT_VAR]
+base     = MusicFileSettings
+var      = playlist
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+def      = 0
+min      = 0
+max      = 5
+interval = 1
+str      = STR_NULL
+proc     = NULL
+
+[SDT_VAR]
+base     = MusicFileSettings
+var      = music_vol
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+def      = 127
+min      = 0
+max      = 127
+interval = 1
+str      = STR_NULL
+proc     = NULL
+
+[SDT_VAR]
+base     = MusicFileSettings
+var      = effect_vol
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+def      = 127
+min      = 0
+max      = 127
+interval = 1
+str      = STR_NULL
+proc     = NULL
+
+[SDT_LIST]
+base     = MusicFileSettings
+var      = custom_1
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDT_LIST]
+base     = MusicFileSettings
+var      = custom_2
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDT_BOOL]
+base     = MusicFileSettings
+var      = playing
+flags    = S
+guiflags = 0
+def      = true
+str      = STR_NULL
+proc     = NULL
+
+[SDT_BOOL]
+base     = MusicFileSettings
+var      = shuffle
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDT_END]
+
+
+};
new file mode 100644
--- /dev/null
+++ b/src/table/settings.ini
@@ -0,0 +1,3701 @@
+[pre-amble]
+/* Some settings do not need to be synchronised when playing in multiplayer.
+ * These include for example the GUI settings and will not be saved with the
+ * savegame.
+ * It is also a bit tricky since you would think that service_interval
+ * for example doesn't need to be synched. Every client assigns the
+ * service_interval value to the v->service_interval, meaning that every client
+ * assigns his value. If the setting was company-based, that would mean that
+ * vehicles could decide on different moments that they are heading back to a
+ * service depot, causing desyncs on a massive scale. */
+const SettingDesc _settings[] = {
+[post-amble]
+};
+[templates]
+SDTG_CONDBOOL = SDTG_CONDBOOL($name,                          $flags, $guiflags, $var, $def,                        $str, $proc, $from, $to),
+SDTG_CONDVAR  =  SDTG_CONDVAR($name,       $type,             $flags, $guiflags, $var, $def, $min, $max, $interval, $str, $proc, $from, $to),
+SDTC_BOOL     =     SDTC_BOOL(       $var,                    $flags, $guiflags, $def,                              $str, $proc),
+SDT_BOOL      =      SDT_BOOL($base, $var,                    $flags, $guiflags, $def,                              $str, $proc),
+SDTC_CONDBOOL = SDTC_CONDBOOL(       $var,        $from, $to, $flags, $guiflags, $def,                              $str, $proc),
+SDT_CONDBOOL  =  SDT_CONDBOOL($base, $var,        $from, $to, $flags, $guiflags, $def,                              $str, $proc),
+SDTC_OMANY    =    SDTC_OMANY(       $var, $type,             $flags, $guiflags, $def,             $max, $full,     $str, $proc),
+SDT_CONDOMANY = SDT_CONDOMANY($base, $var, $type, $from, $to, $flags, $guiflags, $def,             $max, $full,     $str, $proc, $load),
+SDT_CONDSTR   =   SDT_CONDSTR($base, $var, $type, $from, $to, $flags, $guiflags, $def,                              $str, $proc),
+SDT_CONDVAR   =   SDT_CONDVAR($base, $var, $type, $from, $to, $flags, $guiflags, $def,       $min, $max, $interval, $str, $proc),
+SDTC_STR      =      SDTC_STR(       $var, $type,             $flags, $guiflags, $def,                              $str, $proc),
+SDTC_VAR      =      SDTC_VAR(       $var, $type,             $flags, $guiflags, $def,       $min, $max, $interval, $str, $proc),
+SDT_VAR       =       SDT_VAR($base, $var, $type,             $flags, $guiflags, $def,       $min, $max, $interval, $str, $proc),
+SDT_CONDNULL  = SDT_CONDNULL($length, $from, $to),
+SDT_END       = SDT_END()
+
+
+
+; Saved settings variables.
+; Do not ADD or REMOVE something in this "difficulty.XXX" table or before it. It breaks savegame compatability.
+[SDT_CONDVAR]
+base     = GameSettings
+var      = difficulty.max_no_competitors
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 0
+min      = 0
+max      = MAX_COMPANIES-1
+interval = 1
+str      = STR_NULL
+proc     = MaxNoAIsChange
+
+[SDT_CONDNULL]
+length   = 1
+from     = 97
+to       = 109
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = difficulty.number_towns
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NG
+def      = 2
+min      = 0
+max      = 4
+interval = 1
+str      = STR_NUM_VERY_LOW
+proc     = DifficultyChange
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = difficulty.industry_density
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NG
+def      = ID_END-1
+min      = 0
+max      = ID_END-1
+interval = 1
+str      = STR_FUNDING_ONLY
+proc     = DifficultyChange
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = difficulty.max_loan
+type     = SLE_UINT32
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NS|CR
+def      = 300000
+min      = 100000
+max      = 500000
+interval = 50000
+str      = STR_NULL
+proc     = DifficultyChange
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = difficulty.initial_interest
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NS
+def      = 2
+min      = 2
+max      = 4
+interval = 1
+str      = STR_NULL
+proc     = DifficultyChange
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = difficulty.vehicle_costs
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NS
+def      = 0
+min      = 0
+max      = 2
+interval = 1
+str      = STR_SEA_LEVEL_LOW
+proc     = DifficultyChange
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = difficulty.competitor_speed
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 2
+min      = 0
+max      = 4
+interval = 1
+str      = STR_AI_SPEED_VERY_SLOW
+proc     = DifficultyChange
+
+[SDT_CONDNULL]
+length   = 1
+from     = 97
+to       = 109
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = difficulty.vehicle_breakdowns
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 1
+min      = 0
+max      = 2
+interval = 1
+str      = STR_DISASTER_NONE
+proc     = DifficultyChange
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = difficulty.subsidy_multiplier
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 2
+min      = 0
+max      = 3
+interval = 1
+str      = STR_SUBSIDY_X1_5
+proc     = DifficultyChange
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = difficulty.construction_cost
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NS
+def      = 0
+min      = 0
+max      = 2
+interval = 1
+str      = STR_SEA_LEVEL_LOW
+proc     = DifficultyChange
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = difficulty.terrain_type
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NG
+def      = 1
+min      = 0
+max      = 3
+interval = 1
+str      = STR_TERRAIN_TYPE_VERY_FLAT
+proc     = DifficultyChange
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = difficulty.quantity_sea_lakes
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NG
+def      = 0
+min      = 0
+max      = 4
+interval = 1
+str      = STR_SEA_LEVEL_VERY_LOW
+proc     = DifficultyChange
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = difficulty.economy
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 0
+min      = 0
+max      = 1
+interval = 1
+str      = STR_ECONOMY_STEADY
+proc     = DifficultyChange
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = difficulty.line_reverse_mode
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 0
+min      = 0
+max      = 1
+interval = 1
+str      = STR_REVERSE_AT_END_OF_LINE_AND_AT_STATIONS
+proc     = DifficultyChange
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = difficulty.disasters
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 0
+min      = 0
+max      = 1
+interval = 1
+str      = STR_DISASTERS_OFF
+proc     = DifficultyChange
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = difficulty.town_council_tolerance
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 0
+min      = 0
+max      = 2
+interval = 1
+str      = STR_CITY_APPROVAL_PERMISSIVE
+proc     = DifficultyNoiseChange
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = difficulty.diff_level
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 3
+min      = 0
+max      = 3
+interval = 0
+str      = STR_NULL
+proc     = DifficultyReset
+
+; There are only 21 predefined town_name values (0-20), but you can have more with newgrf action F so allow
+; these bigger values (21-255). Invalid values will fallback to english on use and (undefined string) in GUI.
+[SDT_CONDOMANY]
+base     = GameSettings
+var      = game_creation.town_name
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NN
+def      = 0
+max      = 255
+full     = _town_names
+str      = STR_NULL
+proc     = NULL
+load     = NULL
+
+[SDT_CONDOMANY]
+base     = GameSettings
+var      = game_creation.landscape
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NN
+def      = 0
+max      = 3
+full     = _climates
+str      = STR_NULL
+proc     = NULL
+load     = ConvertLandscape
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = game_creation.snow_line
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NN
+def      = DEF_SNOWLINE_HEIGHT * TILE_HEIGHT
+min      = MIN_SNOWLINE_HEIGHT * TILE_HEIGHT
+max      = MAX_SNOWLINE_HEIGHT * TILE_HEIGHT
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDOMANY]
+base     = GameSettings
+var      = vehicle.road_side
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NN
+def      = 1
+max      = 1
+full     = _roadsides
+str      = STR_NULL
+proc     = CheckRoadSide
+load     = NULL
+
+; Construction
+
+[SDT_BOOL]
+base     = GameSettings
+var      = construction.build_on_slopes
+flags    = 0
+guiflags = NN
+def      = true
+str      = STR_CONFIG_SETTING_BUILDONSLOPES
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = construction.command_pause_level
+type     = SLE_UINT8
+from     = 154
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = MS|NN
+def      = 1
+min      = 0
+max      = 3
+interval = 1
+str      = STR_CONFIG_SETTING_COMMAND_PAUSE_LEVEL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = construction.terraform_per_64k_frames
+type     = SLE_UINT32
+from     = 156
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 64 << 16
+min      = 0
+max      = 1 << 30
+interval = 1
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = construction.terraform_frame_burst
+type     = SLE_UINT16
+from     = 156
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 4096
+min      = 0
+max      = 1 << 30
+interval = 1
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = construction.clear_per_64k_frames
+type     = SLE_UINT32
+from     = 156
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 64 << 16
+min      = 0
+max      = 1 << 30
+interval = 1
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = construction.clear_frame_burst
+type     = SLE_UINT16
+from     = 156
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 4096
+min      = 0
+max      = 1 << 30
+interval = 1
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = construction.autoslope
+from     = 75
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_AUTOSLOPE
+proc     = NULL
+
+[SDT_BOOL]
+base     = GameSettings
+var      = construction.extra_dynamite
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_EXTRADYNAMITE
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = construction.max_bridge_length
+type     = SLE_UINT16
+from     = 159
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NN
+def      = 64
+min      = 1
+max      = 2048
+interval = 1
+str      = STR_CONFIG_SETTING_MAX_BRIDGE_LENGTH
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = construction.max_tunnel_length
+type     = SLE_UINT16
+from     = 159
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NN
+def      = 64
+min      = 1
+max      = 2048
+interval = 1
+str      = STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH
+proc     = NULL
+
+# construction.longbridges
+[SDT_CONDNULL]
+length   = 1
+from     = 0
+to       = 158
+
+[SDT_BOOL]
+base     = GameSettings
+var      = construction.signal_side
+flags    = N
+guiflags = NN
+def      = true
+str      = STR_CONFIG_SETTING_SIGNALSIDE
+proc     = RedrawScreen
+
+[SDT_BOOL]
+base     = GameSettings
+var      = station.never_expire_airports
+flags    = 0
+guiflags = NN
+def      = false
+str      = STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = economy.town_layout
+type     = SLE_UINT8
+from     = 59
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = MS
+def      = TL_ORIGINAL
+min      = TL_BEGIN
+max      = NUM_TLS - 1
+interval = 1
+str      = STR_CONFIG_SETTING_TOWN_LAYOUT
+proc     = TownFoundingChanged
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = economy.allow_town_roads
+from     = 113
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NN
+def      = true
+str      = STR_CONFIG_SETTING_ALLOW_TOWN_ROADS
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = economy.found_town
+type     = SLE_UINT8
+from     = 128
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = MS
+def      = TF_FORBIDDEN
+min      = TF_BEGIN
+max      = TF_END - 1
+interval = 1
+str      = STR_CONFIG_SETTING_TOWN_FOUNDING
+proc     = TownFoundingChanged
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = economy.allow_town_level_crossings
+from     = 143
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NN
+def      = true
+str      = STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS
+proc     = NULL
+
+; Vehicles
+
+[SDT_VAR]
+base     = GameSettings
+var      = vehicle.train_acceleration_model
+type     = SLE_UINT8
+flags    = 0
+guiflags = MS
+def      = 0
+min      = 0
+max      = 1
+interval = 1
+str      = STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL
+proc     = TrainAccelerationModelChanged
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = vehicle.roadveh_acceleration_model
+type     = SLE_UINT8
+from     = 139
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = MS
+def      = 0
+min      = 0
+max      = 1
+interval = 1
+str      = STR_CONFIG_SETTING_ROAD_VEHICLE_ACCELERATION_MODEL
+proc     = RoadVehAccelerationModelChanged
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = vehicle.train_slope_steepness
+type     = SLE_UINT8
+from     = 133
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 3
+min      = 0
+max      = 10
+interval = 1
+str      = STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS
+proc     = TrainSlopeSteepnessChanged
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = vehicle.roadveh_slope_steepness
+type     = SLE_UINT8
+from     = 139
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 7
+min      = 0
+max      = 10
+interval = 1
+str      = STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS
+proc     = RoadVehSlopeSteepnessChanged
+
+[SDT_BOOL]
+base     = GameSettings
+var      = pf.forbid_90_deg
+flags    = 0
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_FORBID_90_DEG
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = vehicle.max_train_length
+type     = SLE_UINT8
+from     = 159
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 7
+min      = 1
+max      = 64
+interval = 1
+str      = STR_CONFIG_SETTING_TRAIN_LENGTH
+proc     = NULL
+
+; vehicle.mammoth_trains
+[SDT_CONDNULL]
+length   = 1
+from     = 0
+to       = 158
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = vehicle.smoke_amount
+type     = SLE_UINT8
+from     = 145
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = MS
+def      = 1
+min      = 0
+max      = 2
+interval = 0
+str      = STR_CONFIG_SETTING_SMOKE_AMOUNT
+proc     = NULL
+
+; order.gotodepot
+[SDT_CONDNULL]
+length   = 1
+from     = 0
+to       = 158
+
+; path finder
+
+[SDT_BOOL]
+base     = GameSettings
+var      = pf.roadveh_queue
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_ROAD_VEHICLE_QUEUEING
+proc     = NULL
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = pf.new_pathfinding_all
+from     = 0
+to       = 86
+flags    = 0
+guiflags = 0
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = pf.yapf.ship_use_yapf
+from     = 28
+to       = 86
+flags    = 0
+guiflags = 0
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = pf.yapf.road_use_yapf
+from     = 28
+to       = 86
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = pf.yapf.rail_use_yapf
+from     = 28
+to       = 86
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_NULL
+proc     = NULL
+
+##
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.pathfinder_for_trains
+type     = SLE_UINT8
+from     = 87
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = MS
+def      = 2
+min      = 1
+max      = 2
+interval = 1
+str      = STR_CONFIG_SETTING_PATHFINDER_FOR_TRAINS
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.pathfinder_for_roadvehs
+type     = SLE_UINT8
+from     = 87
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = MS
+def      = 2
+min      = 1
+max      = 2
+interval = 1
+str      = STR_CONFIG_SETTING_PATHFINDER_FOR_ROAD_VEHICLES
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.pathfinder_for_ships
+type     = SLE_UINT8
+from     = 87
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = MS
+def      = 0
+min      = 0
+max      = 2
+interval = 1
+str      = STR_CONFIG_SETTING_PATHFINDER_FOR_SHIPS
+proc     = NULL
+
+[SDT_BOOL]
+base     = GameSettings
+var      = vehicle.never_expire_vehicles
+flags    = 0
+guiflags = NN
+def      = false
+str      = STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = vehicle.max_trains
+type     = SLE_UINT16
+flags    = 0
+guiflags = 0
+def      = 500
+min      = 0
+max      = 5000
+interval = 0
+str      = STR_CONFIG_SETTING_MAX_TRAINS
+proc     = RedrawScreen
+
+[SDT_VAR]
+base     = GameSettings
+var      = vehicle.max_roadveh
+type     = SLE_UINT16
+flags    = 0
+guiflags = 0
+def      = 500
+min      = 0
+max      = 5000
+interval = 0
+str      = STR_CONFIG_SETTING_MAX_ROAD_VEHICLES
+proc     = RedrawScreen
+
+[SDT_VAR]
+base     = GameSettings
+var      = vehicle.max_aircraft
+type     = SLE_UINT16
+flags    = 0
+guiflags = 0
+def      = 200
+min      = 0
+max      = 5000
+interval = 0
+str      = STR_CONFIG_SETTING_MAX_AIRCRAFT
+proc     = RedrawScreen
+
+[SDT_VAR]
+base     = GameSettings
+var      = vehicle.max_ships
+type     = SLE_UINT16
+flags    = 0
+guiflags = 0
+def      = 300
+min      = 0
+max      = 5000
+interval = 0
+str      = STR_CONFIG_SETTING_MAX_SHIPS
+proc     = RedrawScreen
+
+[SDTG_CONDBOOL]
+name     = NULL
+flags    = 0
+guiflags = NN
+var      = _old_vds.servint_ispercent
+def      = false
+str      = STR_NULL
+proc     = NULL
+from     = 0
+to       = 119
+
+[SDTG_CONDVAR]
+name     = NULL
+type     = SLE_UINT16
+flags    = 0
+guiflags = D0
+var      = _old_vds.servint_trains
+def      = 150
+min      = 5
+max      = 800
+interval = 0
+str      = STR_NULL
+proc     = NULL
+from     = 0
+to       = 119
+
+[SDTG_CONDVAR]
+name     = NULL
+type     = SLE_UINT16
+flags    = 0
+guiflags = D0
+var      = _old_vds.servint_roadveh
+def      = 150
+min      = 5
+max      = 800
+interval = 0
+str      = STR_NULL
+proc     = NULL
+from     = 0
+to       = 119
+
+[SDTG_CONDVAR]
+name     = NULL
+type     = SLE_UINT16
+flags    = 0
+guiflags = D0
+var      = _old_vds.servint_ships
+def      = 360
+min      = 5
+max      = 800
+interval = 0
+str      = STR_NULL
+proc     = NULL
+from     = 0
+to       = 119
+
+[SDTG_CONDVAR]
+name     = NULL
+type     = SLE_UINT16
+flags    = 0
+guiflags = D0
+var      = _old_vds.servint_aircraft
+def      = 150
+min      = 5
+max      = 800
+interval = 0
+str      = STR_NULL
+proc     = NULL
+from     = 0
+to       = 119
+
+[SDT_BOOL]
+base     = GameSettings
+var      = order.no_servicing_if_no_breakdowns
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_NOSERVICE
+proc     = NULL
+
+[SDT_BOOL]
+base     = GameSettings
+var      = vehicle.wagon_speed_limits
+flags    = 0
+guiflags = NN
+def      = true
+str      = STR_CONFIG_SETTING_WAGONSPEEDLIMITS
+proc     = UpdateConsists
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = vehicle.disable_elrails
+from     = 38
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NN
+def      = false
+str      = STR_CONFIG_SETTING_DISABLE_ELRAILS
+proc     = SettingsDisableElrail
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = vehicle.freight_trains
+type     = SLE_UINT8
+from     = 39
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NN
+def      = 1
+min      = 1
+max      = 255
+interval = 1
+str      = STR_CONFIG_SETTING_FREIGHT_TRAINS
+proc     = UpdateConsists
+
+; order.timetabling
+[SDT_CONDNULL]
+length   = 1
+from     = 67
+to       = 158
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = vehicle.plane_speed
+type     = SLE_UINT8
+from     = 90
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NN
+def      = 4
+min      = 1
+max      = 4
+interval = 0
+str      = STR_CONFIG_SETTING_PLANE_SPEED
+proc     = NULL
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = vehicle.dynamic_engines
+from     = 95
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NN
+def      = true
+str      = STR_CONFIG_SETTING_DYNAMIC_ENGINES
+proc     = ChangeDynamicEngines
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = vehicle.plane_crashes
+type     = SLE_UINT8
+from     = 138
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = MS
+def      = 2
+min      = 0
+max      = 2
+interval = 1
+str      = STR_CONFIG_SETTING_PLANE_CRASHES
+proc     = NULL
+
+; station.join_stations
+[SDT_CONDNULL]
+length   = 1
+from     = 0
+to       = 158
+
+[SDTC_CONDBOOL]
+var      = gui.sg_full_load_any
+from     = 22
+to       = 92
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_NULL
+proc     = NULL
+
+[SDT_BOOL]
+base     = GameSettings
+var      = order.improved_load
+flags    = 0
+guiflags = NN
+def      = true
+str      = STR_CONFIG_SETTING_IMPROVEDLOAD
+proc     = NULL
+
+[SDT_BOOL]
+base     = GameSettings
+var      = order.selectgoods
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_SELECTGOODS
+proc     = NULL
+
+[SDTC_CONDBOOL]
+var      = gui.sg_new_nonstop
+from     = 22
+to       = 92
+flags    = 0
+guiflags = 0
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+; station.nonuniform_stations
+[SDT_CONDNULL]
+length   = 1
+from     = 0
+to       = 158
+
+[SDT_VAR]
+base     = GameSettings
+var      = station.station_spread
+type     = SLE_UINT8
+flags    = 0
+guiflags = 0
+def      = 12
+min      = 4
+max      = 64
+interval = 0
+str      = STR_CONFIG_SETTING_STATION_SPREAD
+proc     = InvalidateStationBuildWindow
+
+[SDT_BOOL]
+base     = GameSettings
+var      = order.serviceathelipad
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_SERVICEATHELIPAD
+proc     = NULL
+
+[SDT_BOOL]
+base     = GameSettings
+var      = station.modified_catchment
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_CATCHMENT
+proc     = StationCatchmentChanged
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = order.gradual_loading
+from     = 40
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NN
+def      = true
+str      = STR_CONFIG_SETTING_GRADUAL_LOADING
+proc     = NULL
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = construction.road_stop_on_town_road
+from     = 47
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD
+proc     = NULL
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = construction.road_stop_on_competitor_road
+from     = 114
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD
+proc     = NULL
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = station.adjacent_stations
+from     = 62
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_ADJACENT_STATIONS
+proc     = NULL
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = economy.station_noise_level
+from     = 96
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NN
+def      = false
+str      = STR_CONFIG_SETTING_NOISE_LEVEL
+proc     = InvalidateTownViewWindow
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = station.distant_join_stations
+from     = 106
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS
+proc     = DeleteSelectStationWindow
+
+##
+[SDT_BOOL]
+base     = GameSettings
+var      = economy.inflation
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_INFLATION
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = construction.raw_industry_construction
+type     = SLE_UINT8
+flags    = 0
+guiflags = MS
+def      = 0
+min      = 0
+max      = 2
+interval = 0
+str      = STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD
+proc     = InvalidateBuildIndustryWindow
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = construction.industry_platform
+type     = SLE_UINT8
+from     = 148
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 1
+min      = 0
+max      = 4
+interval = 0
+str      = STR_CONFIG_SETTING_INDUSTRY_PLATFORM
+proc     = NULL
+
+[SDT_BOOL]
+base     = GameSettings
+var      = economy.multiple_industry_per_town
+flags    = 0
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_MULTIPINDTOWN
+proc     = NULL
+
+[SDT_CONDNULL]
+length   = 1
+from     = 0
+to       = 140
+
+[SDT_BOOL]
+base     = GameSettings
+var      = economy.bribe
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_BRIBE
+proc     = RedrawTownAuthority
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = economy.exclusive_rights
+from     = 79
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_ALLOW_EXCLUSIVE
+proc     = RedrawTownAuthority
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = economy.fund_roads
+from     = 160
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_ALLOW_FUND_ROAD
+proc     = RedrawTownAuthority
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = economy.give_money
+from     = 79
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_ALLOW_GIVE_MONEY
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = game_creation.snow_line_height
+type     = SLE_UINT8
+flags    = 0
+guiflags = 0
+def      = DEF_SNOWLINE_HEIGHT
+min      = MIN_SNOWLINE_HEIGHT
+max      = MAX_SNOWLINE_HEIGHT
+interval = 0
+str      = STR_CONFIG_SETTING_SNOWLINE_HEIGHT
+proc     = NULL
+
+[SDT_CONDNULL]
+length   = 4
+from     = 0
+to       = 143
+
+[SDT_VAR]
+base     = GameSettings
+var      = game_creation.starting_year
+type     = SLE_INT32
+flags    = 0
+guiflags = NC
+def      = DEF_START_YEAR
+min      = MIN_YEAR
+max      = MAX_YEAR
+interval = 1
+str      = STR_CONFIG_SETTING_STARTING_YEAR
+proc     = NULL
+
+[SDT_CONDNULL]
+length   = 4
+from     = 0
+to       = 104
+
+[SDT_BOOL]
+base     = GameSettings
+var      = economy.smooth_economy
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_SMOOTH_ECONOMY
+proc     = InvalidateIndustryViewWindow
+
+[SDT_BOOL]
+base     = GameSettings
+var      = economy.allow_shares
+flags    = 0
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_ALLOW_SHARES
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = economy.feeder_payment_share
+type     = SLE_UINT8
+from     = 134
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 75
+min      = 0
+max      = 100
+interval = 0
+str      = STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = economy.town_growth_rate
+type     = SLE_UINT8
+from     = 54
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = MS
+def      = 2
+min      = 0
+max      = 4
+interval = 0
+str      = STR_CONFIG_SETTING_TOWN_GROWTH
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = economy.larger_towns
+type     = SLE_UINT8
+from     = 54
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = D0
+def      = 4
+min      = 0
+max      = 255
+interval = 1
+str      = STR_CONFIG_SETTING_LARGER_TOWNS
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = economy.initial_city_size
+type     = SLE_UINT8
+from     = 56
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 2
+min      = 1
+max      = 10
+interval = 1
+str      = STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER
+proc     = NULL
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = economy.mod_road_rebuild
+from     = 77
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_MODIFIED_ROAD_REBUILD
+proc     = NULL
+
+; previously ai-new setting.
+[SDT_CONDNULL]
+length   = 1
+from     = 0
+to       = 106
+
+[SDT_BOOL]
+base     = GameSettings
+var      = ai.ai_in_multiplayer
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_AI_IN_MULTIPLAYER
+proc     = NULL
+
+[SDT_BOOL]
+base     = GameSettings
+var      = ai.ai_disable_veh_train
+flags    = 0
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_AI_BUILDS_TRAINS
+proc     = NULL
+
+[SDT_BOOL]
+base     = GameSettings
+var      = ai.ai_disable_veh_roadveh
+flags    = 0
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_AI_BUILDS_ROAD_VEHICLES
+proc     = NULL
+
+[SDT_BOOL]
+base     = GameSettings
+var      = ai.ai_disable_veh_aircraft
+flags    = 0
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_AI_BUILDS_AIRCRAFT
+proc     = NULL
+
+[SDT_BOOL]
+base     = GameSettings
+var      = ai.ai_disable_veh_ship
+flags    = 0
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_AI_BUILDS_SHIPS
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = ai.ai_max_opcode_till_suspend
+type     = SLE_UINT32
+from     = 107
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = NG
+def      = 10000
+min      = 5000
+max      = 250000
+interval = 2500
+str      = STR_CONFIG_SETTING_AI_MAX_OPCODES
+proc     = NULL
+
+##
+[SDT_VAR]
+base     = GameSettings
+var      = vehicle.extend_vehicle_life
+type     = SLE_UINT8
+flags    = 0
+guiflags = 0
+def      = 0
+min      = 0
+max      = 100
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = economy.dist_local_authority
+type     = SLE_UINT8
+flags    = 0
+guiflags = 0
+def      = 20
+min      = 5
+max      = 60
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = pf.reverse_at_signals
+from     = 159
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_REVERSE_AT_SIGNALS
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = pf.wait_oneway_signal
+type     = SLE_UINT8
+flags    = 0
+guiflags = 0
+def      = 15
+min      = 2
+max      = 255
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = pf.wait_twoway_signal
+type     = SLE_UINT8
+flags    = 0
+guiflags = 0
+def      = 41
+min      = 2
+max      = 255
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = economy.town_noise_population[0]
+type     = SLE_UINT16
+from     = 96
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 800
+min      = 200
+max      = 65535
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = economy.town_noise_population[1]
+type     = SLE_UINT16
+from     = 96
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 2000
+min      = 400
+max      = 65535
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = economy.town_noise_population[2]
+type     = SLE_UINT16
+from     = 96
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 4000
+min      = 800
+max      = 65535
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+##
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.wait_for_pbs_path
+type     = SLE_UINT8
+from     = 100
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 30
+min      = 2
+max      = 255
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = pf.reserve_paths
+from     = 100
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.path_backoff_interval
+type     = SLE_UINT8
+from     = 100
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 20
+min      = 1
+max      = 255
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+##
+[SDT_VAR]
+base     = GameSettings
+var      = pf.opf.pf_maxlength
+type     = SLE_UINT16
+flags    = 0
+guiflags = 0
+def      = 4096
+min      = 64
+max      = 65535
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = pf.opf.pf_maxdepth
+type     = SLE_UINT8
+flags    = 0
+guiflags = 0
+def      = 48
+min      = 4
+max      = 255
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+##
+[SDT_VAR]
+base     = GameSettings
+var      = pf.npf.npf_max_search_nodes
+type     = SLE_UINT
+flags    = 0
+guiflags = 0
+def      = 10000
+min      = 500
+max      = 100000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = pf.npf.npf_rail_firstred_penalty
+type     = SLE_UINT
+flags    = 0
+guiflags = 0
+def      = ( 10 * NPF_TILE_LENGTH)
+min      = 0
+max      = 100000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = pf.npf.npf_rail_firstred_exit_penalty
+type     = SLE_UINT
+flags    = 0
+guiflags = 0
+def      = (100 * NPF_TILE_LENGTH)
+min      = 0
+max      = 100000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = pf.npf.npf_rail_lastred_penalty
+type     = SLE_UINT
+flags    = 0
+guiflags = 0
+def      = ( 10 * NPF_TILE_LENGTH)
+min      = 0
+max      = 100000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = pf.npf.npf_rail_station_penalty
+type     = SLE_UINT
+flags    = 0
+guiflags = 0
+def      = (  1 * NPF_TILE_LENGTH)
+min      = 0
+max      = 100000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = pf.npf.npf_rail_slope_penalty
+type     = SLE_UINT
+flags    = 0
+guiflags = 0
+def      = (  1 * NPF_TILE_LENGTH)
+min      = 0
+max      = 100000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = pf.npf.npf_rail_curve_penalty
+type     = SLE_UINT
+flags    = 0
+guiflags = 0
+def      = (  1 * NPF_TILE_LENGTH)
+min      = 0
+max      = 100000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = pf.npf.npf_rail_depot_reverse_penalty
+type     = SLE_UINT
+flags    = 0
+guiflags = 0
+def      = ( 50 * NPF_TILE_LENGTH)
+min      = 0
+max      = 100000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.npf.npf_rail_pbs_cross_penalty
+type     = SLE_UINT
+from     = 100
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = (  3 * NPF_TILE_LENGTH)
+min      = 0
+max      = 100000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.npf.npf_rail_pbs_signal_back_penalty
+type     = SLE_UINT
+from     = 100
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = ( 15 * NPF_TILE_LENGTH)
+min      = 0
+max      = 100000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = pf.npf.npf_buoy_penalty
+type     = SLE_UINT
+flags    = 0
+guiflags = 0
+def      = (  2 * NPF_TILE_LENGTH)
+min      = 0
+max      = 100000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = pf.npf.npf_water_curve_penalty
+type     = SLE_UINT
+flags    = 0
+guiflags = 0
+def      = (  1 * NPF_TILE_LENGTH)
+min      = 0
+max      = 100000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = pf.npf.npf_road_curve_penalty
+type     = SLE_UINT
+flags    = 0
+guiflags = 0
+def      = (  1 * NPF_TILE_LENGTH)
+min      = 0
+max      = 100000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = pf.npf.npf_crossing_penalty
+type     = SLE_UINT
+flags    = 0
+guiflags = 0
+def      = (  3 * NPF_TILE_LENGTH)
+min      = 0
+max      = 100000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.npf.npf_road_drive_through_penalty
+type     = SLE_UINT
+from     = 47
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = (  8 * NPF_TILE_LENGTH)
+min      = 0
+max      = 100000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.npf.npf_road_dt_occupied_penalty
+type     = SLE_UINT
+from     = 130
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = (  8 * NPF_TILE_LENGTH)
+min      = 0
+max      = 100000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.npf.npf_road_bay_occupied_penalty
+type     = SLE_UINT
+from     = 130
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = ( 15 * NPF_TILE_LENGTH)
+min      = 0
+max      = 100000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.npf.maximum_go_to_depot_penalty
+type     = SLE_UINT
+from     = 131
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = ( 20 * NPF_TILE_LENGTH)
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+##
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = pf.yapf.disable_node_optimization
+from     = 28
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.max_search_nodes
+type     = SLE_UINT
+from     = 28
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 10000
+min      = 500
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = pf.yapf.rail_firstred_twoway_eol
+from     = 28
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_firstred_penalty
+type     = SLE_UINT
+from     = 28
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 10 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_firstred_exit_penalty
+type     = SLE_UINT
+from     = 28
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 100 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_lastred_penalty
+type     = SLE_UINT
+from     = 28
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 10 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_lastred_exit_penalty
+type     = SLE_UINT
+from     = 28
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 100 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_station_penalty
+type     = SLE_UINT
+from     = 28
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 10 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_slope_penalty
+type     = SLE_UINT
+from     = 28
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 2 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_curve45_penalty
+type     = SLE_UINT
+from     = 28
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 1 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_curve90_penalty
+type     = SLE_UINT
+from     = 28
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 6 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_depot_reverse_penalty
+type     = SLE_UINT
+from     = 28
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 50 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_crossing_penalty
+type     = SLE_UINT
+from     = 28
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 3 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_look_ahead_max_signals
+type     = SLE_UINT
+from     = 28
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 10
+min      = 1
+max      = 100
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_look_ahead_signal_p0
+type     = SLE_INT
+from     = 28
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 500
+min      = -1000000
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_look_ahead_signal_p1
+type     = SLE_INT
+from     = 28
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = -100
+min      = -1000000
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_look_ahead_signal_p2
+type     = SLE_INT
+from     = 28
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 5
+min      = -1000000
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_pbs_cross_penalty
+type     = SLE_UINT
+from     = 100
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 3 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_pbs_station_penalty
+type     = SLE_UINT
+from     = 100
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 8 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_pbs_signal_back_penalty
+type     = SLE_UINT
+from     = 100
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 15 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_doubleslip_penalty
+type     = SLE_UINT
+from     = 100
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 1 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_longer_platform_penalty
+type     = SLE_UINT
+from     = 33
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 8 * YAPF_TILE_LENGTH
+min      = 0
+max      = 20000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_longer_platform_per_tile_penalty
+type     = SLE_UINT
+from     = 33
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 0 * YAPF_TILE_LENGTH
+min      = 0
+max      = 20000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_shorter_platform_penalty
+type     = SLE_UINT
+from     = 33
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 40 * YAPF_TILE_LENGTH
+min      = 0
+max      = 20000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.rail_shorter_platform_per_tile_penalty
+type     = SLE_UINT
+from     = 33
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 0 * YAPF_TILE_LENGTH
+min      = 0
+max      = 20000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.road_slope_penalty
+type     = SLE_UINT
+from     = 33
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 2 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.road_curve_penalty
+type     = SLE_UINT
+from     = 33
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 1 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.road_crossing_penalty
+type     = SLE_UINT
+from     = 33
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 3 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.road_stop_penalty
+type     = SLE_UINT
+from     = 47
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 8 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.road_stop_occupied_penalty
+type     = SLE_UINT
+from     = 130
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 8 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.road_stop_bay_occupied_penalty
+type     = SLE_UINT
+from     = 130
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 15 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = pf.yapf.maximum_go_to_depot_penalty
+type     = SLE_UINT
+from     = 131
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 20 * YAPF_TILE_LENGTH
+min      = 0
+max      = 1000000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+##
+[SDT_CONDVAR]
+base     = GameSettings
+var      = game_creation.land_generator
+type     = SLE_UINT8
+from     = 30
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = MS
+def      = 1
+min      = 0
+max      = 1
+interval = 0
+str      = STR_CONFIG_SETTING_LAND_GENERATOR
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = game_creation.oil_refinery_limit
+type     = SLE_UINT8
+from     = 30
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 32
+min      = 12
+max      = 48
+interval = 0
+str      = STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = game_creation.tgen_smoothness
+type     = SLE_UINT8
+from     = 30
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = MS
+def      = 1
+min      = 0
+max      = 3
+interval = 0
+str      = STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = game_creation.variety
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+def      = 0
+min      = 0
+max      = 5
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = game_creation.generation_seed
+type     = SLE_UINT32
+from     = 30
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = GENERATE_NEW_SEED
+min      = 0
+max      = UINT32_MAX
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = game_creation.tree_placer
+type     = SLE_UINT8
+from     = 30
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = MS
+def      = 2
+min      = 0
+max      = 2
+interval = 0
+str      = STR_CONFIG_SETTING_TREE_PLACER
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = game_creation.heightmap_rotation
+type     = SLE_UINT8
+flags    = S
+guiflags = MS
+def      = 0
+min      = 0
+max      = 1
+interval = 0
+str      = STR_CONFIG_SETTING_HEIGHTMAP_ROTATION
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = game_creation.se_flat_world_height
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+def      = 1
+min      = 0
+max      = 15
+interval = 0
+str      = STR_CONFIG_SETTING_SE_FLAT_WORLD_HEIGHT
+proc     = NULL
+
+##
+[SDT_VAR]
+base     = GameSettings
+var      = game_creation.map_x
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+def      = 8
+min      = MIN_MAP_SIZE_BITS
+max      = MAX_MAP_SIZE_BITS
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_VAR]
+base     = GameSettings
+var      = game_creation.map_y
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+def      = 8
+min      = MIN_MAP_SIZE_BITS
+max      = MAX_MAP_SIZE_BITS
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDBOOL]
+base     = GameSettings
+var      = construction.freeform_edges
+from     = 111
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_ENABLE_FREEFORM_EDGES
+proc     = CheckFreeformEdges
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = game_creation.water_borders
+type     = SLE_UINT8
+from     = 111
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 15
+min      = 0
+max      = 16
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = game_creation.custom_town_number
+type     = SLE_UINT16
+from     = 115
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 1
+min      = 1
+max      = 5000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = construction.extra_tree_placement
+type     = SLE_UINT8
+from     = 132
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = MS
+def      = 2
+min      = 0
+max      = 2
+interval = 0
+str      = STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT
+proc     = NULL
+
+[SDT_CONDVAR]
+base     = GameSettings
+var      = game_creation.custom_sea_level
+type     = SLE_UINT8
+from     = 149
+to       = SL_MAX_VERSION
+flags    = 0
+guiflags = 0
+def      = 1
+min      = 2
+max      = 90
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+; locale
+
+[SDT_CONDOMANY]
+base     = GameSettings
+var      = locale.currency
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = N
+guiflags = 0
+def      = 0
+max      = CUSTOM_CURRENCY_ID
+full     = _locale_currencies
+str      = STR_NULL
+proc     = RedrawScreen
+load     = NULL
+
+[SDT_CONDOMANY]
+base     = GameSettings
+var      = locale.units
+type     = SLE_UINT8
+from     = 97
+to       = SL_MAX_VERSION
+flags    = N
+guiflags = 0
+def      = 1
+max      = 2
+full     = _locale_units
+str      = STR_NULL
+proc     = RedrawScreen
+load     = NULL
+
+[SDT_CONDSTR]
+base     = GameSettings
+var      = locale.digit_group_separator
+type     = SLE_STRQ
+from     = 118
+to       = SL_MAX_VERSION
+flags    = N
+guiflags = 0
+def      = NULL
+str      = STR_NULL
+proc     = RedrawScreen
+
+[SDT_CONDSTR]
+base     = GameSettings
+var      = locale.digit_group_separator_currency
+type     = SLE_STRQ
+from     = 118
+to       = SL_MAX_VERSION
+flags    = N
+guiflags = 0
+def      = NULL
+str      = STR_NULL
+proc     = RedrawScreen
+
+[SDT_CONDSTR]
+base     = GameSettings
+var      = locale.digit_decimal_separator
+type     = SLE_STRQ
+from     = 126
+to       = SL_MAX_VERSION
+flags    = N
+guiflags = 0
+def      = NULL
+str      = STR_NULL
+proc     = RedrawScreen
+
+
+;***************************************************************************
+; Unsaved setting variables.
+
+[SDTC_OMANY]
+var      = gui.autosave
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+def      = 1
+max      = 4
+full     = _autosave_interval
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.threaded_saves
+flags    = S
+guiflags = 0
+def      = true
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_OMANY]
+var      = gui.date_format_in_default_names
+type     = SLE_UINT8
+flags    = S
+guiflags = MS
+def      = 0
+max      = 2
+full     = _savegame_date
+str      = STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.show_finances
+flags    = S
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_SHOWFINANCES
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.autoscroll
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_AUTOSCROLL
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.reverse_scroll
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_REVERSE_SCROLLING
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.smooth_scroll
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_SMOOTH_SCROLLING
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.left_mouse_btn_scrolling
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.measure_tooltip
+flags    = S
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_MEASURE_TOOLTIP
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.errmsg_duration
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+def      = 5
+min      = 0
+max      = 20
+interval = 0
+str      = STR_CONFIG_SETTING_ERRMSG_DURATION
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.hover_delay
+type     = SLE_UINT8
+flags    = S
+guiflags = D0
+def      = 2
+min      = 1
+max      = 5
+interval = 0
+str      = STR_CONFIG_SETTING_HOVER_DELAY
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.toolbar_pos
+type     = SLE_UINT8
+flags    = S
+guiflags = MS
+def      = 1
+min      = 0
+max      = 2
+interval = 0
+str      = STR_CONFIG_SETTING_TOOLBAR_POS
+proc     = v_PositionMainToolbar
+
+[SDTC_VAR]
+var      = gui.statusbar_pos
+type     = SLE_UINT8
+flags    = S
+guiflags = MS
+def      = 1
+min      = 0
+max      = 2
+interval = 0
+str      = STR_CONFIG_SETTING_STATUSBAR_POS
+proc     = v_PositionStatusbar
+
+[SDTC_VAR]
+var      = gui.window_snap_radius
+type     = SLE_UINT8
+flags    = S
+guiflags = D0
+def      = 10
+min      = 1
+max      = 32
+interval = 0
+str      = STR_CONFIG_SETTING_SNAP_RADIUS
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.window_soft_limit
+type     = SLE_UINT8
+flags    = S
+guiflags = D0
+def      = 20
+min      = 5
+max      = 255
+interval = 1
+str      = STR_CONFIG_SETTING_SOFT_LIMIT
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.population_in_label
+flags    = S
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_POPULATION_IN_LABEL
+proc     = PopulationInLabelActive
+
+[SDTC_BOOL]
+var      = gui.link_terraform_toolbar
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.smallmap_land_colour
+type     = SLE_UINT8
+flags    = S
+guiflags = MS
+def      = 0
+min      = 0
+max      = 2
+interval = 0
+str      = STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR
+proc     = RedrawSmallmap
+
+[SDTC_VAR]
+var      = gui.liveries
+type     = SLE_UINT8
+flags    = S
+guiflags = MS
+def      = 2
+min      = 0
+max      = 2
+interval = 0
+str      = STR_CONFIG_SETTING_LIVERIES
+proc     = InvalidateCompanyLiveryWindow
+
+[SDTC_BOOL]
+var      = gui.prefer_teamchat
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_PREFER_TEAMCHAT
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.scrollwheel_scrolling
+type     = SLE_UINT8
+flags    = S
+guiflags = MS
+def      = 0
+min      = 0
+max      = 2
+interval = 0
+str      = STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.scrollwheel_multiplier
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+def      = 5
+min      = 1
+max      = 15
+interval = 1
+str      = STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.pause_on_newgame
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.advanced_vehicle_list
+type     = SLE_UINT8
+flags    = S
+guiflags = MS
+def      = 1
+min      = 0
+max      = 2
+interval = 0
+str      = STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.timetable_in_ticks
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_TIMETABLE_IN_TICKS
+proc     = InvalidateVehTimetableWindow
+
+[SDTC_BOOL]
+var      = gui.timetable_arrival_departure
+flags    = S
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE
+proc     = InvalidateVehTimetableWindow
+
+[SDTC_BOOL]
+var      = gui.quick_goto
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_QUICKGOTO
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.loading_indicators
+type     = SLE_UINT8
+flags    = S
+guiflags = MS
+def      = 1
+min      = 0
+max      = 2
+interval = 0
+str      = STR_CONFIG_SETTING_LOADING_INDICATORS
+proc     = RedrawScreen
+
+[SDTC_VAR]
+var      = gui.default_rail_type
+type     = SLE_UINT8
+flags    = S
+guiflags = MS
+def      = 0
+min      = 0
+max      = 2
+interval = 0
+str      = STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.enable_signal_gui
+flags    = S
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI
+proc     = CloseSignalGUI
+
+[SDTC_VAR]
+var      = gui.coloured_news_year
+type     = SLE_INT32
+flags    = S
+guiflags = NC
+def      = 2000
+min      = MIN_YEAR
+max      = MAX_YEAR
+interval = 1
+str      = STR_CONFIG_SETTING_COLOURED_NEWS_YEAR
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.drag_signals_density
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+def      = 4
+min      = 1
+max      = 20
+interval = 0
+str      = STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY
+proc     = DragSignalsDensityChanged
+
+[SDTC_VAR]
+var      = gui.semaphore_build_before
+type     = SLE_INT32
+flags    = S
+guiflags = NC
+def      = 1950
+min      = MIN_YEAR
+max      = MAX_YEAR
+interval = 1
+str      = STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE
+proc     = ResetSignalVariant
+
+[SDTC_BOOL]
+var      = gui.vehicle_income_warn
+flags    = S
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_WARN_INCOME_LESS
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.order_review_system
+type     = SLE_UINT8
+flags    = S
+guiflags = MS
+def      = 2
+min      = 0
+max      = 2
+interval = 0
+str      = STR_CONFIG_SETTING_ORDER_REVIEW
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.lost_vehicle_warn
+flags    = S
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_WARN_LOST_VEHICLE
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.disable_unsuitable_building
+flags    = S
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING
+proc     = RedrawScreen
+
+[SDTC_BOOL]
+var      = gui.new_nonstop
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.stop_location
+type     = SLE_UINT8
+flags    = S
+guiflags = MS
+def      = 2
+min      = 0
+max      = 2
+interval = 1
+str      = STR_CONFIG_SETTING_STOP_LOCATION
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.keep_all_autosave
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.autosave_on_exit
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.max_num_autosaves
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+def      = 16
+min      = 0
+max      = 255
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.auto_euro
+flags    = S
+guiflags = 0
+def      = true
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.news_message_timeout
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+def      = 2
+min      = 1
+max      = 255
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.show_track_reservation
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION
+proc     = RedrawScreen
+
+[SDTC_VAR]
+var      = gui.default_signal_type
+type     = SLE_UINT8
+flags    = S
+guiflags = MS
+def      = 1
+min      = 0
+max      = 2
+interval = 1
+str      = STR_CONFIG_SETTING_DEFAULT_SIGNAL_TYPE
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.cycle_signal_types
+type     = SLE_UINT8
+flags    = S
+guiflags = MS
+def      = 2
+min      = 0
+max      = 2
+interval = 1
+str      = STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.station_numtracks
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+def      = 1
+min      = 1
+max      = 7
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.station_platlength
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+def      = 5
+min      = 1
+max      = 7
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.station_dragdrop
+flags    = S
+guiflags = 0
+def      = true
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.station_show_coverage
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.persistent_buildingtools
+flags    = S
+guiflags = 0
+def      = true
+str      = STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.expenses_layout
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_CONFIG_SETTING_EXPENSES_LAYOUT
+proc     = RedrawScreen
+
+
+; For the dedicated build we'll enable dates in logs by default.
+[SDTC_BOOL]
+ifdef    = DEDICATED
+var      = gui.show_date_in_logs
+flags    = S
+guiflags = 0
+def      = true
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_BOOL]
+ifndef   = DEDICATED
+var      = gui.show_date_in_logs
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.developer
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+def      = 1
+min      = 0
+max      = 2
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.newgrf_developer_tools
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_NULL
+proc     = InvalidateNewGRFChangeWindows
+
+[SDTC_BOOL]
+var      = gui.ai_developer_tools
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_BOOL]
+var      = gui.scenario_developer
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_NULL
+proc     = InvalidateNewGRFChangeWindows
+
+[SDTC_BOOL]
+var      = gui.newgrf_show_old_versions
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.console_backlog_timeout
+type     = SLE_UINT16
+flags    = S
+guiflags = 0
+def      = 100
+min      = 10
+max      = 65500
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+var      = gui.console_backlog_length
+type     = SLE_UINT16
+flags    = S
+guiflags = 0
+def      = 100
+min      = 10
+max      = 65500
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = gui.network_chat_box_width
+type     = SLE_UINT16
+flags    = S
+guiflags = 0
+def      = 620
+min      = 200
+max      = 65535
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = gui.network_chat_box_height
+type     = SLE_UINT8
+flags    = S
+guiflags = 0
+def      = 25
+min      = 5
+max      = 255
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = gui.network_chat_timeout
+type     = SLE_UINT16
+flags    = S
+guiflags = 0
+def      = 20
+min      = 1
+max      = 65535
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = network.sync_freq
+type     = SLE_UINT16
+flags    = C|S
+guiflags = NO
+def      = 100
+min      = 0
+max      = 100
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = network.frame_freq
+type     = SLE_UINT8
+flags    = C|S
+guiflags = NO
+def      = 0
+min      = 0
+max      = 100
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = network.commands_per_frame
+type     = SLE_UINT16
+flags    = S
+guiflags = NO
+def      = 2
+min      = 1
+max      = 65535
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = network.max_commands_in_queue
+type     = SLE_UINT16
+flags    = S
+guiflags = NO
+def      = 16
+min      = 1
+max      = 65535
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = network.bytes_per_frame
+type     = SLE_UINT16
+flags    = S
+guiflags = NO
+def      = 8
+min      = 1
+max      = 65535
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = network.bytes_per_frame_burst
+type     = SLE_UINT16
+flags    = S
+guiflags = NO
+def      = 256
+min      = 1
+max      = 65535
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = network.max_join_time
+type     = SLE_UINT16
+flags    = S
+guiflags = NO
+def      = 500
+min      = 0
+max      = 32000
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_BOOL]
+ifdef    = ENABLE_NETWORK
+var      = network.pause_on_join
+flags    = S
+guiflags = NO
+def      = true
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = network.server_port
+type     = SLE_UINT16
+flags    = S
+guiflags = NO
+def      = NETWORK_DEFAULT_PORT
+min      = 0
+max      = 65535
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = network.server_admin_port
+type     = SLE_UINT16
+flags    = S
+guiflags = NO
+def      = NETWORK_ADMIN_PORT
+min      = 0
+max      = 65535
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_BOOL]
+ifdef    = ENABLE_NETWORK
+var      = network.server_admin_chat
+flags    = S
+guiflags = NO
+def      = true
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_BOOL]
+ifdef    = ENABLE_NETWORK
+var      = network.server_advertise
+flags    = S
+guiflags = NO
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = network.lan_internet
+type     = SLE_UINT8
+flags    = S
+guiflags = NO
+def      = 0
+min      = 0
+max      = 1
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_STR]
+ifdef    = ENABLE_NETWORK
+var      = network.client_name
+type     = SLE_STRB
+flags    = S
+guiflags = 0
+def      = NULL
+str      = STR_NULL
+proc     = UpdateClientName
+
+[SDTC_STR]
+ifdef    = ENABLE_NETWORK
+var      = network.server_password
+type     = SLE_STRB
+flags    = S
+guiflags = NO
+def      = NULL
+str      = STR_NULL
+proc     = UpdateServerPassword
+
+[SDTC_STR]
+ifdef    = ENABLE_NETWORK
+var      = network.rcon_password
+type     = SLE_STRB
+flags    = S
+guiflags = NO
+def      = NULL
+str      = STR_NULL
+proc     = UpdateRconPassword
+
+[SDTC_STR]
+ifdef    = ENABLE_NETWORK
+var      = network.admin_password
+type     = SLE_STRB
+flags    = S
+guiflags = NO
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_STR]
+ifdef    = ENABLE_NETWORK
+var      = network.default_company_pass
+type     = SLE_STRB
+flags    = S
+guiflags = 0
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_STR]
+ifdef    = ENABLE_NETWORK
+var      = network.server_name
+type     = SLE_STRB
+flags    = S
+guiflags = NO
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_STR]
+ifdef    = ENABLE_NETWORK
+var      = network.connect_to_ip
+type     = SLE_STRB
+flags    = S
+guiflags = 0
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_STR]
+ifdef    = ENABLE_NETWORK
+var      = network.network_id
+type     = SLE_STRB
+flags    = S
+guiflags = NO
+def      = NULL
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_BOOL]
+ifdef    = ENABLE_NETWORK
+var      = network.autoclean_companies
+flags    = S
+guiflags = NO
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = network.autoclean_unprotected
+type     = SLE_UINT8
+flags    = S
+guiflags = D0|NO
+def      = 12
+min      = 0
+max      = 240
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = network.autoclean_protected
+type     = SLE_UINT8
+flags    = S
+guiflags = D0|NO
+def      = 36
+min      = 0
+max      = 240
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = network.autoclean_novehicles
+type     = SLE_UINT8
+flags    = S
+guiflags = D0|NO
+def      = 0
+min      = 0
+max      = 240
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = network.max_companies
+type     = SLE_UINT8
+flags    = S
+guiflags = NO
+def      = 15
+min      = 1
+max      = MAX_COMPANIES
+interval = 0
+str      = STR_NULL
+proc     = UpdateClientConfigValues
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = network.max_clients
+type     = SLE_UINT8
+flags    = S
+guiflags = NO
+def      = 25
+min      = 2
+max      = MAX_CLIENTS
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = network.max_spectators
+type     = SLE_UINT8
+flags    = S
+guiflags = NO
+def      = 15
+min      = 0
+max      = MAX_CLIENTS
+interval = 0
+str      = STR_NULL
+proc     = UpdateClientConfigValues
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = network.restart_game_year
+type     = SLE_INT32
+flags    = S
+guiflags = D0|NO|NC
+def      = 0
+min      = MIN_YEAR
+max      = MAX_YEAR
+interval = 1
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = network.min_active_clients
+type     = SLE_UINT8
+flags    = S
+guiflags = NO
+def      = 0
+min      = 0
+max      = MAX_CLIENTS
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_OMANY]
+ifdef    = ENABLE_NETWORK
+var      = network.server_lang
+type     = SLE_UINT8
+flags    = S
+guiflags = NO
+def      = 0
+max      = 35
+full     = _server_langs
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_BOOL]
+ifdef    = ENABLE_NETWORK
+var      = network.reload_cfg
+flags    = S
+guiflags = NO
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_STR]
+ifdef    = ENABLE_NETWORK
+var      = network.last_host
+type     = SLE_STRB
+flags    = S
+guiflags = 0
+def      = """"
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_VAR]
+ifdef    = ENABLE_NETWORK
+var      = network.last_port
+type     = SLE_UINT16
+flags    = S
+guiflags = 0
+def      = 0
+min      = 0
+max      = UINT16_MAX
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTC_BOOL]
+ifdef    = ENABLE_NETWORK
+var      = network.no_http_content_downloads
+flags    = S
+guiflags = 0
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+; Since the network code (CmdChangeSetting and friends) use the index in this array to decide
+; which setting the server is talking about all conditional compilation of this array must be at the
+; end. This isn't really the best solution, the settings the server can tell the client about should
+; either use a seperate array or some other form of identifier.
+
+;
+; We might need to emulate a right mouse button on mac
+[SDTC_VAR]
+ifdef    = __APPLE__
+var      = gui.right_mouse_btn_emulation
+type     = SLE_UINT8
+flags    = S
+guiflags = MS
+def      = 0
+min      = 0
+max      = 2
+interval = 0
+str      = STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU
+proc     = NULL
+
+[SDT_END]
+
new file mode 100644
--- /dev/null
+++ b/src/table/win32_settings.ini
@@ -0,0 +1,62 @@
+[pre-amble]
+/* win32_v.cpp only settings */
+#if defined(WIN32) && !defined(DEDICATED)
+extern bool _force_full_redraw, _window_maximize;
+extern uint _display_hz, _fullscreen_bpp;
+
+static const SettingDescGlobVarList _win32_settings[] = {
+[post-amble]
+};
+#endif /* WIN32 */
+[templates]
+SDTG_BOOL = SDTG_BOOL($name,        $flags, $guiflags, $var, $def,                        $str, $proc),
+SDTG_VAR  =  SDTG_VAR($name, $type, $flags, $guiflags, $var, $def, $min, $max, $interval, $str, $proc),
+SDTG_END  = SDTG_END()
+
+
+[SDTG_VAR]
+name     = ""display_hz""
+type     = SLE_UINT
+flags    = S
+guiflags = 0
+var      = _display_hz
+def      = 0
+min      = 0
+max      = 120
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_BOOL]
+name     = ""force_full_redraw""
+flags    = S
+guiflags = 0
+var      = _force_full_redraw
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_VAR]
+name     = ""fullscreen_bpp""
+type     = SLE_UINT
+flags    = S
+guiflags = 0
+var      = _fullscreen_bpp
+def      = 8
+min      = 8
+max      = 32
+interval = 0
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_BOOL]
+name     = ""window_maximize""
+flags    = S
+guiflags = 0
+var      = _window_maximize
+def      = false
+str      = STR_NULL
+proc     = NULL
+
+[SDTG_END]
+