OpenTTD Source
20241108-master-g80f628063a
|
All actions handling saving and loading of the settings/configuration goes on in this file. More...
#include "stdafx.h"
#include <charconv>
#include "settings_table.h"
#include "debug.h"
#include "currency.h"
#include "network/network.h"
#include "network/network_func.h"
#include "network/core/config.h"
#include "command_func.h"
#include "console_func.h"
#include "genworld.h"
#include "string_func.h"
#include "window_func.h"
#include "company_func.h"
#include "rev.h"
#include "error.h"
#include "gamelog.h"
#include "settings_func.h"
#include "ini_type.h"
#include "ai/ai_config.hpp"
#include "game/game_config.hpp"
#include "newgrf_config.h"
#include "picker_func.h"
#include "base_media_base.h"
#include "fios.h"
#include "fileio_func.h"
#include "settings_cmd.h"
#include "table/strings.h"
#include "safeguards.h"
Go to the source code of this file.
Data Structures | |
class | ConfigIniFile |
IniFile to store a configuration. More... | |
Typedefs | |
typedef void | SettingDescProc(IniFile &ini, const SettingTable &desc, const char *grpname, void *object, bool only_startup) |
typedef void | SettingDescProcList(IniFile &ini, const char *grpname, StringList &list) |
Enumerations | |
enum | IniFileVersion : uint32_t { IFV_0 , IFV_PRIVATE_SECRETS , IFV_GAME_TYPE , IFV_LINKGRAPH_SECONDS , IFV_NETWORK_PRIVATE_SETTINGS , IFV_AUTOSAVE_RENAME , IFV_RIGHT_CLICK_CLOSE , IFV_REMOVE_GENERATION_SEED , IFV_MAX_VERSION } |
Ini-file versions. More... | |
Functions | |
static auto & | GenericSettingTables () |
List of all the generic setting tables. More... | |
static auto & | PrivateSettingTables () |
List of all the private setting tables. | |
static auto & | SecretSettingTables () |
List of all the secrets setting tables. | |
static bool | IsSignedVarMemType (VarType vt) |
static size_t | LookupManyOfMany (const std::vector< std::string > &many, const char *str) |
Find the set-integer value MANYofMANY type in a string. More... | |
static std::optional< std::vector< uint32_t > > | ParseIntList (const char *p) |
Parse a string into a vector of uint32s. More... | |
static bool | LoadIntList (const char *str, void *array, int nelems, VarType type) |
Load parsed string-values into an integer-array (intlist) More... | |
static void | IniLoadSettings (IniFile &ini, const SettingTable &settings_table, const char *grpname, void *object, bool only_startup) |
Load values from a group of an IniFile structure into the internal representation. More... | |
static void | IniSaveSettings (IniFile &ini, const SettingTable &settings_table, const char *grpname, void *object, bool) |
Save the values of settings to the inifile. More... | |
static void | IniLoadSettingList (IniFile &ini, const char *grpname, StringList &list) |
Loads all items from a 'grpname' section into a list The list parameter can be a nullptr pointer, in this case nothing will be saved and a callback function should be defined that will take over the list-handling and store the data itself somewhere. More... | |
static void | IniSaveSettingList (IniFile &ini, const char *grpname, StringList &list) |
Saves all items from a list into the 'grpname' section The list parameter can be a nullptr pointer, in this case a callback function should be defined that will provide the source data to be saved. More... | |
void | IniLoadWindowSettings (IniFile &ini, const char *grpname, void *desc) |
Load a WindowDesc from config. More... | |
void | IniSaveWindowSettings (IniFile &ini, const char *grpname, void *desc) |
Save a WindowDesc to config. More... | |
void | PrepareOldDiffCustom () |
Prepare for reading and old diff_custom by zero-ing the memory. | |
void | HandleOldDiffCustom (bool savegame) |
Reading of the old diff_custom array and transforming it to the new format. More... | |
static void | ValidateSettings () |
Checks if any settings are set to incorrect values, and sets them to correct values in that case. | |
static void | AILoadConfig (const IniFile &ini, const char *grpname) |
static void | GameLoadConfig (const IniFile &ini, const char *grpname) |
static void | GraphicsSetLoadConfig (IniFile &ini) |
Load BaseGraphics set selection and configuration. | |
static GRFConfig * | GRFLoadConfig (const IniFile &ini, const char *grpname, bool is_static) |
Load a GRF configuration. More... | |
static IniFileVersion | LoadVersionFromConfig (const IniFile &ini) |
static void | AISaveConfig (IniFile &ini, const char *grpname) |
static void | GameSaveConfig (IniFile &ini, const char *grpname) |
static void | SaveVersionInConfig (IniFile &ini) |
Save the version of OpenTTD to the ini file. More... | |
static void | GraphicsSetSaveConfig (IniFile &ini) |
Save BaseGraphics set selection and configuration. | |
static void | GRFSaveConfig (IniFile &ini, const char *grpname, const GRFConfig *list) |
static void | HandleSettingDescs (IniFile &generic_ini, IniFile &private_ini, IniFile &secrets_ini, SettingDescProc *proc, SettingDescProcList *proc_list, bool only_startup=false) |
static void | RemoveEntriesFromIni (IniFile &ini, const SettingTable &table) |
Remove all entries from a settings table from an ini-file. More... | |
bool | IsConversionNeeded (const ConfigIniFile &ini, const std::string &group, const std::string &old_var, const std::string &new_var, const IniItem **old_item) |
Check whether a conversion should be done, and based on what old setting information. More... | |
void | LoadFromConfig (bool startup) |
Load the values from the configuration files. More... | |
void | SaveToConfig () |
Save the values to the configuration file. | |
StringList | GetGRFPresetList () |
Get the list of known NewGrf presets. More... | |
GRFConfig * | LoadGRFPresetFromConfig (const char *config_name) |
Load a NewGRF configuration by preset-name. More... | |
void | SaveGRFPresetToConfig (const char *config_name, GRFConfig *config) |
Save a NewGRF configuration with a preset name. More... | |
void | DeleteGRFPresetFromConfig (const char *config_name) |
Delete a NewGRF configuration by preset name. More... | |
static const SettingDesc * | GetSettingFromName (const std::string_view name, const SettingTable &settings) |
Given a name of setting, return a setting description from the table. More... | |
void | GetSaveLoadFromSettingTable (SettingTable settings, std::vector< SaveLoad > &saveloads) |
Get the SaveLoad for all settings in the settings table. More... | |
static const SettingDesc * | GetCompanySettingFromName (std::string_view name) |
Given a name of setting, return a company setting description of it. More... | |
const SettingDesc * | GetSettingFromName (const std::string_view name) |
Given a name of any setting, return any setting description of it. More... | |
CommandCost | CmdChangeSetting (DoCommandFlag flags, const std::string &name, int32_t value) |
Network-safe changing of settings (server-only). More... | |
CommandCost | CmdChangeCompanySetting (DoCommandFlag flags, const std::string &name, int32_t value) |
Change one of the per-company settings. More... | |
bool | SetSettingValue (const IntSettingDesc *sd, int32_t value, bool force_newgame) |
Top function to save the new value of an element of the Settings struct. More... | |
void | SetDefaultCompanySettings (CompanyID cid) |
Set the company settings for a new company to their default values. | |
void | SyncCompanySettings () |
Sync all company settings in a multiplayer game. | |
bool | SetSettingValue (const StringSettingDesc *sd, std::string value, bool force_newgame) |
Set a setting value with a string. More... | |
void | IConsoleSetSetting (const char *name, const char *value, bool force_newgame) |
void | IConsoleSetSetting (const char *name, int value) |
void | IConsoleGetSetting (const char *name, bool force_newgame) |
Output value of a specific setting to the console. More... | |
static void | IConsoleListSettingsTable (const SettingTable &table, const char *prefilter) |
void | IConsoleListSettings (const char *prefilter) |
List all settings and their value to the console. More... | |
Variables | |
ClientSettings | _settings_client |
The current settings for this game. | |
GameSettings | _settings_game |
Game settings of a running game or the scenario editor. More... | |
GameSettings | _settings_newgame |
Game settings for new games (updated from the intro screen). More... | |
VehicleDefaultSettings | _old_vds |
Used for loading default vehicles settings from old savegames. More... | |
std::string | _config_file |
Configuration file of OpenTTD. | |
std::string | _private_file |
Private configuration file of OpenTTD. | |
std::string | _secrets_file |
Secrets configuration file of OpenTTD. | |
std::string | _favs_file |
Picker favourites configuration file of OpenTTD. | |
static ErrorList | _settings_error_list |
Errors while loading minimal settings. | |
const uint16_t | INIFILE_VERSION = (IniFileVersion)(IFV_MAX_VERSION - 1) |
Current ini-file version of OpenTTD. | |
All actions handling saving and loading of the settings/configuration goes on in this file.
The file consists of three parts:
Definition in file settings.cpp.
enum IniFileVersion : uint32_t |
Ini-file versions.
Sometimes we move settings between different ini-files, as we need to know when we have to load/remove it from the old versus reading it from the new location. These versions assist with situations like that.
Definition at line 162 of file settings.cpp.
CommandCost CmdChangeCompanySetting | ( | DoCommandFlag | flags, |
const std::string & | name, | ||
int32_t | value | ||
) |
Change one of the per-company settings.
flags | operation to perform |
name | the name of the company setting to change |
value | the new value for the setting The new value is properly clamped to its minimum/maximum when setting |
Definition at line 1722 of file settings.cpp.
References _current_company, SettingDesc::AsIntSetting(), IntSettingDesc::ChangeValue(), CMD_ERROR, DC_EXEC, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_company_pool >::Get(), GetCompanySettingFromName(), SettingDesc::IsIntSetting(), and settings.
CommandCost CmdChangeSetting | ( | DoCommandFlag | flags, |
const std::string & | name, | ||
int32_t | value | ||
) |
Network-safe changing of settings (server-only).
flags | operation to perform |
name | the name of the setting to change |
value | the new value for the setting The new value is properly clamped to its minimum/maximum when setting |
Definition at line 1696 of file settings.cpp.
References SettingDesc::AsIntSetting(), IntSettingDesc::ChangeValue(), CMD_ERROR, DC_EXEC, GetGameSettings(), GetSettingFromName(), SettingDesc::IsEditable(), SettingDesc::IsIntSetting(), SettingDesc::save, SlIsObjectCurrentlyValid(), SaveLoad::version_from, and SaveLoad::version_to.
void DeleteGRFPresetFromConfig | ( | const char * | config_name | ) |
Delete a NewGRF configuration by preset name.
config_name | Name of the preset. |
Definition at line 1572 of file settings.cpp.
References _config_file, IniLoadFile::RemoveGroup(), and IniFile::SaveToDisk().
|
static |
List of all the generic setting tables.
There are a few tables that are special and not processed like the rest:
Definition at line 77 of file settings.cpp.
Referenced by GetSettingFromName(), and IConsoleListSettings().
|
static |
Given a name of setting, return a company setting description of it.
name | Name of the company setting to return a setting description of. |
nullptr
indicates failure to obtain the description. Definition at line 1656 of file settings.cpp.
References GetSettingFromName().
Referenced by CmdChangeCompanySetting(), and GetSettingFromName().
StringList GetGRFPresetList | ( | ) |
Get the list of known NewGrf presets.
Definition at line 1521 of file settings.cpp.
References _config_file, IniLoadFile::groups, and IniGroup::name.
Referenced by SavePresetWindow::SavePresetWindow().
void GetSaveLoadFromSettingTable | ( | SettingTable | settings, |
std::vector< SaveLoad > & | saveloads | ||
) |
Get the SaveLoad for all settings in the settings table.
settings | The settings table to get the SaveLoad objects from. |
saveloads | A vector to store the result in. |
Definition at line 1641 of file settings.cpp.
References GetSettingDesc(), SettingDesc::save, settings, SlIsObjectCurrentlyValid(), SaveLoad::version_from, and SaveLoad::version_to.
const SettingDesc* GetSettingFromName | ( | const std::string_view | name | ) |
Given a name of any setting, return any setting description of it.
name | Name of the setting to return a setting description of. |
nullptr
indicates failure to obtain the description. Definition at line 1669 of file settings.cpp.
References GenericSettingTables(), GetCompanySettingFromName(), GetSettingFromName(), PrivateSettingTables(), and SecretSettingTables().
|
static |
Given a name of setting, return a setting description from the table.
name | Name of the setting to return a setting description of. |
settings | Table to look in for the setting. |
nullptr
indicates failure to obtain the description. Definition at line 1616 of file settings.cpp.
References SettingDesc::GetName(), GetSettingDesc(), SettingDesc::save, settings, SlIsObjectCurrentlyValid(), SaveLoad::version_from, and SaveLoad::version_to.
Referenced by CmdChangeSetting(), GetCompanySettingFromName(), NewsTypeData::GetDisplay(), GetSettingFromName(), IConsoleGetSetting(), and SettingEntry::Init().
|
static |
Load a GRF configuration.
ini | The configuration to read from. |
grpname | Group name containing the configuration of the GRF. |
is_static | GRF is static. |
Definition at line 1031 of file settings.cpp.
References ConvertHexToBytes(), FGCM_EXACT, FGCM_NEWEST_VALID, GRFConfig::filename, FillGRFDetails(), FindGRFConfig(), FioCheckFileExists(), GRFConfig::flags, GCF_INVALID, GCF_STATIC, GCF_SYSTEM, GCF_UNSAFE, GCS_NOT_FOUND, IniLoadFile::GetGroup(), GRFIdentifier::grfid, HasBit(), GRFConfig::ident, IniGroup::items, IniItem::name, NETWORK_MAX_GRF_COUNT, NEWGRF_DIR, GRFConfig::next, ParseIntList(), SetBit(), SetDParam(), SetDParamStr(), ShowErrorMessage(), GRFConfig::status, IniItem::value, and WL_CRITICAL.
Referenced by LoadGRFPresetFromConfig().
void HandleOldDiffCustom | ( | bool | savegame | ) |
Reading of the old diff_custom array and transforming it to the new format.
savegame | is it read from the config or savegame. In the latter case we are sure there is an array; in the former case we have to check that. |
Definition at line 36 of file settings_sl.cpp.
References IsSavegameVersionBefore(), and SLV_4.
void IConsoleGetSetting | ( | const char * | name, |
bool | force_newgame | ||
) |
Output value of a specific setting to the console.
name | Name of the setting to output its value |
force_newgame | force the newgame settings |
Definition at line 1894 of file settings.cpp.
References CC_ERROR, GetSettingFromName(), and IConsolePrint().
void IConsoleListSettings | ( | const char * | prefilter | ) |
List all settings and their value to the console.
prefilter | If not nullptr , only list settings with names that begin with prefilter prefix |
Definition at line 1929 of file settings.cpp.
References CC_HELP, GenericSettingTables(), and IConsolePrint().
|
static |
Loads all items from a 'grpname' section into a list The list parameter can be a nullptr pointer, in this case nothing will be saved and a callback function should be defined that will take over the list-handling and store the data itself somewhere.
ini | IniFile handle to the ini file with the source data |
grpname | character string identifying the section-header of the ini file that will be parsed |
list | new list with entries of the given section |
Definition at line 824 of file settings.cpp.
References IniLoadFile::GetGroup(), IniGroup::items, and IniItem::name.
|
static |
Load values from a group of an IniFile structure into the internal representation.
ini | pointer to IniFile structure that holds administrative information |
settings_table | table with SettingDesc structures whose internally pointed variables will be given values |
grpname | the group of the IniFile to search in for the new values |
object | pointer to the object been loaded |
only_startup | load only the startup settings set |
Definition at line 614 of file settings.cpp.
References IniLoadFile::GetGroup(), IniGroup::GetItem(), SettingDesc::GetName(), GetSettingDesc(), SettingDesc::ParseValue(), SettingDesc::save, SlIsObjectCurrentlyValid(), SettingDesc::startup, SaveLoad::version_from, and SaveLoad::version_to.
Referenced by IniLoadWindowSettings().
void IniLoadWindowSettings | ( | IniFile & | ini, |
const char * | grpname, | ||
void * | desc | ||
) |
Load a WindowDesc from config.
ini | IniFile handle to the ini file with the source data |
grpname | character string identifying the section-header of the ini file that will be parsed |
desc | Destination WindowDesc |
Definition at line 862 of file settings.cpp.
References IniLoadSettings().
Referenced by WindowDesc::LoadFromConfig().
|
static |
Saves all items from a list into the 'grpname' section The list parameter can be a nullptr pointer, in this case a callback function should be defined that will provide the source data to be saved.
ini | IniFile handle to the ini file where the destination data is saved |
grpname | character string identifying the section-header of the ini file |
list | pointer to an string(pointer) array that will be used as the source to be saved into the relevant ini section |
Definition at line 846 of file settings.cpp.
References IniGroup::Clear(), IniLoadFile::GetOrCreateGroup(), IniGroup::GetOrCreateItem(), and IniItem::SetValue().
|
static |
Save the values of settings to the inifile.
ini | pointer to IniFile structure |
sd | read-only SettingDesc structure which contains the unmodified, loaded values of the configuration file and various information about it |
grpname | holds the name of the group (eg. [network]) where these will be saved |
object | pointer to the object been saved The function works as follows: for each item in the SettingDesc structure we have a look if the value has changed since we started the game (the original values are reloaded when saving). If settings indeed have changed, we get these and save them. |
Definition at line 694 of file settings.cpp.
References SettingDesc::flags, SettingDesc::FormatValue(), SettingDesc::GetName(), IniLoadFile::GetOrCreateGroup(), GetSettingDesc(), SettingDesc::IsSameValue(), SettingDesc::save, SF_NOT_IN_CONFIG, SlIsObjectCurrentlyValid(), IniItem::value, SaveLoad::version_from, and SaveLoad::version_to.
Referenced by IniSaveWindowSettings().
void IniSaveWindowSettings | ( | IniFile & | ini, |
const char * | grpname, | ||
void * | desc | ||
) |
Save a WindowDesc to config.
ini | IniFile handle to the ini file where the destination data is saved |
grpname | character string identifying the section-header of the ini file |
desc | Source WindowDesc |
Definition at line 873 of file settings.cpp.
References IniSaveSettings().
Referenced by WindowDesc::SaveToConfig().
bool IsConversionNeeded | ( | const ConfigIniFile & | ini, |
const std::string & | group, | ||
const std::string & | old_var, | ||
const std::string & | new_var, | ||
const IniItem ** | old_item | ||
) |
Check whether a conversion should be done, and based on what old setting information.
To prevent errors when switching back and forth between older and newer version of OpenTTD, the type of a setting is never changed. Instead, the setting is renamed, and this function is used to check whether a conversion between the old and new setting is required.
This checks if the new setting doesn't exist, and if the old does.
Doing it this way means that if you switch to an older client, the old setting is used, and only on the first time starting a new client, the old setting is converted to the new. After that, they are independent of each other. And you can safely, without errors on either, switch between old and new client.
ini | The ini-file to use. | |
group | The group the setting is in. | |
old_var | The old name of the setting. | |
new_var | The new name of the setting. | |
[out] | old_item | The old item to base upgrading on. |
Definition at line 1326 of file settings.cpp.
References IniLoadFile::GetGroup(), and IniGroup::GetItem().
void LoadFromConfig | ( | bool | startup | ) |
Load the values from the configuration files.
startup | Load the minimal amount of the configuration to "bootstrap" the blitter and such. |
Definition at line 1354 of file settings.cpp.
References _config_file, _favs_file, _private_file, _secrets_file, and ResetCurrencies().
Referenced by AfterNewGRFScan::OnNewGRFsScanned().
GRFConfig* LoadGRFPresetFromConfig | ( | const char * | config_name | ) |
Load a NewGRF configuration by preset-name.
config_name | Name of the preset. |
Definition at line 1541 of file settings.cpp.
References _config_file, and GRFLoadConfig().
|
static |
Load parsed string-values into an integer-array (intlist)
str | the string that contains the values (and will be parsed) |
array | pointer to the integer-arrays that will be filled |
nelems | the number of elements the array holds. |
type | the type of elements the array holds (eg INT8, UINT16, etc.) |
Definition at line 294 of file settings.cpp.
References ParseIntList(), SlVarSize(), and WriteValue().
Referenced by ListSettingDesc::ParseValue().
|
static |
Find the set-integer value MANYofMANY type in a string.
many | full domain of values the MANYofMANY setting can have |
str | the current string value of the setting, each individual of separated by a whitespace,tab or | character |
Definition at line 220 of file settings.cpp.
References OneOfManySettingDesc::ParseSingleValue(), and SetBit().
Referenced by ManyOfManySettingDesc::ParseValue().
|
static |
Parse a string into a vector of uint32s.
p | the string to be parsed. Each element in the list is separated by a comma or a space character |
Definition at line 249 of file settings.cpp.
Referenced by GraphicsSetLoadConfig(), GRFLoadConfig(), and LoadIntList().
|
static |
Remove all entries from a settings table from an ini-file.
This is only useful if those entries are moved to another file, and you want to clean up what is left behind.
ini | The ini file to remove the entries from. |
table | The table to look for entries to remove. |
Definition at line 1285 of file settings.cpp.
References IniLoadFile::GetGroup(), SettingDesc::GetName(), GetSettingDesc(), and IniGroup::RemoveItem().
void SaveGRFPresetToConfig | ( | const char * | config_name, |
GRFConfig * | config | ||
) |
Save a NewGRF configuration with a preset name.
config_name | Name of the preset. |
config | NewGRF configuration to save. |
Definition at line 1558 of file settings.cpp.
References _config_file.
|
static |
Save the version of OpenTTD to the ini file.
ini | the ini to write to |
Definition at line 1200 of file settings.cpp.
References IniLoadFile::GetOrCreateGroup(), IniGroup::GetOrCreateItem(), and IniItem::SetValue().
bool SetSettingValue | ( | const IntSettingDesc * | sd, |
int32_t | value, | ||
bool | force_newgame | ||
) |
Top function to save the new value of an element of the Settings struct.
index | offset in the SettingDesc array of the Settings struct which identifies the setting member we want to change |
value | new value of the setting |
force_newgame | force the newgame settings |
Definition at line 1744 of file settings.cpp.
References _local_company, SettingDesc::AsIntSetting(), SettingDesc::flags, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_company_pool >::IsValidID(), and SF_PER_COMPANY.
bool SetSettingValue | ( | const StringSettingDesc * | sd, |
std::string | value, | ||
bool | force_newgame | ||
) |
Set a setting value with a string.
sd | the setting to change. |
value | the value to write |
force_newgame | force the newgame settings |
Definition at line 1819 of file settings.cpp.
References SaveLoad::conv, SettingDesc::flags, GetVarMemType(), SettingDesc::save, SF_NO_NETWORK_SYNC, and SLE_VAR_STRQ.
VehicleDefaultSettings _old_vds |
Used for loading default vehicles settings from old savegames.
Old vehicle settings, which were game settings before, and are company settings now.
Definition at line 59 of file settings.cpp.
GameSettings _settings_game |
Game settings of a running game or the scenario editor.
The current settings for this game.
Definition at line 57 of file settings.cpp.
Referenced by _GenerateWorld(), AffectSpeedByZChange(), AfterNewGRFScan::AfterNewGRFScan(), AutoslopeEnabled(), Subsidy::AwardTo(), BuildLandLegend(), CalcEngineReliability(), CalculateDesertLine(), CalculateSnowLine(), CanBuildVehicleInfrastructure(), CanRoadContinueIntoNextTile(), AI::CanStartNew(), CheckBridgeAvailability(), CheckBuildableTile(), CheckCompanyHasMoney(), CheckforTownRating(), CheckIfAuthorityAllowsNewStation(), CheckIfCanLevelIndustryPlatform(), CheckIfTrainNeedsService(), CheckIndustryCloseDownProtection(), CheckNewIndustry_Farm(), CheckNewIndustry_Forest(), CheckNewTrain(), CheckNextTrainTile(), CheckRailSlope(), CheckRoadSlope(), CheckTakeoverVehicleLimit(), CheckTrainAttachment(), CheckTrainStayInDepot(), ClickChangeMaxHlCheat(), CmdBuildRoadDepot(), CmdBuildTrainDepot(), CmdConvertRail(), CmdFoundTown(), CmdGiveMoney(), CmdLevelLand(), CmdTerraformLand(), CompaniesGenStatistics(), CompanyCheckBankrupt(), CreateRivers(), DeleteStaleLinks(), DisplayVehicleSortDropDown(), DistanceFromEdgeDir(), LinkGraphOverlay::DrawContent(), DrawRoadAsSnowDesert(), IndustryBuildData::EconomyMonthlyLoop(), ExtendTrainReservation(), FindSpring(), FindTownForIndustry(), FlatEmptyWorld(), FollowTrainReservation(), ForAllStationsAroundTiles(), FreightWagonMult(), AI::GameLoop(), ScriptInstance::GameLoop(), GenerateLandscape(), GenerateTerrainPerlin(), GenerateTownName(), GenerateTrees(), GetAcceptanceAroundTiles(), GetAirportNoiseLevelForDistance(), GetAmplitude(), GetAvailableMoney(), Station::GetCatchmentRadius(), GetCompanyRailTypes(), GetCompanyRoadTypes(), RoadVehicle::GetCurrentMaxSpeed(), Train::GetCurrentMaxSpeed(), TownAuthorityWindow::GetEnabledActions(), GetFreeUnitNumber(), GetGlobalVariable(), Engine::GetLifeLengthInDays(), GetLoadAmount(), GetMaskOfTownActions(), GetOtherAqueductEnd(), GetRailTypes(), GetRandomTreeType(), GetRoadTypes(), GetScaledIndustryGenerationProbability(), RoadVehicle::GetSlopeSteepness(), Train::GetSlopeSteepness(), GetSnowLine(), GetTerrainType(), GetTileCatchmentRadius(), TownScopeResolver::GetVariable(), GetVelocityUnits(), GfxLoadSprites(), GrayscaleToMapHeights(), GUIPlaceProcDragXY(), HasRailCatenaryDrawn(), HeightMapCoastLines(), HeightMapNormalize(), HeightMapSineTransform(), HighestSnowLine(), IndustryCargoesWindow::HousesCanAccept(), InitializeGRFSpecial(), AirportSpec::IsAvailable(), Engine::IsEnabled(), ObjectSpec::IsEverAvailable(), IsRoadAllowedHere(), IsVehicleTypeDisabled(), PATSChunkHandler::Load(), LoadNewGRF(), LoadSpriteTables(), LoadTownData(), LowestSnowLine(), MakeLake(), Vehicle::NeedsServicing(), LandInfoWindow::OnInit(), BuildVehicleWindow::OnInvalidateData(), BuildAirportWindow::OnPaint(), CompanyWindow::OnPaint(), BuildDocksStationWindow::OnPaint(), BuildRoadStationWindow::OnPaint(), ScenarioEditorToolbarWindow::OnPaint(), OnTick_LinkGraph(), ScriptInstance::Pause(), PopulateStationsNearby(), SmallMapWindow::RebuildColourIndexIfNecessary(), Station::RecomputeCatchment(), RemoveAirport(), AI::ResetConfig(), RoadVehAccelerationModelChanged(), PATSChunkHandler::Save(), ServerNetworkAdminSocketHandler::SendWelcome(), HousePickerCallbacks::SetClimateMask(), SetStartingYear(), SetYearEngineAgingStops(), StationViewWindow::ShowCargo(), Vehicle::ShowVisualEffect(), StartupOneEngine(), StateGameLoop_LinkGraphPauseControl(), StationJoinerNeeded(), TerraformTileHeight(), TestAutoslopeOnRailTile(), TGPGetMaxHeight(), ToolbarScenDatePanel(), TownActionBuyRights(), TownActionFundBuildings(), TownActionRoadRebuild(), TownAllowedToBuildRoads(), TryBuildTownHouse(), AI::Uninitialize(), Game::Uninitialize(), UpdateAircraftSpeed(), UpdateLoadUnloadTicks(), RoadVehicle::UpdateSpeed(), Train::UpdateSpeed(), UpdateTownGrowth(), IndustrySpec::UsesOriginalEconomy(), VehicleServiceInDepot(), YapfRoadVehicleChooseTrack(), YapfTrainCheckReverse(), YapfTrainChooseTrack(), YapfTrainFindNearestDepot(), and YapfTrainFindNearestSafeTile().
GameSettings _settings_newgame |
Game settings for new games (updated from the intro screen).
The settings values that are used for new games and/or modified in config file.
Definition at line 58 of file settings.cpp.
Referenced by ChangeTimekeepingUnits(), GetMapHeightLimit(), NetworkRestartMap(), GenerateLandscapeWindow::OnInvalidateData(), SelectGameWindow::OnInvalidateData(), CreateScenarioWindow::OnPaint(), AI::ResetConfig(), SetNewLandscapeType(), StartNewGameWithoutGUI(), AI::Uninitialize(), Game::Uninitialize(), TimerGameEconomy::UsingWallclockUnits(), and ValidateSettings().