This connects to issue #2710, although the main reasoning about it is in #5517.
The difficulty balance isn't the only problem with loading old saved games, but
it's a simple example to explain.
This warning is intended for the change between 1.14 and 1.16, but will be shown
to anyone loading 1.15.x saves into 1.15.y - that's something that they should
expect in a dev branch.
You just know sooner or later someone's going to try to use "random" for
something other than gender and some translations will end up looking
wrong as a result.
The _ locals are there to ensure that if _ is overridden anywhere else
in the enclosing scope (which I haven't properly determined *where* it
is yet) it gets overridden again with the right textdomain object.
It *does* tell wmlxgettext what the correct textdomain is without using
the `-- #textdomain` hack anyway, so might as well just do it this way
regardless of the global-looking _ in map/main.lua.
CC #5311
The impacted code path is only executed as part of the implementation of
the characters_per_line constraint.
According to the Pango documentation, PangoFontMetrics should be
released using pango_font_metrics_unref(), and PangoFont should be
released using *something* not specified. Existing code, and the
documentation for pango_fontset_get_font(), suggests the answer for the
latter is g_object_unref().
[server_info] id= defines a free-form string that can be used to
identify the server instance independently from the campaignd version
used for it.
Meant for PR #5588, which requires an unchanging identification for
campaignd instances in lieu of game_config::wesnoth_version.
This adds 'log <severity> <comma-domain-list>' to change the log level
for one or more log domains without restarting the server, 'log precise
on/off' for changing the timestamp precision setting, and 'timings
on/off' for changing the request servicing timing reports setting.
It already didn't work anyway, but now it seems to be actively causing problems by randomly failing due to lack of disk space. Though how it can only sometimes run out of disk space despite trying to cache the same thing every time, and when the runner instance is supposed to always have the same amount of disk space available, is anyone's guess.
By default, the MAI removes movement points from units even when they cannot find a hex to move to. When this option is set to 'no' (default is 'yes'), this step is skipped, so that other candidate actions can take over.
This implements feature request #5580
In general, the units specified in the MAI setup should be on the AI side. However, that might change during a scenario, for example when there is an event that switches units to other sides.
In movetype::write, the children might not be created if that child has an
empty config; there might be no child at all for movetypes such as "none". The
movetype "none" is a real movetype defined in units.cfg for units that
shouldn't be able to move.
The original_cfg local variable was only used once anyway, removing it and the
comment made the code clearer.
This wasn't caught in the 1.15 testing, but with 1.14 it resulted in a
"mandatory WML child missing" warning.