Add: INR currency (#8136)
[openttd-github.git] / src / table / gameopt_settings.ini
blobd1634e349d4aecfb508ce14710c5f9483faee420
1 ; This file is part of OpenTTD.
2 ; 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.
3 ; 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.
4 ; 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/>.
7 [pre-amble]
8 static const uint GAME_DIFFICULTY_NUM = 18;
9 static uint16 _old_diff_custom[GAME_DIFFICULTY_NUM];
10 uint8 _old_diff_level; ///< Old difficulty level from old savegames
11 uint8 _old_units; ///< Old units from old savegames
13 /* Most of these strings are used both for gameopt-backward compatibility
14 * and the settings tables. The rest is here for consistency. */
15 static const char *_locale_currencies = "GBP|USD|EUR|YEN|ATS|BEF|CHF|CZK|DEM|DKK|ESP|FIM|FRF|GRD|HUF|ISK|ITL|NLG|NOK|PLN|RON|RUR|SIT|SEK|YTL|SKK|BRL|EEK|custom";
16 static const char *_locale_units = "imperial|metric|si";
17 static const char *_town_names = "english|french|german|american|latin|silly|swedish|dutch|finnish|polish|slovak|norwegian|hungarian|austrian|romanian|czech|swiss|danish|turkish|italian|catalan";
18 static const char *_climates = "temperate|arctic|tropic|toyland";
19 static const char *_autosave_interval = "off|monthly|quarterly|half year|yearly";
20 static const char *_roadsides = "left|right";
21 static const char *_savegame_date = "long|short|iso";
22 static const char *_server_langs = "ANY|ENGLISH|GERMAN|FRENCH|BRAZILIAN|BULGARIAN|CHINESE|CZECH|DANISH|DUTCH|ESPERANTO|FINNISH|HUNGARIAN|ICELANDIC|ITALIAN|JAPANESE|KOREAN|LITHUANIAN|NORWEGIAN|POLISH|PORTUGUESE|ROMANIAN|RUSSIAN|SLOVAK|SLOVENIAN|SPANISH|SWEDISH|TURKISH|UKRAINIAN|AFRIKAANS|CROATIAN|CATALAN|ESTONIAN|GALICIAN|GREEK|LATVIAN";
23 static const char *_osk_activation = "disabled|double|single|immediately";
24 static const char *_settings_profiles = "easy|medium|hard";
25 static const char *_news_display = "off|summarized|full";
27 static const SettingDesc _gameopt_settings[] = {
28 /* In version 4 a new difficulty setting has been added to the difficulty settings,
29 * town attitude towards demolishing. Needs special handling because some dimwit thought
30 * it funny to have the GameDifficulty struct be an array while it is a struct of
31 * same-sized members
32 * XXX - To save file-space and since values are never bigger than about 10? only
33 * save the first 16 bits in the savegame. Question is why the values are still int32
34 * and why not byte for example?
35 * 'SLE_FILE_I16 | SLE_VAR_U16' in "diff_custom" is needed to get around SlArray() hack
36 * for savegames version 0 - though it is an array, it has to go through the byteswap process */
37 [post-amble]
39 [templates]
40 SDTG_GENERAL = SDTG_GENERAL($name, $sdt_cmd, $sle_cmd, $type, $flags, $guiflags, $var, $length, $def, $min, $max, $interval, $full, $str, $strhelp, $strval, $proc, $from, $to, $cat),
41 SDTG_VAR = SDTG_VAR($name, $type, $flags, $guiflags, $var, $def, $min, $max, $interval, $str, $strhelp, $strval, $proc, $from, $to, $cat),
42 SDT_NULL = SDT_NULL($length, $from, $to),
43 SDTC_OMANY = SDTC_OMANY( $var, $type, $flags, $guiflags, $def, $max, $full, $str, $strhelp, $strval, $proc, $from, $to, $cat),
44 SDTG_OMANY = SDTG_OMANY($name, $type, $flags, $guiflags, $var, $def, $max, $full, $str, $strhelp, $strval, $proc, $from, $to, $cat),
45 SDT_OMANY = SDT_OMANY($base, $var, $type, $flags, $guiflags, $def, $max, $full, $str, $strhelp, $strval, $proc, $from, $to, $load, $cat),
46 SDT_VAR = SDT_VAR($base, $var, $type, $flags, $guiflags, $def, $min, $max, $interval, $str, $strhelp, $strval, $proc, $from, $to, $cat),
47 SDT_END = SDT_END()
49 [defaults]
50 flags = 0
51 guiflags = SGF_NONE
52 interval = 0
53 str = STR_NULL
54 strhelp = STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT
55 strval = STR_NULL
56 proc = nullptr
57 load = nullptr
58 from = SL_MIN_VERSION
59 to = SL_MAX_VERSION
60 cat = SC_ADVANCED
64 [SDTG_GENERAL]
65 name = ""diff_custom""
66 sdt_cmd = SDT_INTLIST
67 sle_cmd = SL_ARR
68 type = SLE_FILE_I16 | SLE_VAR_U16
69 flags = SLF_NOT_IN_CONFIG
70 var = _old_diff_custom
71 length = 17
72 def = 0
73 min = 0
74 max = 0
75 full = nullptr
76 to = SLV_4
78 [SDTG_GENERAL]
79 name = ""diff_custom""
80 sdt_cmd = SDT_INTLIST
81 sle_cmd = SL_ARR
82 type = SLE_UINT16
83 flags = SLF_NOT_IN_CONFIG
84 var = _old_diff_custom
85 length = 18
86 def = 0
87 min = 0
88 max = 0
89 full = nullptr
90 from = SLV_4
93 [SDTG_VAR]
94 name = ""diff_level""
95 var = _old_diff_level
96 type = SLE_UINT8
97 flags = SLF_NOT_IN_CONFIG
98 def = SP_CUSTOM
99 min = SP_EASY
100 max = SP_CUSTOM
101 cat = SC_BASIC
103 [SDT_OMANY]
104 base = GameSettings
105 var = locale.currency
106 type = SLE_UINT8
107 flags = SLF_NO_NETWORK_SYNC
108 def = 0
109 max = CURRENCY_END - 1
110 full = _locale_currencies
111 cat = SC_BASIC
113 [SDTG_OMANY]
114 name = ""units""
115 var = _old_units
116 type = SLE_UINT8
117 flags = SLF_NOT_IN_CONFIG
118 def = 1
119 max = 2
120 full = _locale_units
121 cat = SC_BASIC
123 # There are only 21 predefined town_name values (0-20), but you can have more with newgrf action F so allow
124 # these bigger values (21-255). Invalid values will fallback to english on use and (undefined string) in GUI.
125 [SDT_OMANY]
126 base = GameSettings
127 var = game_creation.town_name
128 type = SLE_UINT8
129 def = 0
130 max = 255
131 full = _town_names
132 cat = SC_BASIC
134 [SDT_OMANY]
135 base = GameSettings
136 var = game_creation.landscape
137 type = SLE_UINT8
138 def = 0
139 max = 3
140 full = _climates
141 load = ConvertLandscape
142 cat = SC_BASIC
144 [SDT_VAR]
145 base = GameSettings
146 var = game_creation.snow_line_height
147 type = SLE_UINT8
148 def = DEF_SNOWLINE_HEIGHT * TILE_HEIGHT
149 min = MIN_SNOWLINE_HEIGHT * TILE_HEIGHT
150 max = MAX_SNOWLINE_HEIGHT * TILE_HEIGHT
151 to = SLV_22
153 [SDT_NULL]
154 length = 1
155 from = SLV_22
156 to = SLV_165
158 [SDT_NULL]
159 length = 1
160 to = SLV_23
162 [SDTC_OMANY]
163 var = gui.autosave
164 type = SLE_UINT8
165 from = SLV_23
166 flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
167 def = 1
168 max = 4
169 full = _autosave_interval
170 cat = SC_BASIC
172 [SDT_OMANY]
173 base = GameSettings
174 var = vehicle.road_side
175 type = SLE_UINT8
176 def = 1
177 max = 1
178 full = _roadsides
179 cat = SC_BASIC
181 [SDT_END]