changeset 17445:f4b87d29bafd draft

(svn r22199) -Cleanup-ish: replace the shortcut macros for (gui)flags with their more clearly named (longer) constant names
author rubidium <rubidium@openttd.org>
date Sat, 05 Mar 2011 11:34:31 +0000
parents bf88fe868439
children 7018bffbfa1b
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.h.postamble src/table/settings.h.preamble src/table/settings.ini src/table/win32_settings.ini
diffstat 9 files changed, 248 insertions(+), 325 deletions(-) [+]
line wrap: on
line diff
--- a/src/table/company_settings.ini
+++ b/src/table/company_settings.ini
@@ -9,7 +9,7 @@
 
 [defaults]
 flags    = 0
-guiflags = 0
+guiflags = SGF_PER_COMPANY
 interval = 0
 str      = STR_NULL
 proc     = NULL
@@ -22,7 +22,6 @@
 [SDT_BOOL]
 base     = CompanySettings
 var      = engine_renew
-guiflags = PC
 def      = false
 str      = STR_CONFIG_SETTING_AUTORENEW_VEHICLE
 
@@ -30,7 +29,6 @@
 base     = CompanySettings
 var      = engine_renew_months
 type     = SLE_INT16
-guiflags = PC
 def      = 6
 min      = -12
 max      = 12
@@ -40,7 +38,7 @@
 base     = CompanySettings
 var      = engine_renew_money
 type     = SLE_UINT
-guiflags = PC|CR
+guiflags = SGF_PER_COMPANY | SGF_CURRENCY
 def      = 100000
 min      = 0
 max      = 2000000
@@ -49,13 +47,11 @@
 [SDT_BOOL]
 base     = CompanySettings
 var      = renew_keep_length
-guiflags = PC
 def      = false
 
 [SDT_BOOL]
 base     = CompanySettings
 var      = vehicle.servint_ispercent
-guiflags = PC
 def      = false
 str      = STR_CONFIG_SETTING_SERVINT_ISPERCENT
 proc     = CheckInterval
@@ -64,7 +60,7 @@
 base     = CompanySettings
 var      = vehicle.servint_trains
 type     = SLE_UINT16
-guiflags = PC|D0
+guiflags = SGF_PER_COMPANY | SGF_0ISDISABLED
 def      = 150
 min      = 5
 max      = 800
@@ -75,7 +71,7 @@
 base     = CompanySettings
 var      = vehicle.servint_roadveh
 type     = SLE_UINT16
-guiflags = PC|D0
+guiflags = SGF_PER_COMPANY | SGF_0ISDISABLED
 def      = 150
 min      = 5
 max      = 800
@@ -86,7 +82,7 @@
 base     = CompanySettings
 var      = vehicle.servint_ships
 type     = SLE_UINT16
-guiflags = PC|D0
+guiflags = SGF_PER_COMPANY | SGF_0ISDISABLED
 def      = 360
 min      = 5
 max      = 800
@@ -97,7 +93,7 @@
 base     = CompanySettings
 var      = vehicle.servint_aircraft
 type     = SLE_UINT16
-guiflags = PC|D0
+guiflags = SGF_PER_COMPANY | SGF_0ISDISABLED
 def      = 100
 min      = 5
 max      = 800
--- a/src/table/currency_settings.ini
+++ b/src/table/currency_settings.ini
@@ -9,7 +9,7 @@
 SDT_END = SDT_END()
 
 [defaults]
-flags    = 0
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 guiflags = 0
 interval = 0
 str      = STR_NULL
@@ -24,7 +24,6 @@
 base     = CurrencySpec
 var      = rate
 type     = SLE_UINT16
-flags    = S
 def      = 1
 min      = 0
 max      = UINT16_MAX
@@ -32,14 +31,12 @@
 [SDT_CHR]
 base     = CurrencySpec
 var      = separator
-flags    = S
 def      = "".""
 
 [SDT_VAR]
 base     = CurrencySpec
 var      = to_euro
 type     = SLE_INT32
-flags    = S
 def      = 0
 min      = MIN_YEAR
 max      = MAX_YEAR
@@ -48,14 +45,12 @@
 base     = CurrencySpec
 var      = prefix
 type     = SLE_STRBQ
-flags    = S
 def      = NULL
 
 [SDT_STR]
 base     = CurrencySpec
 var      = suffix
 type     = SLE_STRBQ
-flags    = S
 def      = "" credits""
 
 [SDT_END]
--- a/src/table/gameopt_settings.ini
+++ b/src/table/gameopt_settings.ini
@@ -52,7 +52,7 @@
 sdt_cmd  = SDT_INTLIST
 sle_cmd  = SL_ARR
 type     = SLE_FILE_I16 | SLE_VAR_U16
-flags    = C
+flags    = SLF_NOT_IN_CONFIG
 var      = _old_diff_custom
 length   = 17
 def      = 0
@@ -66,7 +66,7 @@
 sdt_cmd  = SDT_INTLIST
 sle_cmd  = SL_ARR
 type     = SLE_UINT16
-flags    = C
+flags    = SLF_NOT_IN_CONFIG
 var      = _old_diff_custom
 length   = 18
 def      = 0
@@ -88,7 +88,7 @@
 base     = GameSettings
 var      = locale.currency
 type     = SLE_UINT8
-flags    = N
+flags    = SLF_NO_NETWORK_SYNC
 def      = 0
 max      = CUSTOM_CURRENCY_ID
 full     = _locale_currencies
@@ -97,7 +97,7 @@
 base     = GameSettings
 var      = locale.units
 type     = SLE_UINT8
-flags    = N
+flags    = SLF_NO_NETWORK_SYNC
 def      = 1
 max      = 2
 full     = _locale_units
@@ -137,7 +137,7 @@
 var      = gui.autosave
 type     = SLE_UINT8
 from     = 23
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 1
 max      = 4
 full     = _autosave_interval
--- a/src/table/misc_settings.ini
+++ b/src/table/misc_settings.ini
@@ -13,7 +13,7 @@
 SDTG_END   = SDTG_END()
 
 [defaults]
-flags    = 0
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 guiflags = 0
 interval = 0
 str      = STR_NULL
@@ -27,76 +27,65 @@
 [SDTG_MMANY]
 name     = ""display_opt""
 type     = SLE_UINT8
-flags    = S
 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""
 
 [SDTG_BOOL]
 name     = ""news_ticker_sound""
-flags    = S
 var      = _news_ticker_sound
 def      = true
 
 [SDTG_BOOL]
 name     = ""fullscreen""
-flags    = S
 var      = _fullscreen
 def      = false
 
 [SDTG_STR]
 name     = ""graphicsset""
 type     = SLE_STRQ
-flags    = S
 var      = BaseGraphics::ini_set
 def      = NULL
 
 [SDTG_STR]
 name     = ""soundsset""
 type     = SLE_STRQ
-flags    = S
 var      = BaseSounds::ini_set
 def      = NULL
 
 [SDTG_STR]
 name     = ""musicset""
 type     = SLE_STRQ
-flags    = S
 var      = BaseMusic::ini_set
 def      = NULL
 
 [SDTG_STR]
 name     = ""videodriver""
 type     = SLE_STRQ
-flags    = S
 var      = _ini_videodriver
 def      = NULL
 
 [SDTG_STR]
 name     = ""musicdriver""
 type     = SLE_STRQ
-flags    = S
 var      = _ini_musicdriver
 def      = NULL
 
 [SDTG_STR]
 name     = ""sounddriver""
 type     = SLE_STRQ
-flags    = S
 var      = _ini_sounddriver
 def      = NULL
 
 [SDTG_STR]
 name     = ""blitter""
 type     = SLE_STRQ
-flags    = S
 var      = _ini_blitter
 def      = NULL
 
 [SDTG_STR]
 name     = ""language""
 type     = SLE_STRB
-flags    = S
 var      = _config_language_file
 def      = NULL
 
@@ -105,27 +94,23 @@
 name     = ""resolution""
 type     = SLE_INT
 length   = 2
-flags    = S
 var      = _cur_resolution
 def      = ""640,480""
 
 [SDTG_STR]
 name     = ""screenshot_format""
 type     = SLE_STRB
-flags    = S
 var      = _screenshot_format_name
 def      = NULL
 
 [SDTG_STR]
 name     = ""savegame_format""
 type     = SLE_STRB
-flags    = S
 var      = _savegame_format
 def      = NULL
 
 [SDTG_BOOL]
 name     = ""rightclick_emulate""
-flags    = S
 var      = _rightclick_emulate
 def      = false
 
@@ -133,7 +118,6 @@
 ifdef    = WITH_FREETYPE
 name     = ""small_font""
 type     = SLE_STRB
-flags    = S
 var      = _freetype.small_font
 def      = NULL
 
@@ -141,7 +125,6 @@
 ifdef    = WITH_FREETYPE
 name     = ""medium_font""
 type     = SLE_STRB
-flags    = S
 var      = _freetype.medium_font
 def      = NULL
 
@@ -149,7 +132,6 @@
 ifdef    = WITH_FREETYPE
 name     = ""large_font""
 type     = SLE_STRB
-flags    = S
 var      = _freetype.large_font
 def      = NULL
 
@@ -157,7 +139,6 @@
 ifdef    = WITH_FREETYPE
 name     = ""small_size""
 type     = SLE_UINT
-flags    = S
 var      = _freetype.small_size
 def      = 8
 min      = 0
@@ -167,7 +148,6 @@
 ifdef    = WITH_FREETYPE
 name     = ""medium_size""
 type     = SLE_UINT
-flags    = S
 var      = _freetype.medium_size
 def      = 10
 min      = 0
@@ -177,7 +157,6 @@
 ifdef    = WITH_FREETYPE
 name     = ""large_size""
 type     = SLE_UINT
-flags    = S
 var      = _freetype.large_size
 def      = 16
 min      = 0
@@ -186,28 +165,24 @@
 [SDTG_BOOL]
 ifdef    = WITH_FREETYPE
 name     = ""small_aa""
-flags    = S
 var      = _freetype.small_aa
 def      = false
 
 [SDTG_BOOL]
 ifdef    = WITH_FREETYPE
 name     = ""medium_aa""
-flags    = S
 var      = _freetype.medium_aa
 def      = false
 
 [SDTG_BOOL]
 ifdef    = WITH_FREETYPE
 name     = ""large_aa""
-flags    = S
 var      = _freetype.large_aa
 def      = false
 
 [SDTG_VAR]
 name     = ""sprite_cache_size""
 type     = SLE_UINT
-flags    = S
 var      = _sprite_cache_size
 def      = 4
 min      = 1
@@ -216,7 +191,6 @@
 [SDTG_VAR]
 name     = ""player_face""
 type     = SLE_UINT32
-flags    = S
 var      = _company_manager_face
 def      = 0
 min      = 0
@@ -225,7 +199,6 @@
 [SDTG_VAR]
 name     = ""transparency_options""
 type     = SLE_UINT
-flags    = S
 var      = _transparency_opt
 def      = 0
 min      = 0
@@ -234,7 +207,6 @@
 [SDTG_VAR]
 name     = ""transparency_locks""
 type     = SLE_UINT
-flags    = S
 var      = _transparency_lock
 def      = 0
 min      = 0
@@ -243,7 +215,6 @@
 [SDTG_VAR]
 name     = ""invisibility_options""
 type     = SLE_UINT
-flags    = S
 var      = _invisibility_opt
 def      = 0
 min      = 0
@@ -252,14 +223,12 @@
 [SDTG_STR]
 name     = ""keyboard""
 type     = SLE_STRB
-flags    = S
 var      = _keyboard_opt[0]
 def      = NULL
 
 [SDTG_STR]
 name     = ""keyboard_caps""
 type     = SLE_STRB
-flags    = S
 var      = _keyboard_opt[1]
 def      = NULL
 
--- a/src/table/music_settings.ini
+++ b/src/table/music_settings.ini
@@ -9,7 +9,7 @@
 SDT_END  = SDT_END()
 
 [defaults]
-flags    = 0
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 guiflags = 0
 interval = 0
 str      = STR_NULL
@@ -24,7 +24,6 @@
 base     = MusicFileSettings
 var      = playlist
 type     = SLE_UINT8
-flags    = S
 def      = 0
 min      = 0
 max      = 5
@@ -34,7 +33,6 @@
 base     = MusicFileSettings
 var      = music_vol
 type     = SLE_UINT8
-flags    = S
 def      = 127
 min      = 0
 max      = 127
@@ -44,7 +42,6 @@
 base     = MusicFileSettings
 var      = effect_vol
 type     = SLE_UINT8
-flags    = S
 def      = 127
 min      = 0
 max      = 127
@@ -54,26 +51,22 @@
 base     = MusicFileSettings
 var      = custom_1
 type     = SLE_UINT8
-flags    = S
 def      = NULL
 
 [SDT_LIST]
 base     = MusicFileSettings
 var      = custom_2
 type     = SLE_UINT8
-flags    = S
 def      = NULL
 
 [SDT_BOOL]
 base     = MusicFileSettings
 var      = playing
-flags    = S
 def      = true
 
 [SDT_BOOL]
 base     = MusicFileSettings
 var      = shuffle
-flags    = S
 def      = false
 
 [SDT_END]
--- a/src/table/settings.h.postamble
+++ b/src/table/settings.h.postamble
@@ -1,10 +0,0 @@
-/* Undefine for the shortcut macros above */
-#undef S
-#undef C
-#undef N
-
-#undef D0
-#undef NC
-#undef MS
-#undef NO
-#undef CR
--- a/src/table/settings.h.preamble
+++ b/src/table/settings.h.preamble
@@ -164,19 +164,3 @@
 
 #define SDT_END() {{NULL, NULL, {0}, {0}, 0, 0, 0, NULL, STR_NULL, NULL, NULL}, SLE_END()}
 
-/* Shortcuts for macros below. Logically if we don't save the value
- * we also don't sync it in a network game */
-#define S SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
-#define C SLF_NOT_IN_CONFIG
-#define N SLF_NO_NETWORK_SYNC
-
-#define D0 SGF_0ISDISABLED
-#define NC SGF_NOCOMMA
-#define MS SGF_MULTISTRING
-#define NO SGF_NETWORK_ONLY
-#define CR SGF_CURRENCY
-#define NN SGF_NO_NETWORK
-#define NG SGF_NEWGAME_ONLY
-#define NS SGF_NEWGAME_ONLY | SGF_SCENEDIT_TOO
-#define PC SGF_PER_COMPANY
-
--- a/src/table/settings.ini
+++ b/src/table/settings.ini
@@ -48,7 +48,7 @@
 from     = 97
 def      = 0
 min      = 0
-max      = MAX_COMPANIES-1
+max      = MAX_COMPANIES - 1
 interval = 1
 proc     = MaxNoAIsChange
 
@@ -62,7 +62,7 @@
 var      = difficulty.number_towns
 type     = SLE_UINT8
 from     = 97
-guiflags = NG
+guiflags = SGF_NEWGAME_ONLY
 def      = 2
 min      = 0
 max      = 4
@@ -75,10 +75,10 @@
 var      = difficulty.industry_density
 type     = SLE_UINT8
 from     = 97
-guiflags = NG
-def      = ID_END-1
+guiflags = SGF_NEWGAME_ONLY
+def      = ID_END - 1
 min      = 0
-max      = ID_END-1
+max      = ID_END - 1
 interval = 1
 str      = STR_FUNDING_ONLY
 proc     = DifficultyChange
@@ -88,7 +88,7 @@
 var      = difficulty.max_loan
 type     = SLE_UINT32
 from     = 97
-guiflags = NS|CR
+guiflags = SGF_NEWGAME_ONLY | SGF_SCENEDIT_TOO | SGF_CURRENCY
 def      = 300000
 min      = 100000
 max      = 500000
@@ -100,7 +100,7 @@
 var      = difficulty.initial_interest
 type     = SLE_UINT8
 from     = 97
-guiflags = NS
+guiflags = SGF_NEWGAME_ONLY | SGF_SCENEDIT_TOO
 def      = 2
 min      = 2
 max      = 4
@@ -112,7 +112,7 @@
 var      = difficulty.vehicle_costs
 type     = SLE_UINT8
 from     = 97
-guiflags = NS
+guiflags = SGF_NEWGAME_ONLY | SGF_SCENEDIT_TOO
 def      = 0
 min      = 0
 max      = 2
@@ -166,7 +166,7 @@
 var      = difficulty.construction_cost
 type     = SLE_UINT8
 from     = 97
-guiflags = NS
+guiflags = SGF_NEWGAME_ONLY | SGF_SCENEDIT_TOO
 def      = 0
 min      = 0
 max      = 2
@@ -179,7 +179,7 @@
 var      = difficulty.terrain_type
 type     = SLE_UINT8
 from     = 97
-guiflags = NG
+guiflags = SGF_NEWGAME_ONLY
 def      = 1
 min      = 0
 max      = 3
@@ -192,7 +192,7 @@
 var      = difficulty.quantity_sea_lakes
 type     = SLE_UINT8
 from     = 97
-guiflags = NG
+guiflags = SGF_NEWGAME_ONLY
 def      = 0
 min      = 0
 max      = 4
@@ -265,7 +265,7 @@
 var      = game_creation.town_name
 type     = SLE_UINT8
 from     = 97
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 def      = 0
 max      = 255
 full     = _town_names
@@ -275,7 +275,7 @@
 var      = game_creation.landscape
 type     = SLE_UINT8
 from     = 97
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 def      = 0
 max      = 3
 full     = _climates
@@ -286,7 +286,7 @@
 var      = game_creation.snow_line
 type     = SLE_UINT8
 from     = 97
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 def      = DEF_SNOWLINE_HEIGHT * TILE_HEIGHT
 min      = MIN_SNOWLINE_HEIGHT * TILE_HEIGHT
 max      = MAX_SNOWLINE_HEIGHT * TILE_HEIGHT
@@ -296,7 +296,7 @@
 var      = vehicle.road_side
 type     = SLE_UINT8
 from     = 97
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 def      = 1
 max      = 1
 full     = _roadsides
@@ -307,7 +307,7 @@
 [SDT_BOOL]
 base     = GameSettings
 var      = construction.build_on_slopes
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 def      = true
 str      = STR_CONFIG_SETTING_BUILDONSLOPES
 
@@ -316,7 +316,7 @@
 var      = construction.command_pause_level
 type     = SLE_UINT8
 from     = 154
-guiflags = MS|NN
+guiflags = SGF_MULTISTRING | SGF_NO_NETWORK
 def      = 1
 min      = 0
 max      = 3
@@ -381,7 +381,7 @@
 var      = construction.max_bridge_length
 type     = SLE_UINT16
 from     = 159
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 def      = 64
 min      = 1
 max      = 2048
@@ -393,7 +393,7 @@
 var      = construction.max_tunnel_length
 type     = SLE_UINT16
 from     = 159
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 def      = 64
 min      = 1
 max      = 2048
@@ -408,8 +408,8 @@
 [SDT_BOOL]
 base     = GameSettings
 var      = construction.signal_side
-flags    = N
-guiflags = NN
+flags    = SLF_NO_NETWORK_SYNC
+guiflags = SGF_NO_NETWORK
 def      = true
 str      = STR_CONFIG_SETTING_SIGNALSIDE
 proc     = RedrawScreen
@@ -417,7 +417,7 @@
 [SDT_BOOL]
 base     = GameSettings
 var      = station.never_expire_airports
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 def      = false
 str      = STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS
 
@@ -426,7 +426,7 @@
 var      = economy.town_layout
 type     = SLE_UINT8
 from     = 59
-guiflags = MS
+guiflags = SGF_MULTISTRING
 def      = TL_ORIGINAL
 min      = TL_BEGIN
 max      = NUM_TLS - 1
@@ -438,7 +438,7 @@
 base     = GameSettings
 var      = economy.allow_town_roads
 from     = 113
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 def      = true
 str      = STR_CONFIG_SETTING_ALLOW_TOWN_ROADS
 
@@ -447,7 +447,7 @@
 var      = economy.found_town
 type     = SLE_UINT8
 from     = 128
-guiflags = MS
+guiflags = SGF_MULTISTRING
 def      = TF_FORBIDDEN
 min      = TF_BEGIN
 max      = TF_END - 1
@@ -459,7 +459,7 @@
 base     = GameSettings
 var      = economy.allow_town_level_crossings
 from     = 143
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 def      = true
 str      = STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS
 
@@ -469,7 +469,7 @@
 base     = GameSettings
 var      = vehicle.train_acceleration_model
 type     = SLE_UINT8
-guiflags = MS
+guiflags = SGF_MULTISTRING
 def      = 0
 min      = 0
 max      = 1
@@ -482,7 +482,7 @@
 var      = vehicle.roadveh_acceleration_model
 type     = SLE_UINT8
 from     = 139
-guiflags = MS
+guiflags = SGF_MULTISTRING
 def      = 0
 min      = 0
 max      = 1
@@ -541,7 +541,7 @@
 var      = vehicle.smoke_amount
 type     = SLE_UINT8
 from     = 145
-guiflags = MS
+guiflags = SGF_MULTISTRING
 def      = 1
 min      = 0
 max      = 2
@@ -593,7 +593,7 @@
 var      = pf.pathfinder_for_trains
 type     = SLE_UINT8
 from     = 87
-guiflags = MS
+guiflags = SGF_MULTISTRING
 def      = 2
 min      = 1
 max      = 2
@@ -605,7 +605,7 @@
 var      = pf.pathfinder_for_roadvehs
 type     = SLE_UINT8
 from     = 87
-guiflags = MS
+guiflags = SGF_MULTISTRING
 def      = 2
 min      = 1
 max      = 2
@@ -617,7 +617,7 @@
 var      = pf.pathfinder_for_ships
 type     = SLE_UINT8
 from     = 87
-guiflags = MS
+guiflags = SGF_MULTISTRING
 def      = 0
 min      = 0
 max      = 2
@@ -627,7 +627,7 @@
 [SDT_BOOL]
 base     = GameSettings
 var      = vehicle.never_expire_vehicles
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 def      = false
 str      = STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES
 
@@ -673,7 +673,7 @@
 
 [SDTG_BOOL]
 name     = NULL
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 var      = _old_vds.servint_ispercent
 def      = false
 to       = 119
@@ -681,7 +681,7 @@
 [SDTG_VAR]
 name     = NULL
 type     = SLE_UINT16
-guiflags = D0
+guiflags = SGF_0ISDISABLED
 var      = _old_vds.servint_trains
 def      = 150
 min      = 5
@@ -691,7 +691,7 @@
 [SDTG_VAR]
 name     = NULL
 type     = SLE_UINT16
-guiflags = D0
+guiflags = SGF_0ISDISABLED
 var      = _old_vds.servint_roadveh
 def      = 150
 min      = 5
@@ -701,7 +701,7 @@
 [SDTG_VAR]
 name     = NULL
 type     = SLE_UINT16
-guiflags = D0
+guiflags = SGF_0ISDISABLED
 var      = _old_vds.servint_ships
 def      = 360
 min      = 5
@@ -711,7 +711,7 @@
 [SDTG_VAR]
 name     = NULL
 type     = SLE_UINT16
-guiflags = D0
+guiflags = SGF_0ISDISABLED
 var      = _old_vds.servint_aircraft
 def      = 150
 min      = 5
@@ -727,7 +727,7 @@
 [SDT_BOOL]
 base     = GameSettings
 var      = vehicle.wagon_speed_limits
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 def      = true
 str      = STR_CONFIG_SETTING_WAGONSPEEDLIMITS
 proc     = UpdateConsists
@@ -736,7 +736,7 @@
 base     = GameSettings
 var      = vehicle.disable_elrails
 from     = 38
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 def      = false
 str      = STR_CONFIG_SETTING_DISABLE_ELRAILS
 proc     = SettingsDisableElrail
@@ -746,7 +746,7 @@
 var      = vehicle.freight_trains
 type     = SLE_UINT8
 from     = 39
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 def      = 1
 min      = 1
 max      = 255
@@ -765,7 +765,7 @@
 var      = vehicle.plane_speed
 type     = SLE_UINT8
 from     = 90
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 def      = 4
 min      = 1
 max      = 4
@@ -775,7 +775,7 @@
 base     = GameSettings
 var      = vehicle.dynamic_engines
 from     = 95
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 def      = true
 str      = STR_CONFIG_SETTING_DYNAMIC_ENGINES
 proc     = ChangeDynamicEngines
@@ -785,7 +785,7 @@
 var      = vehicle.plane_crashes
 type     = SLE_UINT8
 from     = 138
-guiflags = MS
+guiflags = SGF_MULTISTRING
 def      = 2
 min      = 0
 max      = 2
@@ -806,7 +806,7 @@
 [SDT_BOOL]
 base     = GameSettings
 var      = order.improved_load
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 def      = true
 str      = STR_CONFIG_SETTING_IMPROVEDLOAD
 
@@ -854,7 +854,7 @@
 base     = GameSettings
 var      = order.gradual_loading
 from     = 40
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 def      = true
 str      = STR_CONFIG_SETTING_GRADUAL_LOADING
 
@@ -883,7 +883,7 @@
 base     = GameSettings
 var      = economy.station_noise_level
 from     = 96
-guiflags = NN
+guiflags = SGF_NO_NETWORK
 def      = false
 str      = STR_CONFIG_SETTING_NOISE_LEVEL
 proc     = InvalidateTownViewWindow
@@ -907,7 +907,7 @@
 base     = GameSettings
 var      = construction.raw_industry_construction
 type     = SLE_UINT8
-guiflags = MS
+guiflags = SGF_MULTISTRING
 def      = 0
 min      = 0
 max      = 2
@@ -981,7 +981,7 @@
 base     = GameSettings
 var      = game_creation.starting_year
 type     = SLE_INT32
-guiflags = NC
+guiflags = SGF_NOCOMMA
 def      = DEF_START_YEAR
 min      = MIN_YEAR
 max      = MAX_YEAR
@@ -1020,7 +1020,7 @@
 var      = economy.town_growth_rate
 type     = SLE_UINT8
 from     = 54
-guiflags = MS
+guiflags = SGF_MULTISTRING
 def      = 2
 min      = 0
 max      = 4
@@ -1031,7 +1031,7 @@
 var      = economy.larger_towns
 type     = SLE_UINT8
 from     = 54
-guiflags = D0
+guiflags = SGF_0ISDISABLED
 def      = 4
 min      = 0
 max      = 255
@@ -1096,7 +1096,7 @@
 var      = ai.ai_max_opcode_till_suspend
 type     = SLE_UINT32
 from     = 107
-guiflags = NG
+guiflags = SGF_NEWGAME_ONLY
 def      = 10000
 min      = 5000
 max      = 250000
@@ -1225,7 +1225,7 @@
 base     = GameSettings
 var      = pf.npf.npf_rail_firstred_penalty
 type     = SLE_UINT
-def      = ( 10 * NPF_TILE_LENGTH)
+def      = 10 * NPF_TILE_LENGTH
 min      = 0
 max      = 100000
 
@@ -1233,7 +1233,7 @@
 base     = GameSettings
 var      = pf.npf.npf_rail_firstred_exit_penalty
 type     = SLE_UINT
-def      = (100 * NPF_TILE_LENGTH)
+def      = 100 * NPF_TILE_LENGTH
 min      = 0
 max      = 100000
 
@@ -1241,7 +1241,7 @@
 base     = GameSettings
 var      = pf.npf.npf_rail_lastred_penalty
 type     = SLE_UINT
-def      = ( 10 * NPF_TILE_LENGTH)
+def      = 10 * NPF_TILE_LENGTH
 min      = 0
 max      = 100000
 
@@ -1249,7 +1249,7 @@
 base     = GameSettings
 var      = pf.npf.npf_rail_station_penalty
 type     = SLE_UINT
-def      = (  1 * NPF_TILE_LENGTH)
+def      = 1 * NPF_TILE_LENGTH
 min      = 0
 max      = 100000
 
@@ -1257,7 +1257,7 @@
 base     = GameSettings
 var      = pf.npf.npf_rail_slope_penalty
 type     = SLE_UINT
-def      = (  1 * NPF_TILE_LENGTH)
+def      = 1 * NPF_TILE_LENGTH
 min      = 0
 max      = 100000
 
@@ -1265,7 +1265,7 @@
 base     = GameSettings
 var      = pf.npf.npf_rail_curve_penalty
 type     = SLE_UINT
-def      = (  1 * NPF_TILE_LENGTH)
+def      = 1 * NPF_TILE_LENGTH
 min      = 0
 max      = 100000
 
@@ -1273,7 +1273,7 @@
 base     = GameSettings
 var      = pf.npf.npf_rail_depot_reverse_penalty
 type     = SLE_UINT
-def      = ( 50 * NPF_TILE_LENGTH)
+def      = 50 * NPF_TILE_LENGTH
 min      = 0
 max      = 100000
 
@@ -1282,7 +1282,7 @@
 var      = pf.npf.npf_rail_pbs_cross_penalty
 type     = SLE_UINT
 from     = 100
-def      = (  3 * NPF_TILE_LENGTH)
+def      = 3 * NPF_TILE_LENGTH
 min      = 0
 max      = 100000
 
@@ -1291,7 +1291,7 @@
 var      = pf.npf.npf_rail_pbs_signal_back_penalty
 type     = SLE_UINT
 from     = 100
-def      = ( 15 * NPF_TILE_LENGTH)
+def      = 15 * NPF_TILE_LENGTH
 min      = 0
 max      = 100000
 
@@ -1299,7 +1299,7 @@
 base     = GameSettings
 var      = pf.npf.npf_buoy_penalty
 type     = SLE_UINT
-def      = (  2 * NPF_TILE_LENGTH)
+def      = 2 * NPF_TILE_LENGTH
 min      = 0
 max      = 100000
 
@@ -1307,7 +1307,7 @@
 base     = GameSettings
 var      = pf.npf.npf_water_curve_penalty
 type     = SLE_UINT
-def      = (  1 * NPF_TILE_LENGTH)
+def      = 1 * NPF_TILE_LENGTH
 min      = 0
 max      = 100000
 
@@ -1315,7 +1315,7 @@
 base     = GameSettings
 var      = pf.npf.npf_road_curve_penalty
 type     = SLE_UINT
-def      = (  1 * NPF_TILE_LENGTH)
+def      = 1 * NPF_TILE_LENGTH
 min      = 0
 max      = 100000
 
@@ -1323,7 +1323,7 @@
 base     = GameSettings
 var      = pf.npf.npf_crossing_penalty
 type     = SLE_UINT
-def      = (  3 * NPF_TILE_LENGTH)
+def      = 3 * NPF_TILE_LENGTH
 min      = 0
 max      = 100000
 
@@ -1332,7 +1332,7 @@
 var      = pf.npf.npf_road_drive_through_penalty
 type     = SLE_UINT
 from     = 47
-def      = (  8 * NPF_TILE_LENGTH)
+def      = 8 * NPF_TILE_LENGTH
 min      = 0
 max      = 100000
 
@@ -1341,7 +1341,7 @@
 var      = pf.npf.npf_road_dt_occupied_penalty
 type     = SLE_UINT
 from     = 130
-def      = (  8 * NPF_TILE_LENGTH)
+def      = 8 * NPF_TILE_LENGTH
 min      = 0
 max      = 100000
 
@@ -1350,7 +1350,7 @@
 var      = pf.npf.npf_road_bay_occupied_penalty
 type     = SLE_UINT
 from     = 130
-def      = ( 15 * NPF_TILE_LENGTH)
+def      = 15 * NPF_TILE_LENGTH
 min      = 0
 max      = 100000
 
@@ -1359,7 +1359,7 @@
 var      = pf.npf.maximum_go_to_depot_penalty
 type     = SLE_UINT
 from     = 131
-def      = ( 20 * NPF_TILE_LENGTH)
+def      = 20 * NPF_TILE_LENGTH
 min      = 0
 max      = 1000000
 
@@ -1652,7 +1652,7 @@
 var      = game_creation.land_generator
 type     = SLE_UINT8
 from     = 30
-guiflags = MS
+guiflags = SGF_MULTISTRING
 def      = 1
 min      = 0
 max      = 1
@@ -1673,7 +1673,7 @@
 var      = game_creation.tgen_smoothness
 type     = SLE_UINT8
 from     = 30
-guiflags = MS
+guiflags = SGF_MULTISTRING
 def      = 1
 min      = 0
 max      = 3
@@ -1683,7 +1683,7 @@
 base     = GameSettings
 var      = game_creation.variety
 type     = SLE_UINT8
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 0
 min      = 0
 max      = 5
@@ -1702,7 +1702,7 @@
 var      = game_creation.tree_placer
 type     = SLE_UINT8
 from     = 30
-guiflags = MS
+guiflags = SGF_MULTISTRING
 def      = 2
 min      = 0
 max      = 2
@@ -1712,8 +1712,8 @@
 base     = GameSettings
 var      = game_creation.heightmap_rotation
 type     = SLE_UINT8
-flags    = S
-guiflags = MS
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_MULTISTRING
 def      = 0
 min      = 0
 max      = 1
@@ -1723,7 +1723,7 @@
 base     = GameSettings
 var      = game_creation.se_flat_world_height
 type     = SLE_UINT8
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 1
 min      = 0
 max      = 15
@@ -1734,7 +1734,7 @@
 base     = GameSettings
 var      = game_creation.map_x
 type     = SLE_UINT8
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 8
 min      = MIN_MAP_SIZE_BITS
 max      = MAX_MAP_SIZE_BITS
@@ -1743,7 +1743,7 @@
 base     = GameSettings
 var      = game_creation.map_y
 type     = SLE_UINT8
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 8
 min      = MIN_MAP_SIZE_BITS
 max      = MAX_MAP_SIZE_BITS
@@ -1779,7 +1779,7 @@
 var      = construction.extra_tree_placement
 type     = SLE_UINT8
 from     = 132
-guiflags = MS
+guiflags = SGF_MULTISTRING
 def      = 2
 min      = 0
 max      = 2
@@ -1801,7 +1801,7 @@
 var      = locale.currency
 type     = SLE_UINT8
 from     = 97
-flags    = N
+flags    = SLF_NO_NETWORK_SYNC
 def      = 0
 max      = CUSTOM_CURRENCY_ID
 full     = _locale_currencies
@@ -1812,7 +1812,7 @@
 var      = locale.units
 type     = SLE_UINT8
 from     = 97
-flags    = N
+flags    = SLF_NO_NETWORK_SYNC
 def      = 1
 max      = 2
 full     = _locale_units
@@ -1823,7 +1823,7 @@
 var      = locale.digit_group_separator
 type     = SLE_STRQ
 from     = 118
-flags    = N
+flags    = SLF_NO_NETWORK_SYNC
 def      = NULL
 proc     = RedrawScreen
 
@@ -1832,7 +1832,7 @@
 var      = locale.digit_group_separator_currency
 type     = SLE_STRQ
 from     = 118
-flags    = N
+flags    = SLF_NO_NETWORK_SYNC
 def      = NULL
 proc     = RedrawScreen
 
@@ -1841,7 +1841,7 @@
 var      = locale.digit_decimal_separator
 type     = SLE_STRQ
 from     = 126
-flags    = N
+flags    = SLF_NO_NETWORK_SYNC
 def      = NULL
 proc     = RedrawScreen
 
@@ -1852,21 +1852,21 @@
 [SDTC_OMANY]
 var      = gui.autosave
 type     = SLE_UINT8
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 1
 max      = 4
 full     = _autosave_interval
 
 [SDTC_BOOL]
 var      = gui.threaded_saves
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = true
 
 [SDTC_OMANY]
 var      = gui.date_format_in_default_names
 type     = SLE_UINT8
-flags    = S
-guiflags = MS
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_MULTISTRING
 def      = 0
 max      = 2
 full     = _savegame_date
@@ -1874,44 +1874,44 @@
 
 [SDTC_BOOL]
 var      = gui.show_finances
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = true
 str      = STR_CONFIG_SETTING_SHOWFINANCES
 
 [SDTC_BOOL]
 var      = gui.autoscroll
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 str      = STR_CONFIG_SETTING_AUTOSCROLL
 
 [SDTC_BOOL]
 var      = gui.reverse_scroll
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 str      = STR_CONFIG_SETTING_REVERSE_SCROLLING
 
 [SDTC_BOOL]
 var      = gui.smooth_scroll
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 str      = STR_CONFIG_SETTING_SMOOTH_SCROLLING
 
 [SDTC_BOOL]
 var      = gui.left_mouse_btn_scrolling
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 str      = STR_CONFIG_SETTING_LEFT_MOUSE_BTN_SCROLLING
 
 [SDTC_BOOL]
 var      = gui.measure_tooltip
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = true
 str      = STR_CONFIG_SETTING_MEASURE_TOOLTIP
 
 [SDTC_VAR]
 var      = gui.errmsg_duration
 type     = SLE_UINT8
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 5
 min      = 0
 max      = 20
@@ -1920,8 +1920,8 @@
 [SDTC_VAR]
 var      = gui.hover_delay
 type     = SLE_UINT8
-flags    = S
-guiflags = D0
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_0ISDISABLED
 def      = 2
 min      = 1
 max      = 5
@@ -1930,8 +1930,8 @@
 [SDTC_VAR]
 var      = gui.toolbar_pos
 type     = SLE_UINT8
-flags    = S
-guiflags = MS
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_MULTISTRING
 def      = 1
 min      = 0
 max      = 2
@@ -1941,8 +1941,8 @@
 [SDTC_VAR]
 var      = gui.statusbar_pos
 type     = SLE_UINT8
-flags    = S
-guiflags = MS
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_MULTISTRING
 def      = 1
 min      = 0
 max      = 2
@@ -1952,8 +1952,8 @@
 [SDTC_VAR]
 var      = gui.window_snap_radius
 type     = SLE_UINT8
-flags    = S
-guiflags = D0
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_0ISDISABLED
 def      = 10
 min      = 1
 max      = 32
@@ -1962,8 +1962,8 @@
 [SDTC_VAR]
 var      = gui.window_soft_limit
 type     = SLE_UINT8
-flags    = S
-guiflags = D0
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_0ISDISABLED
 def      = 20
 min      = 5
 max      = 255
@@ -1972,22 +1972,22 @@
 
 [SDTC_BOOL]
 var      = gui.population_in_label
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = true
 str      = STR_CONFIG_SETTING_POPULATION_IN_LABEL
 proc     = PopulationInLabelActive
 
 [SDTC_BOOL]
 var      = gui.link_terraform_toolbar
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 str      = STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR
 
 [SDTC_VAR]
 var      = gui.smallmap_land_colour
 type     = SLE_UINT8
-flags    = S
-guiflags = MS
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_MULTISTRING
 def      = 0
 min      = 0
 max      = 2
@@ -1997,8 +1997,8 @@
 [SDTC_VAR]
 var      = gui.liveries
 type     = SLE_UINT8
-flags    = S
-guiflags = MS
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_MULTISTRING
 def      = 2
 min      = 0
 max      = 2
@@ -2007,15 +2007,15 @@
 
 [SDTC_BOOL]
 var      = gui.prefer_teamchat
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 str      = STR_CONFIG_SETTING_PREFER_TEAMCHAT
 
 [SDTC_VAR]
 var      = gui.scrollwheel_scrolling
 type     = SLE_UINT8
-flags    = S
-guiflags = MS
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_MULTISTRING
 def      = 0
 min      = 0
 max      = 2
@@ -2024,7 +2024,7 @@
 [SDTC_VAR]
 var      = gui.scrollwheel_multiplier
 type     = SLE_UINT8
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 5
 min      = 1
 max      = 15
@@ -2033,15 +2033,15 @@
 
 [SDTC_BOOL]
 var      = gui.pause_on_newgame
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 str      = STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME
 
 [SDTC_VAR]
 var      = gui.advanced_vehicle_list
 type     = SLE_UINT8
-flags    = S
-guiflags = MS
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_MULTISTRING
 def      = 1
 min      = 0
 max      = 2
@@ -2049,29 +2049,29 @@
 
 [SDTC_BOOL]
 var      = gui.timetable_in_ticks
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 str      = STR_CONFIG_SETTING_TIMETABLE_IN_TICKS
 proc     = InvalidateVehTimetableWindow
 
 [SDTC_BOOL]
 var      = gui.timetable_arrival_departure
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = true
 str      = STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE
 proc     = InvalidateVehTimetableWindow
 
 [SDTC_BOOL]
 var      = gui.quick_goto
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 str      = STR_CONFIG_SETTING_QUICKGOTO
 
 [SDTC_VAR]
 var      = gui.loading_indicators
 type     = SLE_UINT8
-flags    = S
-guiflags = MS
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_MULTISTRING
 def      = 1
 min      = 0
 max      = 2
@@ -2081,8 +2081,8 @@
 [SDTC_VAR]
 var      = gui.default_rail_type
 type     = SLE_UINT8
-flags    = S
-guiflags = MS
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_MULTISTRING
 def      = 0
 min      = 0
 max      = 2
@@ -2090,7 +2090,7 @@
 
 [SDTC_BOOL]
 var      = gui.enable_signal_gui
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = true
 str      = STR_CONFIG_SETTING_ENABLE_SIGNAL_GUI
 proc     = CloseSignalGUI
@@ -2098,8 +2098,8 @@
 [SDTC_VAR]
 var      = gui.coloured_news_year
 type     = SLE_INT32
-flags    = S
-guiflags = NC
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NOCOMMA
 def      = 2000
 min      = MIN_YEAR
 max      = MAX_YEAR
@@ -2109,7 +2109,7 @@
 [SDTC_VAR]
 var      = gui.drag_signals_density
 type     = SLE_UINT8
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 4
 min      = 1
 max      = 20
@@ -2119,8 +2119,8 @@
 [SDTC_VAR]
 var      = gui.semaphore_build_before
 type     = SLE_INT32
-flags    = S
-guiflags = NC
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NOCOMMA
 def      = 1950
 min      = MIN_YEAR
 max      = MAX_YEAR
@@ -2130,15 +2130,15 @@
 
 [SDTC_BOOL]
 var      = gui.vehicle_income_warn
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = true
 str      = STR_CONFIG_SETTING_WARN_INCOME_LESS
 
 [SDTC_VAR]
 var      = gui.order_review_system
 type     = SLE_UINT8
-flags    = S
-guiflags = MS
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_MULTISTRING
 def      = 2
 min      = 0
 max      = 2
@@ -2146,28 +2146,28 @@
 
 [SDTC_BOOL]
 var      = gui.lost_vehicle_warn
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = true
 str      = STR_CONFIG_SETTING_WARN_LOST_VEHICLE
 
 [SDTC_BOOL]
 var      = gui.disable_unsuitable_building
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = true
 str      = STR_CONFIG_SETTING_DISABLE_UNSUITABLE_BUILDING
 proc     = RedrawScreen
 
 [SDTC_BOOL]
 var      = gui.new_nonstop
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 str      = STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT
 
 [SDTC_VAR]
 var      = gui.stop_location
 type     = SLE_UINT8
-flags    = S
-guiflags = MS
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_MULTISTRING
 def      = 2
 min      = 0
 max      = 2
@@ -2176,38 +2176,38 @@
 
 [SDTC_BOOL]
 var      = gui.keep_all_autosave
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 
 [SDTC_BOOL]
 var      = gui.autosave_on_exit
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 
 [SDTC_VAR]
 var      = gui.max_num_autosaves
 type     = SLE_UINT8
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 16
 min      = 0
 max      = 255
 
 [SDTC_BOOL]
 var      = gui.auto_euro
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = true
 
 [SDTC_VAR]
 var      = gui.news_message_timeout
 type     = SLE_UINT8
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 2
 min      = 1
 max      = 255
 
 [SDTC_BOOL]
 var      = gui.show_track_reservation
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 str      = STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION
 proc     = RedrawScreen
@@ -2215,8 +2215,8 @@
 [SDTC_VAR]
 var      = gui.default_signal_type
 type     = SLE_UINT8
-flags    = S
-guiflags = MS
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_MULTISTRING
 def      = 1
 min      = 0
 max      = 2
@@ -2226,8 +2226,8 @@
 [SDTC_VAR]
 var      = gui.cycle_signal_types
 type     = SLE_UINT8
-flags    = S
-guiflags = MS
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_MULTISTRING
 def      = 2
 min      = 0
 max      = 2
@@ -2237,7 +2237,7 @@
 [SDTC_VAR]
 var      = gui.station_numtracks
 type     = SLE_UINT8
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 1
 min      = 1
 max      = 7
@@ -2245,30 +2245,30 @@
 [SDTC_VAR]
 var      = gui.station_platlength
 type     = SLE_UINT8
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 5
 min      = 1
 max      = 7
 
 [SDTC_BOOL]
 var      = gui.station_dragdrop
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = true
 
 [SDTC_BOOL]
 var      = gui.station_show_coverage
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 
 [SDTC_BOOL]
 var      = gui.persistent_buildingtools
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = true
 str      = STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS
 
 [SDTC_BOOL]
 var      = gui.expenses_layout
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 str      = STR_CONFIG_SETTING_EXPENSES_LAYOUT
 proc     = RedrawScreen
@@ -2278,49 +2278,49 @@
 [SDTC_BOOL]
 ifdef    = DEDICATED
 var      = gui.show_date_in_logs
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = true
 
 [SDTC_BOOL]
 ifndef   = DEDICATED
 var      = gui.show_date_in_logs
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 
 [SDTC_VAR]
 var      = gui.developer
 type     = SLE_UINT8
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 1
 min      = 0
 max      = 2
 
 [SDTC_BOOL]
 var      = gui.newgrf_developer_tools
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 proc     = InvalidateNewGRFChangeWindows
 
 [SDTC_BOOL]
 var      = gui.ai_developer_tools
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 
 [SDTC_BOOL]
 var      = gui.scenario_developer
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 proc     = InvalidateNewGRFChangeWindows
 
 [SDTC_BOOL]
 var      = gui.newgrf_show_old_versions
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 
 [SDTC_VAR]
 var      = gui.console_backlog_timeout
 type     = SLE_UINT16
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 100
 min      = 10
 max      = 65500
@@ -2328,7 +2328,7 @@
 [SDTC_VAR]
 var      = gui.console_backlog_length
 type     = SLE_UINT16
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 100
 min      = 10
 max      = 65500
@@ -2337,7 +2337,7 @@
 ifdef    = ENABLE_NETWORK
 var      = gui.network_chat_box_width
 type     = SLE_UINT16
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 620
 min      = 200
 max      = 65535
@@ -2346,7 +2346,7 @@
 ifdef    = ENABLE_NETWORK
 var      = gui.network_chat_box_height
 type     = SLE_UINT8
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 25
 min      = 5
 max      = 255
@@ -2355,7 +2355,7 @@
 ifdef    = ENABLE_NETWORK
 var      = gui.network_chat_timeout
 type     = SLE_UINT16
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 20
 min      = 1
 max      = 65535
@@ -2364,8 +2364,8 @@
 ifdef    = ENABLE_NETWORK
 var      = network.sync_freq
 type     = SLE_UINT16
-flags    = C|S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NOT_IN_CONFIG | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = 100
 min      = 0
 max      = 100
@@ -2374,8 +2374,8 @@
 ifdef    = ENABLE_NETWORK
 var      = network.frame_freq
 type     = SLE_UINT8
-flags    = C|S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NOT_IN_CONFIG | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = 0
 min      = 0
 max      = 100
@@ -2384,8 +2384,8 @@
 ifdef    = ENABLE_NETWORK
 var      = network.commands_per_frame
 type     = SLE_UINT16
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = 2
 min      = 1
 max      = 65535
@@ -2394,8 +2394,8 @@
 ifdef    = ENABLE_NETWORK
 var      = network.max_commands_in_queue
 type     = SLE_UINT16
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = 16
 min      = 1
 max      = 65535
@@ -2404,8 +2404,8 @@
 ifdef    = ENABLE_NETWORK
 var      = network.bytes_per_frame
 type     = SLE_UINT16
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = 8
 min      = 1
 max      = 65535
@@ -2414,8 +2414,8 @@
 ifdef    = ENABLE_NETWORK
 var      = network.bytes_per_frame_burst
 type     = SLE_UINT16
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = 256
 min      = 1
 max      = 65535
@@ -2424,8 +2424,8 @@
 ifdef    = ENABLE_NETWORK
 var      = network.max_join_time
 type     = SLE_UINT16
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = 500
 min      = 0
 max      = 32000
@@ -2433,16 +2433,16 @@
 [SDTC_BOOL]
 ifdef    = ENABLE_NETWORK
 var      = network.pause_on_join
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = true
 
 [SDTC_VAR]
 ifdef    = ENABLE_NETWORK
 var      = network.server_port
 type     = SLE_UINT16
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = NETWORK_DEFAULT_PORT
 min      = 0
 max      = 65535
@@ -2451,8 +2451,8 @@
 ifdef    = ENABLE_NETWORK
 var      = network.server_admin_port
 type     = SLE_UINT16
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = NETWORK_ADMIN_PORT
 min      = 0
 max      = 65535
@@ -2460,23 +2460,23 @@
 [SDTC_BOOL]
 ifdef    = ENABLE_NETWORK
 var      = network.server_admin_chat
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = true
 
 [SDTC_BOOL]
 ifdef    = ENABLE_NETWORK
 var      = network.server_advertise
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = false
 
 [SDTC_VAR]
 ifdef    = ENABLE_NETWORK
 var      = network.lan_internet
 type     = SLE_UINT8
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = 0
 min      = 0
 max      = 1
@@ -2485,7 +2485,7 @@
 ifdef    = ENABLE_NETWORK
 var      = network.client_name
 type     = SLE_STRB
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = NULL
 proc     = UpdateClientName
 
@@ -2493,8 +2493,8 @@
 ifdef    = ENABLE_NETWORK
 var      = network.server_password
 type     = SLE_STRB
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = NULL
 proc     = UpdateServerPassword
 
@@ -2502,8 +2502,8 @@
 ifdef    = ENABLE_NETWORK
 var      = network.rcon_password
 type     = SLE_STRB
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = NULL
 proc     = UpdateRconPassword
 
@@ -2511,53 +2511,53 @@
 ifdef    = ENABLE_NETWORK
 var      = network.admin_password
 type     = SLE_STRB
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = NULL
 
 [SDTC_STR]
 ifdef    = ENABLE_NETWORK
 var      = network.default_company_pass
 type     = SLE_STRB
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = NULL
 
 [SDTC_STR]
 ifdef    = ENABLE_NETWORK
 var      = network.server_name
 type     = SLE_STRB
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = NULL
 
 [SDTC_STR]
 ifdef    = ENABLE_NETWORK
 var      = network.connect_to_ip
 type     = SLE_STRB
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = NULL
 
 [SDTC_STR]
 ifdef    = ENABLE_NETWORK
 var      = network.network_id
 type     = SLE_STRB
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = NULL
 
 [SDTC_BOOL]
 ifdef    = ENABLE_NETWORK
 var      = network.autoclean_companies
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = false
 
 [SDTC_VAR]
 ifdef    = ENABLE_NETWORK
 var      = network.autoclean_unprotected
 type     = SLE_UINT8
-flags    = S
-guiflags = D0|NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_0ISDISABLED | SGF_NETWORK_ONLY
 def      = 12
 min      = 0
 max      = 240
@@ -2566,8 +2566,8 @@
 ifdef    = ENABLE_NETWORK
 var      = network.autoclean_protected
 type     = SLE_UINT8
-flags    = S
-guiflags = D0|NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_0ISDISABLED | SGF_NETWORK_ONLY
 def      = 36
 min      = 0
 max      = 240
@@ -2576,8 +2576,8 @@
 ifdef    = ENABLE_NETWORK
 var      = network.autoclean_novehicles
 type     = SLE_UINT8
-flags    = S
-guiflags = D0|NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_0ISDISABLED | SGF_NETWORK_ONLY
 def      = 0
 min      = 0
 max      = 240
@@ -2586,8 +2586,8 @@
 ifdef    = ENABLE_NETWORK
 var      = network.max_companies
 type     = SLE_UINT8
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = 15
 min      = 1
 max      = MAX_COMPANIES
@@ -2597,8 +2597,8 @@
 ifdef    = ENABLE_NETWORK
 var      = network.max_clients
 type     = SLE_UINT8
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = 25
 min      = 2
 max      = MAX_CLIENTS
@@ -2607,8 +2607,8 @@
 ifdef    = ENABLE_NETWORK
 var      = network.max_spectators
 type     = SLE_UINT8
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = 15
 min      = 0
 max      = MAX_CLIENTS
@@ -2618,8 +2618,8 @@
 ifdef    = ENABLE_NETWORK
 var      = network.restart_game_year
 type     = SLE_INT32
-flags    = S
-guiflags = D0|NO|NC
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_0ISDISABLED | SGF_NETWORK_ONLY | SGF_NOCOMMA
 def      = 0
 min      = MIN_YEAR
 max      = MAX_YEAR
@@ -2629,8 +2629,8 @@
 ifdef    = ENABLE_NETWORK
 var      = network.min_active_clients
 type     = SLE_UINT8
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = 0
 min      = 0
 max      = MAX_CLIENTS
@@ -2639,8 +2639,8 @@
 ifdef    = ENABLE_NETWORK
 var      = network.server_lang
 type     = SLE_UINT8
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = 0
 max      = 35
 full     = _server_langs
@@ -2648,22 +2648,22 @@
 [SDTC_BOOL]
 ifdef    = ENABLE_NETWORK
 var      = network.reload_cfg
-flags    = S
-guiflags = NO
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NETWORK_ONLY
 def      = false
 
 [SDTC_STR]
 ifdef    = ENABLE_NETWORK
 var      = network.last_host
 type     = SLE_STRB
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = """"
 
 [SDTC_VAR]
 ifdef    = ENABLE_NETWORK
 var      = network.last_port
 type     = SLE_UINT16
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = 0
 min      = 0
 max      = UINT16_MAX
@@ -2671,7 +2671,7 @@
 [SDTC_BOOL]
 ifdef    = ENABLE_NETWORK
 var      = network.no_http_content_downloads
-flags    = S
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 def      = false
 
 ; Since the network code (CmdChangeSetting and friends) use the index in this array to decide
@@ -2685,8 +2685,8 @@
 ifdef    = __APPLE__
 var      = gui.right_mouse_btn_emulation
 type     = SLE_UINT8
-flags    = S
-guiflags = MS
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_MULTISTRING
 def      = 0
 min      = 0
 max      = 2
--- a/src/table/win32_settings.ini
+++ b/src/table/win32_settings.ini
@@ -14,7 +14,7 @@
 SDTG_END  = SDTG_END()
 
 [defaults]
-flags    = 0
+flags    = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
 guiflags = 0
 interval = 0
 str      = STR_NULL
@@ -28,7 +28,6 @@
 [SDTG_VAR]
 name     = ""display_hz""
 type     = SLE_UINT
-flags    = S
 var      = _display_hz
 def      = 0
 min      = 0
@@ -36,14 +35,12 @@
 
 [SDTG_BOOL]
 name     = ""force_full_redraw""
-flags    = S
 var      = _force_full_redraw
 def      = false
 
 [SDTG_VAR]
 name     = ""fullscreen_bpp""
 type     = SLE_UINT
-flags    = S
 var      = _fullscreen_bpp
 def      = 8
 min      = 8
@@ -51,7 +48,6 @@
 
 [SDTG_BOOL]
 name     = ""window_maximize""
-flags    = S
 var      = _window_maximize
 def      = false