; 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 .
;
; Script settings as stored in the main configuration file ("openttd.cfg")
; and in the savegame PATS chunk.
[pre-amble]
static std::initializer_list _settings_profiles{"easy", "medium", "hard"};
static const SettingVariant _script_settings_table[] = {
[post-amble]
};
[templates]
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]
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_OMANY]
var = script.settings_profile
type = SLE_UINT8
from = SLV_178
flags = SF_GUI_DROPDOWN
def = SP_EASY
min = SP_EASY
max = SP_HARD
full = _settings_profiles
str = STR_CONFIG_SETTING_AI_PROFILE
strhelp = STR_CONFIG_SETTING_AI_PROFILE_HELPTEXT
strval = STR_CONFIG_SETTING_AI_PROFILE_EASY
cat = SC_BASIC
[SDT_VAR]
var = script.script_max_opcode_till_suspend
type = SLE_UINT32
from = SLV_107
flags = SF_NEWGAME_ONLY
def = 10000
min = 500
max = 250000
interval = 2500
str = STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES
strhelp = STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT
strval = STR_JUST_COMMA
cat = SC_EXPERT
[SDT_VAR]
var = script.script_max_memory_megabytes
type = SLE_UINT32
from = SLV_SCRIPT_MEMLIMIT
flags = SF_NEWGAME_ONLY
def = 1024
min = 8
max = 8192
interval = 8
str = STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY
strhelp = STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_HELPTEXT
strval = STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_VALUE
cat = SC_EXPERT
[SDT_BOOL]
var = ai.ai_in_multiplayer
def = true
str = STR_CONFIG_SETTING_AI_IN_MULTIPLAYER
strhelp = STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT
cat = SC_BASIC
[SDT_BOOL]
var = ai.ai_disable_veh_train
def = false
str = STR_CONFIG_SETTING_AI_BUILDS_TRAINS
strhelp = STR_CONFIG_SETTING_AI_BUILDS_TRAINS_HELPTEXT
[SDT_BOOL]
var = ai.ai_disable_veh_roadveh
def = false
str = STR_CONFIG_SETTING_AI_BUILDS_ROAD_VEHICLES
strhelp = STR_CONFIG_SETTING_AI_BUILDS_ROAD_VEHICLES_HELPTEXT
[SDT_BOOL]
var = ai.ai_disable_veh_aircraft
def = false
str = STR_CONFIG_SETTING_AI_BUILDS_AIRCRAFT
strhelp = STR_CONFIG_SETTING_AI_BUILDS_AIRCRAFT_HELPTEXT
[SDT_BOOL]
var = ai.ai_disable_veh_ship
def = false
str = STR_CONFIG_SETTING_AI_BUILDS_SHIPS
strhelp = STR_CONFIG_SETTING_AI_BUILDS_SHIPS_HELPTEXT