Fixed crash in presence of units with negative hitpoints (issue #3042).
Efficiency improvements to filter evaluations in the Goto Micro AI and some AI helper functions
Campaigns
Dead Water:
Fix possibility of villagers blocking pickup of sword in S10 The Flaming Sword (issue #3207).
Descent Into Darkness:
New Parthyn map in S1 and S6.
Northern Rebirth:
Reduced starting gold and income in scenarios 10 to 13
Secrets of the Ancients:
Fix S09 Training Session not ending when all dark adepts die (issue #3192)
Tutorial:
S2: made enemy starting gold equal to that of the player.
Under the Burning Suns:
Added portrait and updated sprite for Giant Ant.
Language and i18n
Updated translations: British English, Chinese (Traditional), Czech, French, Italian, Japanese, Scottish Gaelic, Spanish
Multiplayer server
Fixed lan_server option not causing the server to exit once vacated, e.g. when using the Host Networked Game option from the Multiplayer menu in the game (issue #3206).
Music and sound effects
The music now changes immediately when you load a save file (issue #2602).
Fixed Lua errors when setting a music track that cannot be found when the playlist is already empty, e.g. if there's no music installed for the game (issue #3194).
WML engine
Removed validation to ensure units cannot have negative hitpoints. We learned that the ability to create such units is documented, and thus disallowing it was an API change. Since API changes aren't allowed in the stable branch, we have reverted it.
Miscellaneous and bug fixes
Fixed an occasional crash at the loading screen related to multi-thread access of the image cache.
[kill] animate=yes no longer scrolls to units through fog or shroud, thus matching 1.12's behavior again.
[message] displays the unit type name when a nameless unit speaks and no custom caption= is specified (issue #3211).
do_not_list=yes units are no longer excluded from the debug mode-only Create Unit dialog.
Fixed a rare issue where disabled attacks could cause the wrong attack to be initially selected in the Unit Attack dialog. This bug also had the potential to cause units to the wrong attack when engaging or viewing damage calculations.
Fixed [scenario] map_file= being unusable in most circumstances.
S02.1 Infested Caves: keep side 8 AI leader from wandering off too far and ending up on a keep with only one hex for recruiting.
S02.1 Infested Caves: AIs are less likely to kill each other in early game, which would make it harder for the player otherwise.
S02.1 Infested Caves: Dwarvish allies are also less likely to die.
S02.1 Infested Caves: minor map tweaks and improvements.
S05 The Pursuit: removed a bottleneck and tweaked Rod of Justice.
Sceptre of Fire:
In 'Caverns of Flame', fixed various issues with the volcano eruption.
Under the Burning Suns:
Various Quenoth unit graphics updates.
Descent into Darkness:
In 'A small Favor', disabled a not intended way to win the scenario.
Secrets of the Ancients:
Bats are transformed to normal ones already after S5
Graphics
Fixed a minor team coloring mistake in the north-facing Revenant standing animation.
Language and i18n
Updated translations: British English, Chinese (Simplified), Czech, French, Galician, German, Italian, Japanese, Scottish Gaelic, Spanish, Ukrainian
User interface
List boxes (MP lobby game list in particular) now keep the scroll position when they change, instead of keeping the selected item visible (issue #3016).
Fixed MP lobby player list scrolling to top when it changes
Fixed the first unit sometimes not being selected when opening the Recall dialog.
Fixed a crash when using very large portraits in [message] (issue #2912)
Added a button to access the version info dialog to Preferences.
Removed player list sorting options in the MP lobby. The list is now automatically sorted alphabetically, friends first.
Rearranged campaign difficulty menu layout
Terrains
Removed hidden terrains that were not supposed to make it to 1.14: ^Prg, ^Prgo, ^Pwd, ^Pwdo
Miscellaneous and bug fixes
Fixed memory leak in terrain filter code. In a huge map with Silver Mages, it could leak several gigabytes of memory in a long session.
Fixed: unit halo remained after undoing a recall (issue #3065)
Fixed: unit halo intensity doubled during AMLA animation
[change_theme] no longer causes a Lua error when theme= is not specified instead of explicitly set to an empty string.
[change_theme] no longer requires running a separate action to update the UI afterwards (e.g. [redraw]) and the status panels are updated immediately. as well.
Lua random map generator: fixed error when flipping map; specifically this also fixes an assert at the start of HttT S7 (Sceptre of Fire) that had a 50% chance of being triggered
Experimental AI: fixed recruiting not working on maps without enemies, such as the first two turns of Dark Forecast
Experimental AI: fixed recruiting evaluations sometimes not being updated
Replaced deprecated Lua code and all remaining uses of FOREACH and MESSAGE macros
Fixed [color_adjust] interacting poorly with time of day color shifts and values outside the [-255, 255] range (issue #3144).
Fixed a regression from 1.13.10 where modification option values couldn't be properly saved in arrays.
Added stricter validation to ensure units cannot have negative hitpoints, except during specific attack-related events.
Added deprecation notices for several macros that had them missing before.
[message] no longer scrolls to units through fog or shroud so it matches 1.12's behavior.
Fixed animation-wide text_color and blend_color keys being overwritten. This fixes level-in and level-out animations sometimes fading to black instead of white.
Fixed [animate_unit] freezing the game when observing MP games (#2970).
Fixed carryover behaving differently when loading a start-of-scenario save (issue #3152).
Fixed turn replay function in MP.
Fixed savegames being created even when not needed (issue #3150).
Fixed handling of extra_recruit in planning mode (issue #3100).
Fixed handling of skirmisher in planning mode.
Fixed handling of filter_recall in planning mode.
Fixed possible segfault at game end.
Fixed require_resource in [resource].
Fixed require_scenario=yes not working with map_generation (issue #3105).
Eastern Invasion: * In 'Captured', fixed units incorrectly costing upkeep after leveling up.
Secrets of the Ancients * Fixed minor unit naming inconsistencies (issues #2844 and #2846).
Under the Burning Suns * Added custom graphics for the broken tree in S1. * Various sprite and image updates. * Fixed a bug in the formation ability causing defense bonuses not being received in some cases.
Language and i18n
Updated translations: British English, Chinese (Simplified), Czech, French, Galician, German, Italian, Japanese, Scottish Gaelic, Slovak, Spanish
Fixed Logging Options tooltips not being translatable (issue #2837).
Multiplayer server
Added support for matching user, IP, and email bans from a forums board when the forum_user_handler is enabled and active. (IP and email bans with wildcards are not supported yet.)
Fixed various instances of the server crashing under certain conditions.
Performance
Added an option to disable the FPS limiter for a slight performance boost.
Units
Changed the plural name for the merfolk race from Mermen to Merfolk (issue #2940) and replaced a few instances in core unit or terrain descriptions accordingly.
User interface
Removed individual Join/Observe buttons for each game in the MP Lobby.
Highlight the titles of MP games with vacant slots.
Improved MP Lobby layout on low resolutions.
Improved reporting of network errors in the MP lobby (issue #3005).
Ensure the chat widget remains the correct size even after a window resize.
Custom MP game names are now capped at 50 characters.
Restored Era info to main MP game display.
Improved the resolution selection criteria for the MP Lobby.
Fixed inactive weapon specials being displayed in the Unit Attack dialog unlike in 1.12 (issue #3033).
Miscellaneous and bug fixes
Removed misleading tooltip text stating registered nicknames are optional for the official MP server.
Attempting to save a screenshot with an unsupported format now shows an error message, instead of saving the screenshot as BMP with the requested extension.
It is now possible to disable logdomains in the Logging Options dialog.
Fixed the wesnoth(6) manpage claiming the default log level is 'error' when it has been 'warning' since version 1.9.0.
Document --log-none in the wesnoth(6) manpage.
Avoid trying to load invalid base64-encoded data URIs.
wesnoth_addon_manager and the addons.wesnoth.org web index can now use data URIs.
Fixed a crash when using certain invalid color= values.
Implemented a workaround for an unhandled std::bad_cast from string comparison functions that caused a crash-to-desktop when opening Preferences among others (issue #3050).