You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
422 lines
12 KiB
INI
422 lines
12 KiB
INI
3 years ago
|
; 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
|