summaryrefslogtreecommitdiff
path: root/src/table/settings/game_settings.ini
diff options
context:
space:
mode:
authorPatric Stout <truebrain@openttd.org>2021-07-09 21:16:03 +0200
committerGitHub <noreply@github.com>2021-07-09 21:16:03 +0200
commit8f5d0ecde39cbaf2ac1a6d27e82239bfc3bf1515 (patch)
tree232daba5b6f77f8ae33191c0b88dd21ef662a1c1 /src/table/settings/game_settings.ini
parentd9ca9ca55571829af88429147e20bf0734e07e2d (diff)
downloadopenttd-8f5d0ecde39cbaf2ac1a6d27e82239bfc3bf1515.tar.xz
Codechange: split settings.ini over several files (#9421)
This reduced the load on compilers, as currently for example MacOS doesn't like the huge settings-tables. Additionally, nobody can find settings, as the list is massive and unordered. By splitting it, it becomes a little bit more sensible.
Diffstat (limited to 'src/table/settings/game_settings.ini')
-rw-r--r--src/table/settings/game_settings.ini421
1 files changed, 421 insertions, 0 deletions
diff --git a/src/table/settings/game_settings.ini b/src/table/settings/game_settings.ini
new file mode 100644
index 000000000..2a51279e5
--- /dev/null
+++ b/src/table/settings/game_settings.ini
@@ -0,0 +1,421 @@
+; This file is part of OpenTTD.
+; OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
+; OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+; See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
+;
+
+; Game settings as stored in the main configuration file ("openttd.cfg")
+; and in the savegame PATS chunk.
+; Game settings are everything related to vehicles, stations, orders, etc.
+
+[pre-amble]
+static std::initializer_list<const char*> _roadsides{"left", "right"};
+
+static void StationSpreadChanged(int32 new_value);
+static void UpdateConsists(int32 new_value);
+static void TrainAccelerationModelChanged(int32 new_value);
+static void RoadVehAccelerationModelChanged(int32 new_value);
+static void TrainSlopeSteepnessChanged(int32 new_value);
+static void RoadVehSlopeSteepnessChanged(int32 new_value);
+static bool CheckRoadSide(int32 &new_value);
+static bool CheckDynamicEngines(int32 &new_value);
+static void StationCatchmentChanged(int32 new_value);
+static void MaxVehiclesChanged(int32 new_value);
+
+static const SettingVariant _game_settings_table[] = {
+[post-amble]
+};
+[templates]
+SDTG_BOOL = SDTG_BOOL($name, $flags, $var, $def, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $cat, $extra, $startup),
+SDTG_VAR = SDTG_VAR($name, $type, $flags, $var, $def, $min, $max, $interval, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $cat, $extra, $startup),
+SDTC_BOOL = SDTC_BOOL( $var, $flags, $def, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $cat, $extra, $startup),
+SDT_BOOL = SDT_BOOL(GameSettings, $var, $flags, $def, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $cat, $extra, $startup),
+SDT_OMANY = SDT_OMANY(GameSettings, $var, $type, $flags, $def, $max, $full, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $load, $cat, $extra, $startup),
+SDT_VAR = SDT_VAR(GameSettings, $var, $type, $flags, $def, $min, $max, $interval, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $cat, $extra, $startup),
+
+[validation]
+SDTG_VAR = static_assert($max <= MAX_$type, "Maximum value for $var exceeds storage size");
+SDT_OMANY = static_assert($max <= MAX_$type, "Maximum value for GameSettings.$var exceeds storage size");
+SDT_VAR = static_assert($max <= MAX_$type, "Maximum value for GameSettings.$var exceeds storage size");
+
+[defaults]
+flags = SF_NONE
+interval = 0
+str = STR_NULL
+strhelp = STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT
+strval = STR_NULL
+pre_cb = nullptr
+post_cb = nullptr
+load = nullptr
+from = SL_MIN_VERSION
+to = SL_MAX_VERSION
+cat = SC_ADVANCED
+extra = 0
+startup = false
+
+
+[SDT_BOOL]
+var = order.no_servicing_if_no_breakdowns
+def = true
+str = STR_CONFIG_SETTING_NOSERVICE
+strhelp = STR_CONFIG_SETTING_NOSERVICE_HELPTEXT
+
+[SDT_BOOL]
+var = order.improved_load
+flags = SF_NO_NETWORK
+def = true
+cat = SC_EXPERT
+
+[SDT_BOOL]
+var = order.selectgoods
+def = true
+cat = SC_EXPERT
+
+[SDT_BOOL]
+var = order.serviceathelipad
+def = true
+str = STR_CONFIG_SETTING_SERVICEATHELIPAD
+strhelp = STR_CONFIG_SETTING_SERVICEATHELIPAD_HELPTEXT
+cat = SC_EXPERT
+
+[SDT_BOOL]
+var = order.gradual_loading
+from = SLV_40
+flags = SF_NO_NETWORK
+def = true
+cat = SC_EXPERT
+
+[SDT_BOOL]
+var = station.never_expire_airports
+flags = SF_NO_NETWORK
+def = false
+str = STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS
+strhelp = STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS_HELPTEXT
+
+[SDT_VAR]
+var = station.station_spread
+type = SLE_UINT8
+def = 12
+min = 4
+max = 64
+str = STR_CONFIG_SETTING_STATION_SPREAD
+strhelp = STR_CONFIG_SETTING_STATION_SPREAD_HELPTEXT
+strval = STR_CONFIG_SETTING_TILE_LENGTH
+post_cb = StationSpreadChanged
+cat = SC_BASIC
+
+[SDT_BOOL]
+var = station.modified_catchment
+def = true
+str = STR_CONFIG_SETTING_CATCHMENT
+strhelp = STR_CONFIG_SETTING_CATCHMENT_HELPTEXT
+post_cb = StationCatchmentChanged
+cat = SC_EXPERT
+
+[SDT_BOOL]
+var = station.serve_neutral_industries
+def = true
+from = SLV_SERVE_NEUTRAL_INDUSTRIES
+str = STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES
+strhelp = STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES_HELPTEXT
+post_cb = StationCatchmentChanged
+
+[SDT_BOOL]
+var = station.adjacent_stations
+from = SLV_62
+def = true
+cat = SC_EXPERT
+
+[SDT_BOOL]
+var = station.distant_join_stations
+from = SLV_106
+def = true
+str = STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS
+strhelp = STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT
+post_cb = [](auto) { CloseWindowById(WC_SELECT_STATION, 0); }
+
+[SDT_OMANY]
+var = vehicle.road_side
+type = SLE_UINT8
+from = SLV_97
+flags = SF_GUI_DROPDOWN | SF_NO_NETWORK
+def = 1
+max = 1
+full = _roadsides
+str = STR_CONFIG_SETTING_ROAD_SIDE
+strhelp = STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT
+strval = STR_GAME_OPTIONS_ROAD_VEHICLES_DROPDOWN_LEFT
+pre_cb = CheckRoadSide
+cat = SC_BASIC
+
+[SDT_VAR]
+var = vehicle.train_acceleration_model
+type = SLE_UINT8
+flags = SF_GUI_DROPDOWN
+def = 1
+min = 0
+max = 1
+interval = 1
+str = STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL
+strhelp = STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL_HELPTEXT
+strval = STR_CONFIG_SETTING_ORIGINAL
+post_cb = TrainAccelerationModelChanged
+
+[SDT_VAR]
+var = vehicle.roadveh_acceleration_model
+type = SLE_UINT8
+from = SLV_139
+flags = SF_GUI_DROPDOWN
+def = 1
+min = 0
+max = 1
+interval = 1
+str = STR_CONFIG_SETTING_ROAD_VEHICLE_ACCELERATION_MODEL
+strhelp = STR_CONFIG_SETTING_ROAD_VEHICLE_ACCELERATION_MODEL_HELPTEXT
+strval = STR_CONFIG_SETTING_ORIGINAL
+post_cb = RoadVehAccelerationModelChanged
+
+[SDT_VAR]
+var = vehicle.train_slope_steepness
+type = SLE_UINT8
+from = SLV_133
+def = 3
+min = 0
+max = 10
+interval = 1
+str = STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS
+strhelp = STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT
+strval = STR_CONFIG_SETTING_PERCENTAGE
+post_cb = TrainSlopeSteepnessChanged
+cat = SC_EXPERT
+
+[SDT_VAR]
+var = vehicle.roadveh_slope_steepness
+type = SLE_UINT8
+from = SLV_139
+def = 7
+min = 0
+max = 10
+interval = 1
+str = STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS
+strhelp = STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT
+strval = STR_CONFIG_SETTING_PERCENTAGE
+post_cb = RoadVehSlopeSteepnessChanged
+cat = SC_EXPERT
+
+[SDT_VAR]
+var = vehicle.max_train_length
+type = SLE_UINT8
+from = SLV_159
+def = 7
+min = 1
+max = 64
+interval = 1
+str = STR_CONFIG_SETTING_TRAIN_LENGTH
+strhelp = STR_CONFIG_SETTING_TRAIN_LENGTH_HELPTEXT
+strval = STR_CONFIG_SETTING_TILE_LENGTH
+cat = SC_BASIC
+
+[SDT_VAR]
+var = vehicle.smoke_amount
+type = SLE_UINT8
+from = SLV_145
+flags = SF_GUI_DROPDOWN
+def = 1
+min = 0
+max = 2
+str = STR_CONFIG_SETTING_SMOKE_AMOUNT
+strhelp = STR_CONFIG_SETTING_SMOKE_AMOUNT_HELPTEXT
+strval = STR_CONFIG_SETTING_NONE
+
+[SDT_BOOL]
+var = vehicle.never_expire_vehicles
+flags = SF_NO_NETWORK
+def = false
+str = STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES
+strhelp = STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT
+
+[SDT_VAR]
+var = vehicle.max_trains
+type = SLE_UINT16
+def = 500
+min = 0
+max = 5000
+str = STR_CONFIG_SETTING_MAX_TRAINS
+strhelp = STR_CONFIG_SETTING_MAX_TRAINS_HELPTEXT
+strval = STR_JUST_COMMA
+post_cb = MaxVehiclesChanged
+cat = SC_BASIC
+
+[SDT_VAR]
+var = vehicle.max_roadveh
+type = SLE_UINT16
+def = 500
+min = 0
+max = 5000
+str = STR_CONFIG_SETTING_MAX_ROAD_VEHICLES
+strhelp = STR_CONFIG_SETTING_MAX_ROAD_VEHICLES_HELPTEXT
+strval = STR_JUST_COMMA
+post_cb = MaxVehiclesChanged
+cat = SC_BASIC
+
+[SDT_VAR]
+var = vehicle.max_aircraft
+type = SLE_UINT16
+def = 200
+min = 0
+max = 5000
+str = STR_CONFIG_SETTING_MAX_AIRCRAFT
+strhelp = STR_CONFIG_SETTING_MAX_AIRCRAFT_HELPTEXT
+strval = STR_JUST_COMMA
+post_cb = MaxVehiclesChanged
+cat = SC_BASIC
+
+[SDT_VAR]
+var = vehicle.max_ships
+type = SLE_UINT16
+def = 300
+min = 0
+max = 5000
+str = STR_CONFIG_SETTING_MAX_SHIPS
+strhelp = STR_CONFIG_SETTING_MAX_SHIPS_HELPTEXT
+strval = STR_JUST_COMMA
+post_cb = MaxVehiclesChanged
+cat = SC_BASIC
+
+[SDT_BOOL]
+var = vehicle.wagon_speed_limits
+flags = SF_NO_NETWORK
+def = true
+str = STR_CONFIG_SETTING_WAGONSPEEDLIMITS
+strhelp = STR_CONFIG_SETTING_WAGONSPEEDLIMITS_HELPTEXT
+post_cb = UpdateConsists
+
+[SDT_BOOL]
+var = vehicle.disable_elrails
+from = SLV_38
+flags = SF_NO_NETWORK
+def = false
+str = STR_CONFIG_SETTING_DISABLE_ELRAILS
+strhelp = STR_CONFIG_SETTING_DISABLE_ELRAILS_HELPTEXT
+post_cb = SettingsDisableElrail
+cat = SC_EXPERT
+
+[SDT_VAR]
+var = vehicle.freight_trains
+type = SLE_UINT8
+from = SLV_39
+flags = SF_NO_NETWORK
+def = 1
+min = 1
+max = 255
+interval = 1
+str = STR_CONFIG_SETTING_FREIGHT_TRAINS
+strhelp = STR_CONFIG_SETTING_FREIGHT_TRAINS_HELPTEXT
+strval = STR_JUST_COMMA
+post_cb = UpdateConsists
+
+[SDT_VAR]
+var = vehicle.plane_speed
+type = SLE_UINT8
+from = SLV_90
+flags = SF_NO_NETWORK
+def = 4
+min = 1
+max = 4
+str = STR_CONFIG_SETTING_PLANE_SPEED
+strhelp = STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT
+strval = STR_CONFIG_SETTING_PLANE_SPEED_VALUE
+
+[SDT_BOOL]
+var = vehicle.dynamic_engines
+from = SLV_95
+flags = SF_NO_NETWORK
+def = true
+pre_cb = CheckDynamicEngines
+cat = SC_EXPERT
+
+[SDT_VAR]
+var = vehicle.plane_crashes
+type = SLE_UINT8
+from = SLV_138
+flags = SF_GUI_DROPDOWN
+def = 2
+min = 0
+max = 2
+interval = 1
+str = STR_CONFIG_SETTING_PLANE_CRASHES
+strhelp = STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT
+strval = STR_CONFIG_SETTING_PLANE_CRASHES_NONE
+cat = SC_BASIC
+
+[SDT_VAR]
+var = vehicle.extend_vehicle_life
+type = SLE_UINT8
+def = 0
+min = 0
+max = 100
+cat = SC_EXPERT
+
+## Old vehicle settings.
+
+[SDTG_BOOL]
+name = """"
+flags = SF_NO_NETWORK
+var = _old_vds.servint_ispercent
+def = false
+to = SLV_120
+
+[SDTG_VAR]
+name = """"
+type = SLE_UINT16
+flags = SF_GUI_0_IS_SPECIAL
+var = _old_vds.servint_trains
+def = 150
+min = 5
+max = 800
+to = SLV_120
+
+[SDTG_VAR]
+name = """"
+type = SLE_UINT16
+flags = SF_GUI_0_IS_SPECIAL
+var = _old_vds.servint_roadveh
+def = 150
+min = 5
+max = 800
+to = SLV_120
+
+[SDTG_VAR]
+name = """"
+type = SLE_UINT16
+flags = SF_GUI_0_IS_SPECIAL
+var = _old_vds.servint_ships
+def = 360
+min = 5
+max = 800
+to = SLV_120
+
+[SDTG_VAR]
+name = """"
+type = SLE_UINT16
+flags = SF_GUI_0_IS_SPECIAL
+var = _old_vds.servint_aircraft
+def = 150
+min = 5
+max = 800
+to = SLV_120
+
+## These were once in the "gui" section, but they really are related to orders.
+
+[SDTC_BOOL]
+var = gui.sg_full_load_any
+from = SLV_22
+to = SLV_93
+def = true
+
+[SDTC_BOOL]
+var = gui.sg_new_nonstop
+from = SLV_22
+to = SLV_93
+def = false