Messenger MAI: fixed bug of own units sometimes blocking the path to a waypoint for the messenger
A bug that would corrupt WML sent to the multiplayer and add-ons server was fixed.
Beta Release 1.15.16
Campaigns
Liberty
S06: Enforce failure condition for allied team (issue #6019)
The South Guard
S8b: Reduced difficulty
Tutorial
S01: Don't let the first Quintain chase the player to a village (PR #5968)
S01: Synchronise the choice of character dialog, so that replays don't get OOS (issue #5926)
S01: Fix some glitches on HDPI displays (PR #6005)
Secrets of the Ancients
Synchronise the walking corpse recruitment dialog, so that replays don't get OOS (issue #5334)
Under the Burning Suns
S09: Reveal the boss of the scenario at the end of part 1 (issue #5540)
World Conquest
Add campaign icons, campaign image and credits (PR #5958)
Update to new mushroom terrain from the deprecated mushroom terrain (issue #5135, PR #5960)
Multiplayer
If an add-on needs to be installed on all players' devices but doesn't specify a min version, assume it needs the latest (issue #5004)
Terrain
Fix transition between snowy mountains and castles (issue #6016)
Translations
Updated translations: British English, Chinese (Traditional), Czech, Finnish, French, Indonesian, Italian, Polish, Portuguese (Brazil), Russian, Turkish
Units
Added and improved Naga animations (issue #5980, PR #6012)
Added Troll defense animations (PR #5964)
User interface
The names of the abilities used as specials appear in the attack prediction window with specials weapons
In the Load Game dialog, list directories from previous versions in decending order
Refined design of the Faction Select screen
Made the campaign selection on bigger on HDPI screens (PR #6013)
Miscellaneous and Bug Fixes
Added a timeout when connecting to the wesnothd server
Improved logging of deprecation messages, fixing duplication and missing timestamps (issue #5942)
Added `[era]` attributes to the schema
Added to wmllint an automatic update of four terrain-graphics macros
Removed wmllint's check for spaces in e-mail addresses
Standardised the date line of copyright statements, and updated them to 2021
Beta Release 1.15.15
The most visible change added with this release is that when a major version is newly installed Wesnoth will migrate user preferences and attempt to redownload add-ons from its new add-ons server.
Translations
Updated translations: British English, Bulgarian, Chinese (Traditional), Czech, Italian, Portuguese (Brazil), Russian, Spanish, Turkish
User interface
Added a prompt to allow migrating settings and redownloading add-ons used in a previous version of Wesnoth when starting a new versions for the first time.
Miscellaneous and Bug Fixes
Fixed: keyboard input during the loading screen intermittently caused a crash (issue #4447)
AI: fixed custom synced commands not changing the game state
Beta Release 1.15.14
For players, this is a great chance to take a look at what's changed and been added since 1.14, and there is a lot! A variety of new units have been added, the Dunefolk faction has been entirely rebalanced along with many other units, unit sprites have been updated and animations added, Descent Into Darkness has been overhauled and many other campaigns have also been significantly improved, the mushroom terrain has been revamped (which was surprisingly controversial), the Plan Unit Advancement modification has been mainlined, Isar's Cross now has an amazing background, and many more besides.
For content creators, this is the start of our feature freeze, which means that you can start porting your add-ons to what will eventually become 1.16 without worrying whether each release will break your add-on. Of particular note is that uploading and downloading add-ons are now done incrementally - meaning only things that have changed between versions are uploaded or downloaded - so uploading and downloading add-ons should now be a lot faster. Additionally, you can provide one or more [translation] tags in your _server.pbl to provide a translation of your add-on's title and description into languages other than English. However, there have also been a significant number of API changes, which have resulted in a large chunk of lua especially being marked as deprecated. This is intended as a one time occurrence to clean up and reorganize Wesnoth's APIs; the goal and intention is to never repeat this or anything close to it in any future development series.
And lastly, please report any bugs you run into! With new features come new bugs, and just because we created these features doesn't mean we already know every way they can stop working.
Add-ons client
Fixed: using the versions drop-down in small-screen mode returned to the title screen (issue #5810)
Fixed: keyboard input in small-screen mode returned to the title screen (part of issue #3059)
Campaigns
A Tale of Two Brothers
S02: Dialog revisions.
Sceptre of Fire
Revisions to the last two scenarios.
Tutorial
S02: Mention the acceleration factor preference.
Lua API
Pathfinding functions are now in a new wesnoth.paths module.
Pathfinding in map generation now takes an options table as the third argument.
New sync module that contains functions for multiplayer synchronization
In particular, wesnoth.synchronize_choice is now wesnoth.sync.evaluate_single
allow_end_turn and end_turn moved to the wesnoth.interface module
wesnoth.message is now wesnoth.interface.add_chat_message
Shroud and fog control are now in the wesnoth.sides module
Shroud data strings and the special string "all" are no longer supported by place_shroud - only a list of locations is supported
wesnoth.map.parse_bitmap transforms a shroud data string into a list of locations
wesnoth.map.make_bitmap builds a shroud data string from a list of locations
There are now two different ways of altering shroud: place_shroud merges with existing shroud, while override_shroud replaces the entire shroud with the new value.
New schedule module for working with schedules and time areas
wesnoth.map.get_time_area now returns the area's schedule object
The global scenario schedule is available as wesnoth.current.schedule
wesnoth.get_time_of_day is split into wesnoth.schedule.get_time_of_day (ignoring illumination) and wesnoth.get_illumination (which considers illumination). Both functions now take the location as the first argument.
wesnoth.get_max_liminal_bonus() is now wesnoth.current.schedule.liminal_bonus
wesnoth.replace_schedule is now wesnoth.schedule.replace
wesnoth.end_level() and wesnoth.get_end_level_data() are now removed - instead, there's an end_level_data field in wesnoth.scenario.that serves both purposes.
wesnoth.get_traits() is now wesnoth.game_config.global_traits
wesnoth.teleport moved to the units module
Multiplayer
Added Isle of Mists, a new single player or coop survival scenario.
Networking
Added support for encrypting connection using TLS to multiplayer/addon client/server
Moved password hashing code from client to server, relying on TLS to avoid sending cleartext passwords
Packaging
Terrain
Added some great tree variations
Added 'icy cobbles' (terrain code `Rra`) - mostly useful for the transitions
Translations
Updated translations: British English, Chinese (Traditional), Czech, Indonesian, Italian, Japanese, Scottish Gaelic, Slovak, Spanish
Units
Added missing Seahorse graphics
Revised Jinn (unit config and graphics)
Fire Wraith added
added LordBob's Jinn, Fire Guardian, and Fire Wraith portraits
Moved Naga guardian line from UtBS to core, and made some revisions
Dune Apothecary experience needed to level up changed from 100 to 65
Dune Captain experience needed to level up changed from 86 to 75
Dune Herbalist cost changed form 15 to 14
Dune Horse Archer experience needed to level up changed form 70 to 65
Naga Sicarius hp changed form 55 to 53 and melee damage changed form 9 to 6, new special "deflect" added to melee attack
Fire Guardian can now level into Fire Wraith, experience needed to level up for Fire Guardian changed from 50 to 29
Revised statistics of all animal horses, Bay Horse can now level into Great Horse
Wesnoth Formula Language
The use of "side" on units and "owner" on terrain objects is now deprecated. Instead, you should use "side_number" or "owner_side", respectively. The old key returns 0 for side 1 and so on, so the new key is preferred.
A unit object now has a "terrain" key that returns the terrain object the unit is standing on.
Add new functions tod_bonus() and base_tod_bonus() to get the bonus on a specific location
WML Engine
add 'unslowable' and 'unpetrifiable' status to immune to slow or petrifies
Schema validation now checks whether string values are translatable or not, according to what the schema specifies.
Fix schema validation rejecting Lua AI goals
Unit special notes are now read directly from weapon specials, abilities, and a few other places, meaning the `[special_note]` tag is usually not required in `[unit]` or `[unit_type]`.
A warning is now displayed when the next scenario is unknown (issue #5530).
Changed the default duration for `[print]` to 5000 milliseconds, and added support for `duration=unlimited` (PR #5868).
Miscellaneous and Bug Fixes
The unit description tooltip in the sidebar now includes the text from `[special_note]`s.
Added a collection of item images
AI: fixed crash when using attacks aspect with invalidate_on_gamestate_change=no
AI: fixed crash when using custom_synced_commands
Micro AIs: fixed unit variables getting lost when continuing from replay
Fixed AI state initialization problem after reloading
Development Patch 1.15.13
Add-ons client
The details panel now shows the list of tags in each add-on.
Added a filter based on tags.
Lua API
Added `pango_color` to the `wesnoth.colors` table, for easy use in formatted text.
Add new function `filesystem.resolve_asset` to convert `[binary_path]` relative paths to data-relative paths.
Add new function `filesystem.have_asset` which can determine if an image or sound exists.
`wesnoth.have_file`, `wesnoth.read_file`, `wesnoth.image_size` moved to new `filesystem` library
Add a more advanced way of manipulating version strings via `wesnoth.version` constructor function.
Add a `wesnoth.scenario` data module that consolidates everything there is to know about the current scenario. Much of this information was previously available through `wesnoth.game_config`, but there are some new details too.
Fixed a regression introduced in 1.15.5 causing GUI2 widgets set to a hidden state to remain visible but not able to be interacted with.
Fixed a regression introduced in 1.15.5 causing GUI2 listboxes to break when cleared and re-filled under certain circumstances.
Packaging
Increased minimum required version of SDL to 2.0.8 (PR #5736).
Translations
Updated translations: British English, Czech, Dutch, Italian, Russian.
Units
Horses added
Seahorse added
Zombie horse variation added
Update piglet/boar graphics
User interface
The multiplayer "turns over" dialog now uses each team's colors when showing teams' names.
WML Engine
Modify implementation of overwrite_specials attribute for replace yes/no parameter by none/one_side/both_sides and select abilities used like weapons and specials who must be overwrited(owned by fighter where special applied or both)
Add a `ability_id_active` attribute to `[filter]`
`[terrain_mask]` now accepts `mask_file` as an alternative to an inline mask. The file is loaded from the same place as `map_file` in the `[scenario]` tag (ie, a maps/ subdirectory of your binary path). Anyone who prefers to keep masks separate from regular maps is free to make a subdirectory for their masks (or just keep all their masks inline).
`[effect]apply_to=movement` now always affects vision too, except when given the `apply_to_vision=no` attribute
Miscellaneous and Bug Fixes
More optimization in the UI drawing code, fixes the crash displaying the full credits (issue #5043).
Made GUI.pyw compatible with Python 3.9 (issue #5719).
Removed workarounds for bugs affecting older SDL 2.0 versions, including an extra copy of the game screen made during gamemap scrolling (PR #5736).
FPS values calculated when the :fps or :benchmark are now written to a file which can then be used to track FPS values over time.
Removed old image optimisation scripts, as there's a rewrite in Python.
Development Patch 1.15.12
Add-ons client
When uploading or deleting an add-on, the game will now prompt for the required password if it is not present in the `_server.pbl` file.
AI
Improved AI decisions about whether an attack with poison is better than one with higher direct damage.
Added options to the Patrol Micro AI on whether to notice invisible units, and on attack range.
Added a `[filter]` option to the Swarm Micro AI.
Replaced several uses of Formula AIs with Micro AIs, and removed Formula AIs from demo scenarios.
Removed experimental MP dev Formula AIs.
Fixed a crash in the Lurker Formula AI.
Campaigns
Descent into Darkness
Buffed Malin.
Eastern Invasion
Dialogue changes in S07b.
Legend of Wesmere
S16: Replaced the Patrol Formula AI with the Patrol Micro AI.
Secrets of the Ancients
Reimplemented the zombie recruitment UI.
The Rise of Wesnoth
Balance changes (issue #5603).
The South Guard
Fix the new ally's upkeep when choosing the bandit branch.
Tutorial
Reimplemented the character-choice UI.
Under the Burning Suns
In S01, fixed one of the mystics spawning in the lake.
Lua API
Fix issues with the wesnoth.map module.
Multiplayer
Dark Forecast
Difficulty rebalanced so that two-player-mode is hard rather than impossible (PR #5673).
The weather now changes on side 1's turn instead of side 3's turn (issue #5653).
World Conquest
Many bugs have been fixed, however WC is still hidden while more bugs are fixed.
Converted GUI2 dialogs to WML.
Fixed an error in the destruction mechanic.
Packaging
Removed the obsolete FindSDL2_ttf cmake module.
Terrain
Improved transition between human castle ruins and sunken ruins (issue #5611).
Translations
Updated translations: Chinese (Traditional), Czech, Italian.
Units
New rock scorpion monster and scorpion zombie variation.
Rename tusker/gorer references to boars and piglets, to avoid stepping on existing UMC.
Dune Blademaster gold cost changed from 52 to 57.
Dune Captain alignment changed from liminal to lawful.
Dune Cataphract gold cost changed from 61 to 62.
Dune Firetrooper gold cost changed from 50 to 41.
Dune Harrier gold cost changed from 46 to 47.
Dune Luminary gold cost changed from 53 to 38.
Dune Maruder gold cost changed from 52 to 60.
Dune Sky Hunter gold cost changed from 47 to 51.
Dune Spearmaster gold cost changed from 51 to 57.
Dune Wayfarer gold cost changed from 52 to 55.
Dune Windbolt gold cost changed from 50 to 49.
Dune Warmaster gold cost changed from 56 to 57, hp changed from 57 to 59, alignment changed from liminal to lawful.
Naga Ophidian gold cost changed from 24 to 22, melee damage changed from 7 to 6, ranged damage changed from 10 to 12.
Naga Ringcaster gold cost changed from 24 to 22.
Naga Sicarus gold cost changed from 48 to 46, melee damage changed from 10 to 9, ranged damage changed from 12 to 13.
Naga Zephyr gold cost changed from 50 to 46.
Wose Sapling gold cost changed from 10 to 11.
Wose Shaman gold cost changed from 40 to 27, movement points changed from 3 to 4, melee damage changed from 9 to 12, ranged damage changed from 10 to 11, hp changed from 50 to 56.
Horned Scarab gold cost changed from 12 to 11.
Fixed the Walking Corpses of some river creatures having poor movement in deep water (issue #5701).
New descriptions for the Fire Ant, Roc and Sand Scuttler.
Fixed the Giant Scorpion having an empty variation name.
User interface
Improved the attack dialog's recommendation about whether an attack with poison is better than one with higher direct damage.
Added logs folder path to the Game Version dialog on Windows.
Added built-in Lua engine version to the Game Version dialog and `--report`.
Made Accelerated Speed toggle announcement not stackable over itself or other announcements.
Minor adjustments to the sidebar's minimap area in the default game theme to reclaim empty and uneven space back. Note that this WILL break custom WML themes that use the same sidebar graphics as the default theme.
Minor adjustment to the placement of numerals on the debug clock.
Players now receive an error message when attempting to save games using illegal file names (issue #5679).
Fixed text labels containing only a single link becoming empty (issue #5625).
Separated floating labels' duration from the speed of their eventual fade-out.
Fixed font family leakage from GUI2 canvases to GUI1 elements such as the in-game chat overlay (issue #5712).
WML Engine
In development builds, deprecation warnings are now shown in-game by default.
Conditional WML's `[variable]` tag now expects exactly one comparison, and will warn if given none or multiple tests.
`[store_reachable_locations]range=vision` now calculates vision, instead of using movement costs and max movement points (issue #4179).
Miscellaneous and Bug Fixes
Fixed units with max movement set to zero being given one max movement point by `[unstore_unit]` or when loading a saved game (issue #5638).
Fixed an intermittent crash on the loading screen (issue #5629).
wmlunits (units.wesnoth.org) no longer incorrectly assumes that units with movement costs equal to their maximum movement can't move into the affected terrains.
Fixed a bug where log domains' severity could accidentally be reduced.
Changed the verbosity and error-handling of the `run_wml_tests` script.
Made `run_wml_tests` automatically skip tests which need strict mode when running without strict mode.
Made optimizations in the UI drawing code, these shouldn't have visible effects (PR #5697).
Optimized the command-line `wesnoth_addon_manager` tool.
Patch 1.14.16 and Development Patch 1.15.11
Patch 1.14.16
AI
Experimental AI: fixed a bug identifying hexes next to healers as healing locations
Goto Micro AI:
Fixed bug when the avoid_enemies parameter is set to very small values
Fixed rare bug with blocked paths when ignoring enemies
Protect Unit Micro AI: fixed bug when a unit is not on the AI side
Multipack Wolves Micro AI: fixed error when a wolf is fully surrounded
Campaigns
Dead Water:
Fix some characters’ names, which hadn’t been marked as translatable.
Son of the Black-Eye:
S09: Name the enemy team.
The South Guard:
S06b: Fix some enemies’ ambush abilities (issue #5383).
Editor
Re-enabled topics for the terrain editor in the in-game help browser
Added help topics for the scenario editor’s tools
Added documentation about the files written by the editor
Translations
Updated translations: British English, Catalan, Chinese (Traditional), French, Portuguese (Brazil), Spanish, Turkish
User interface
Fixed color fringing issues with ClearType on Windows.
Reduced font sizes for the unit HP/XP/MP/Vision/Defense displays on the sidebar at small resolutions to avoid overlaps (issue #5575).
Rearranged the unit XP and vision displays on the sidebar to avoid running out of room for the XP display (issue #5575).
Reduced font size for the ToD counter on the sidebar to avoid it being ellipsized too often.
Gave the turn timer display the same icon as the system clock display.
Anchored the Observers icon to the sidebar again in a way that does not allow it to overlap into it (issue #5575).
Fixed the turn timer/system clock display on the top bar incorrectly using a larger font size at small resolutions.
Rearranged the Defense display label on the sidebar slightly. It remains invisible in Wesnoth 1.14, however.
Miscellaneous and Bug Fixes
Added support to wmlxgettext for double-quote characters in translatable raw strings
Fixed an error message and the AI leader potentially not moving when it cannot reach a keep because it's occupied by an allied unit
Fixed display zoom not being taken into account when using the `x`, `y`, `directional_x` and `directional_y` attributes in unit animations.
Fixed `[terrain_defaults]` and `[resistance_defaults]` (issue #5308).
Fixed an attack prediction assert that happened in rare combinations of the defender slowing and the attacker potentially leveling up, and a specific combination of standard and Monte Carlo attack evaluations (issues #5533 and #5002)
Patch 1.15.11
AI
Improved the retreat_injured candidate action:
Made the CA independent of the caution aspect, which could previously cause almost healthy units to retreat
Added two new aspects for customizing the retreat behavior: retreat_factor and retreat_enemy_weight
In the default setting, only healing locations are considered as retreat locations and enemy threats are not the dominant consideration any more, which means units will not retreat to the edge of the map
Fixed a bug identifying hexes next to healers as healing locations
Miscellaneous other improvements to the internal rating function
Messenger Micro AI: added [avoid] tag functionality. In the process, two of the ai_helper functions also had this functionality added: move_unit_out_of_way() and get_closest_location()
Fixed how the avoid_map and avoid_enemies parameters interact
Fixed rare bug with blocked paths when ignoring enemies
Fixed bug when the avoid_enemies parameter is set to very small values
Protect Unit Micro AI: fixed bug when a unit is not on the AI side
Multipack Wolves Micro AI: fixed error when a wolf is fully surrounded
Campaigns
Delfador's Memoirs
Adjust campaign difficulty
Eastern Invasion
Reveal shroud in S2 and S10, to be fairer the first time a player sees those scenarios
Balance the carryover gold on the branching campaign paths between S06 and S09
Various small fixes
Liberty
Revise dialogue
Reduce difficulty
Sceptre of Fire
Adjust campaign difficulty
Secrets of the Ancients
Adjust campaign difficulty
Son of the Black Eye
Adjust campaign difficulty
The South Guard
Reduce campaign difficulty
Tutorial:
Disabled end credits (issue #5543).
Under the Burning Suns:
Adjust campaign difficulty
Translations
Updated translations: British English, Chinese (Traditional), Czech, Italian
Units
Beast-rider Walking Corpse variation (for UtBS Quenoth Tauroch line, but generally available)
User interface
Fixed color fringing issues with ClearType on Windows.
Improved the Load dialog when there are no saved games for the current version, and also when there are corrupted files.
Re-added the pop-up when there are no saved games at all (issue #5517).
Fixed resource leak in the Pango text rendering pipeline when using the characters_per_line constraint.
Make the warning about loading saves from old versions much clearer.
Made legacy GUI1 scrollbars match regular GUI2 scrollbars.
Reduced font sizes for the unit HP/XP/MP/Vision/Defense displays on the sidebar at small resolutions to avoid overlaps (issue #5575).
Rearranged the unit XP and vision displays on the sidebar to avoid running out of room for the XP display (issue #5575).
Reduced font size for the ToD counter on the sidebar to avoid it being ellipsized too often.
Gave the turn timer display the same icon as the system clock display.
Anchored the Observers icon to the sidebar again in a way that does not allow it to overlap into it (issue #5575).
Fixed the turn timer/system clock display on the top bar incorrectly using a larger font size at small resolutions.
Made the Defense display label on the sidebar visible (a side-effect of replacing SDL_ttf) and rearranged it slightly.
Set the correct default text color for in-game UI elements instead of #ffffff white for consistency with other UI elements.
Increased font sizes in Help and some legacy UI elements.
Minor clean-up of game menus display.
Restyled dropdown menu buttons to look like buttons rather than textboxes.
Fixed missing display resolution ratios in Preferences -> Display (regression introduced in 1.15.10).
WML Engine
Standard Location Filters now support gives_income=yes|no to make it simpler to match villages regardless of owner
Fixed ThemeWML `[label] font_rgb=` generating text elements with broken UTF-8 sequences.
abilities used like weapon can call a [teaching_anim] instead of [leading_anim] now.
The campaign end screen is no longer displayed when `[campaign]/[endlevel] end_credits=` is set to a false value.
Fixed `end_credits=` in `[campaign]` not having any effect.
Miscellaneous and Bug Fixes
Added support for 1.14’s tag names in `[terrain_defaults]` (issue #5308).
Replaced legacy SDL_ttf/FriBidi-based font rendering used in old GUI1 code paths with Pango.
Fixed an attack prediction assert that happened in rare combinations of the defender slowing and the attacker potentially leveling up, and a specific combination of standard and Monte Carlo attack evaluations (issues #5533 and #5002)
Fixed test scenarios in add-ons not working
Development Patch 1.15.10
Add-ons server
Fixed undefined behavior when servicing requests to downgrade add-ons.
Campaigns
Added custom campaign menu backgrounds for several mainline campaigns.
The Rise of Wesnoth
Adjust campaign difficulty
Multiplayer
The Delay Advancements modification has been removed in favor of adding the Plan Unit Advance modification to mainline. Enabling this modification allows each player to choose what their units will level up into in case the advancement happens on an enemy player's turn in an online multiplayer game.
Unit advancement that happens on an enemy's turn in online multiplayer games are no longer randomized. Instead, the first advancement listed for the unit is always used.
Disabled World Conquest due to an increasing number of reported bugs and it currently lacking a maintainer. It may be removed entirely in a future release.
Lua API
Upgrade to Lua 5.4.2.
Added the wesnoth.as_text(...) function as a way to more easily view the contents of a lua table. This is intended as a debugging aid and nothing more.
Deprecation warnings can now be viewed in the in-game Lua console, together with a stack trace to the first location that triggered them.
There is now a --strict-lua command-line option that disables most deprecated Lua functions; this makes the use of deprecated APIs an error instead of a warning.
Translations
Updated translations: British English, Catalan, Czech, French, Portuguese (Brazil), Turkish
Units
update footpad sprite
north-facing frames for dunefolk skirmisher, loyalist bowman, and troll whelp
User interface
Added a "disengaged" orb, shown instead of the partially-moved orb for units that can move but can't attack.
Added information about the build's (not runtime) target CPU architecture to the game version info dialog and --report.
Added terminal-style command history browsing with up-down keys for in-game consoles used by debug mode, ai and search floating textboxes.
Made the preferences dialog larger on HDPI screens; this fixes a usability issue with HDPI font sizes (issue #5185).
WML Engine
Extent 'special_id_active' and 'special_type_active' to abilities used like weapon and to [leadership] abilities.
abilities used like weapon can call [leading_anim] now.
Miscellaneous and Bug Fixes
Fixed display zoom not being taken into account when using the `x`, `y`, `directional_x` and `directional_y` attributes in unit animations (issue #5508).
Fixed a warning message and the AI leader potentially not moving when it cannot reach a keep because it's occupied by an allied unit
Patch 1.14.15 and Development Patch 1.15.8
Just in time for Christmas, we're releasing two patches, one regular and one to the beta channel! The former includes mostly small changes and bugfixes, while the latter includes more significant developments. Chief among those is Apple Silicon support! Note this is only available on the beta channel release, and (especially given how new the platform is), we would appreciate reports of any issues Mac players have with this new patch.
Happy (late) Hanukkah, and Merry (early) Christmas!
Patch 1.14.15
Add-ons client
Fix potential crashes when working with installed add-ons that have a corrupted _info.cfg file.
Campaigns
Descent into Darkness:
S11: fix low probability case of enemy being unreachable
S11: recall ghosts if available and ensure the player gets one level 2 ghost.
Eastern Invasion:
S03: fix the initial keep being blocked at the start
Fixed formatting of hyperlinks when the same URL appears more than once in a block of text
Miscellaneous and Bug Fixes
Fixed a rare issue on Windows that could result in wesnoth.exe sticking around waiting for console input after encountering an error despite not being launched with the `--wconsole` option.
Removed documentation for network proxy-related command line options previously removed in version 1.13.1 along with libana.
Development Patch - 1.15.8
Add-ons client
Fix potential crashes when working with installed add-ons that have a corrupted _info.cfg file.
Improved license information prompt for uploads.
Add-ons server
Fixed inability to write files (including the server configuration file) on Windows.
Dropped plain text passphrase migration, unused in production since version 1.12.7 and 1.13.0 (issue #5080).
Uploading add-ons with versions not greater than the latest uploaded version is no longer allowed (issue #5079).
Implemented optional server information query used by connecting clients.
Campaigns
Dead Water
Reduce campaign difficulty
Eastern Invasion:
Tweak campaign difficulty
S03: fix the initial keep being blocked at the start
Heir to the Throne
Tweak campaign difficulty
The Hammer of Thursagan
Reduce campaign difficulty
The South Guard
Reduce campaign difficulty
Multiplayer
Added `/roll N` command to multiplayer games and game lobbies which produces a publicly visible random integer number ranged from 1 to N inclusively (issue #5221, PR #5326).
Packaging
SDL_Image 2.0.2 or later is now required (was 2.0.0).
Undead variations for Falcon, Giant Rat, serpents, and Gorer/Tusklet
User interface
Minor streamlining on the Game Version and Add-ons Manager dialogs.
Text labels now use the hyperlink mouse cursor while hovering links.
Link awareness is now configured on a per-instance basis for labels/scroll labels instead of globally in their definition.
WML Engine
Add a overwrite_specials option for weapon special abilities to allow the effect of the ability to take precedence over the effect of any identical weapon special.
Miscellaneous and Bug Fixes
Fixed several possible crashes in wmllint
Screenshots now default to JPG instead of PNG
Fixed screenshot popup sometimes using the wrong path when trying to open the screenshot after saving
Development Patch 1.15.7
Add-ons server
Added basic command line options.
Add-on validation status responses can now be translated by the client.
Fixed an issue where incremental downloads would always transmit a delta for updating from the very earliest available version of an add-on to the very latest, instead of using the current and target versions specified by the client.
Incremental downloads are no longer allowed to cheat the download counts.
Add-ons client
It is now possible to install previous versions of an add-on if present and not expired on the server.
Campaigns
A Tale of Two Brothers:
S02: Changed the antagonists' motive and dialogue to sound more believable
Secrets of the Ancients:
Revisions to Bone Captain
Scenario 2 uses new Iron Fence terrain, in preparation for potential map revisions.
While the two leaders are separated, only the currently active one learns new zombie types.
Sceptre of Fire:
Scenario 2p5: increased the turn limit by 1 and enhanced victory filter conditions
Scenario 4: fixed a bug that prevented resources from spawning and added some small flavor adjustments
Some revisions/bugfixes to Scenario 9 "Caverns of Flame"
Multiplayer
During allies' turns, use orb colors to show which ones can still move (issue #1424). Also enabled for allied AI sides in singleplayer.
Terrain
New barrier terrain: Iron Fence (`^Eqf`) - similar layout to the existing wooden fence
Translations
Updated translations: British English, Catalan, Polish, Portuguese (Brazil)
Units
Decreased Icemonax's advancement XP requirement from 26 to 25 to match other dead-end L0 units.
Portrait and animation graphics for some of the new Wesnoth Fauna
Balancing:
Dune Rider xp changed from 42 to 47.
Sunderer line defense on hills changed from 60% to 50%.
Scorcher gold cost changed from 23 to 25.
Dragoon gold cost changed from 27 to 28.
Elvish Rider gold cost changed from 32 to 28.
User interface
Added the installable/upgradable version selection to the add-ons manager via a dropdown list
Fixed formatting of hyperlinks when the same URL appears more than once in a block of text
Miscellaneous and Bug Fixes
Fixed a rare issue on Windows that could result in wesnoth.exe sticking around waiting for console input after encountering an error despite not being launched with the `--wconsole` option.
Fixed a potential crash when drawing many images on the story screens.
Fixed the schema's list of attributes supported by IntroWML.
Fixed and renamed IntroWML's `[image]resize_with_background=yes` to keep images proportional to the background.
Fixed precise log timestamps missing a space between the timestamp and the log severity label.
Improve the in-game help's topic about orbs, add crowns and ellipses.
Removed documentation for network proxy-related command line options previously removed in version 1.13.1 along with libana.