Jonathan G Rennison
864d3c9c16
Fix: CMD_CHANGE_SETTING did not reject SF_NO_NETWORK_SYNC settings ( #11009 )
2023-06-14 19:44:10 +02:00
PeterN
64d6ad50f9
Codechange: Split GetItem with GetOrCreateItem. ( #10952 )
...
`IniGroup::GetItem()` returns nullptr if the item does not exist, but does not if the create parameter is set to true. Resolve CodeQL warnings with `GetOrCreateItem()` which returns a reference to the item instead.
2023-06-05 18:29:52 +00:00
Rubidium
4fdde00e25
Codechange: use std::string to create the GRF parameter list
2023-05-25 05:43:00 +02:00
Rubidium
f4b0ac2bd4
Codechange: use std::string for formatting settings
2023-05-24 22:42:01 +02:00
Peter Nelson
6b87fe6540
Codechange: Use std::array for GRF(File|Config) parameters.
...
This simplifies comparison, copying and assignment operations.
2023-05-19 16:53:56 +01:00
Rubidium
acec34a0fe
Cleanup: remove MD5SumToString in lieu of FormatArrayAsHex
2023-05-19 11:24:44 +02:00
Rubidium
d9a04ba446
Codechange: make the MD5 hash/digest/checksum variables a std::array
2023-05-19 11:24:44 +02:00
Rubidium
9f2fc860ad
Codechange: use std::optional<std::string> for changing the script over char *
2023-05-14 22:54:10 +02:00
Rubidium
0fd9eb0faa
Codechange: use std::string for script info/library finding
2023-05-14 22:54:10 +02:00
Rubidium
a312a6c1b2
Codechange: make md5sumToString std::string compatible
2023-05-04 23:23:32 +02:00
Patric Stout
c6c3d0e6fa
Fix: no_http_content_downloads and use_relay_service as private settings ( #10762 )
...
Basically, we don't need to know those values when people send in
crash reports.
2023-05-04 22:46:02 +02:00
Tyler Trahan
6501f84b4a
Codechange: Move calendar date functions inside TimerGameCalendar ( #10753 )
2023-05-04 13:14:12 +00:00
Peter Nelson
00bf42353a
Codechange: Place gamelog into its own class, along with internal data.
...
Data is now stored in vectors to avoid manual memory management and
passing lengths around.
2023-05-02 19:47:55 +01:00
Charles Pigott
80bd5ad727
Codechange: Use std::strto* variants everywhere ( #10720 )
2023-04-26 12:56:14 +01:00
Charles Pigott
b282664242
Codechange: Replace all usages of alloca/AllocaM with more modern/less discouraged alternatives
2023-04-15 16:57:00 +01:00
Tyler Trahan
646a7e625b
Change: Use seconds for Linkgraph update settings ( #10610 )
2023-04-14 22:49:12 +02:00
Rubidium
4e65ec1dc4
Codechange: do not declare functions in blocks
2023-01-29 20:28:45 +01:00
Pavel Stupnikov
78c5d4161f
Merge branch 'openttd'
2023-01-03 19:05:48 +04:00
Pavel Stupnikov
59c991fa52
Update to 13.0-RC1
2023-01-03 15:58:14 +04:00
Pavel Stupnikov
4682b3cffb
Merge branch 'openttd'
2022-11-23 14:35:54 +04:00
Pavel Stupnikov
be23283677
Update to 13.0-beta1
2022-11-23 14:30:36 +04:00
Jonathan G Rennison
7c3c92f8b8
Fix #10155 : SyncCompanySettings sending old instead of new setting values ( #10158 )
2022-11-12 17:24:31 +00:00
Jonathan G Rennison
3b3c9c1c3a
Fix #10129 : Use after free in GRFLoadConfig invalid GRF error path ( #10130 )
2022-11-05 15:17:18 +01:00
dP
8bed7c7014
Merge branch 'openttd'
2022-04-02 15:34:33 +03:00
dP
269352680c
Update to 12.2
2022-04-02 15:34:00 +03:00
Loïc Guilloux
d62c5667cf
Fix #9766 : Don't write uninitialised data in config file ( #9767 )
2022-01-04 22:12:05 +01:00
Michael Lutz
d85348b1d1
Codechange: Template the command callback function type to allow unpacked arguments.
2021-12-16 22:28:32 +01:00
Michael Lutz
13528bfcd0
Codechange: Un-bitstuff all remaining commands.
2021-12-16 22:28:32 +01:00
Michael Lutz
ccefa76a46
Codechange: Template DoCommandPInternal.
2021-12-16 22:28:32 +01:00
Michael Lutz
0f64ee5ce1
Codechange: Template DoCommandP to automagically reflect the parameters of the command proc.
...
When finished, this will allow each command handler to take individually
different parameters, obliviating the need for bit-packing.
2021-12-16 22:28:32 +01:00
Michael Lutz
7048e1522f
Codechange: Move flags in CommandProc in front of the command arguments.
2021-12-16 22:28:32 +01:00
Michael Lutz
33ca4f2b99
Codechange: Let the compile generate the master command table out of templated command traits.
...
This is using a non-intrusive type-traits like templated system, which
allows compile-time validation that the command table and the command
enum match up.
2021-12-16 22:28:32 +01:00
Michael Lutz
a38bbefe1b
Codechange: Untangle command code, flags and error string for DoCommand*.
2021-12-16 22:28:32 +01:00
Michael Lutz
549caca39c
Codechange: Move command arguments to the back of the networked command function calls.
2021-12-16 22:28:32 +01:00
dP
3a77bc3628
Use new savegame format to store citymania extra data
2021-10-01 23:23:50 +03:00
dP
4eb8b29dbf
Update to 12.0-RC1
2021-09-26 20:30:12 +03:00
Rubidium
92559e6f3a
Fix #9388 : thread unsafe use of NetworkAdminConsole/IConsolePrint
2021-09-01 22:40:44 +02:00
Loïc Guilloux
8d2162ba2d
Fix b6a116a: convert server_advertise to server_game_type in config file ( #9515 )
2021-08-28 14:41:07 +02:00
dP
9df4f2c4fc
Update to 12.0-beta1
2021-08-15 14:57:29 +03:00
Rubidium
c71f06e59b
Feature: parse the console settings the same way as config settings
...
Now you can use things like `set server_game_type public` instead of having to
guess the number, which would not be written into the configuration file nor
would it be shown when doing `set server_game_type`.
2021-07-11 23:11:05 +02:00
Rubidium
178ea3196b
Remove: includes to network/core/config.h from headers when only three cpp files need it
2021-07-11 22:13:59 +02:00
Rubidium
f6955a304c
Fix: ensure no more than the allowed number of NewGRFs are loaded from the configuration
2021-07-11 11:20:07 +02:00
Rubidium
01139d3368
Codechange: access the name of a setting via an accessor function
2021-07-09 22:53:30 +02:00
glx22
89ab8b79a5
Codechange: Remove FOR_EACH_SET_BIT
2021-07-09 21:36:09 +02:00
Patric Stout
8f5d0ecde3
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.
2021-07-09 21:16:03 +02:00
Rubidium
7e7a4aad72
Codechange: split off the settings saveload code from the main settings handling logic
2021-07-06 21:32:47 +02:00
rubidium42
25ca6a75bc
Codechange: split off the settings table and all the callbacks from the main settings handling logic
2021-07-06 21:32:47 +02:00
glx22
b4aedc8bee
Codechange: ensure xxx_setting_tables are initialised after their content
2021-07-06 21:32:47 +02:00
Patric Stout
cdb3dd0493
Add: store headers for most savegame chunks
...
When a header is added, the chunk changes from CH_ARRAY type to
CH_TABLE type.
2021-07-02 22:21:58 +02:00
Patric Stout
7dd5fd6ed4
Feature: framework to make savegames self-descriptive
...
We won't be able to make it fully self-descriptive (looking at you
MAP-chunks), but anything else can. With this framework, we can
add headers for each chunk explaining how each chunk looks like
in detail.
They also will all be tables, making it a lot easier to read in
external tooling, and opening the way to consider a database
(like SQLite) to use as savegame format.
Lastly, with the headers in the savegame, you can freely add
fields without needing a savegame version bump; older versions
of OpenTTD will simply ignore the new field. This also means
we can remove all the SLE_CONDNULL, as they are irrelevant.
The next few commits will start using this framework.
2021-07-02 22:21:58 +02:00