Skip to content
Permalink
master
Switch branches/tags
Go to file
@Wedge009
Latest commit e4f0c91 Sep 25, 2021 History
[ci skip]
33 contributors

Users who have contributed to this file

@ivanovic @irydacea @nemaara @Vultraz @stevecotton @CelticMinstrel @Pentarctagon @jostephd @doofus-01 @mattsc @Elvish-Hunter @jyrkive
16536 lines (16334 sloc) 850 KB

Version 1.17.0-dev

Add-ons client

Add-ons server

Campaigns

  • Delfador’s Memoirs
    • S07: Clarified objectives (issue #5608)
  • Liberty
    • S06: Enforce failure condition for allied team (issue #6019)
  • Northern Rebirth
    • Give Eryssa’s side a consistent team color (issue #5375)
  • The Rise of Wesnoth
    • Remove time-runs-out lose condition for final scenario (issue #6109)
  • Under the Burning Suns
    • Avoid a few possibilities where the Dust Devil could speak (issue #4892)
    • Avoid dehydration status icon persisting into the next scenario (issue #5687)
    • Correct Traveler’s Ring description (issue #6043)

Editor

  • Avoid rare crash situation after editing scenarios (issue #5883)

Multiplayer

Lua API

Packaging

Terrain

Translations

  • Updated translations: British English, Bulgarian, Chinese (Traditional), Czech, Finnish, French, Indonesian, Italian, Polish, Portuguese (Brazil), Russian, Spanish, Turkish.
  • gettext plural forms now have caret prefixes stripped as well (PR #6094).

Units

User interface

  • The names of the abilities used as specials appear in the attack prediction window with specials weapons
  • 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.
  • Ban expiry intervals in the MP UI now only mention the most significant time unit (e.g. "3 minutes" instead of "3 minutes, and 20 seconds") (PR #6097).
  • Steam cloud file is no longer listed in the Load Game dialog.
  • Redefine green text in dialogs and tool-tips so they are no longer ‘too dark’ with recent Pango versions (issue #4348)
  • Gave the main menu's Language button a label again, now displaying the current language.
  • Tweaked margins around the main menu's bottom row.
  • Difficulty no longer displayed in the Load Game dialog when it is not relevant to a save file (issue #5321)

WML Engine

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
  • Messenger MAI: fixed bug of own units sometimes blocking the path to a waypoint for the messenger
  • Correct unit display adjustments on certain tiles when at zoom level other than 100% (issue #5974)

Version 1.15.14

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

Version 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.

Version 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.

Version 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()
  • Goto Micro AI:
    • Added optional remove_movement parameter (issue #5580)
    • 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

Version 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

Version 1.15.9

Add-ons server

  • Fixed a regression from 1.15.8 that caused add-on downloads to never bump download counts (issue #5411).

Campaigns

  • Dead Water
    • Reduce campaign difficulty

Editor

  • Added help topics for the scenario editor's tools
  • Added documentation about the files written by the editor

Multiplayer

  • Isar’s Cross got map background graphics, mainlined from the Visual Map Pack on 1.14

Packaging

  • Boost 1.65 is now required (was 1.59).

Translations

  • Updated translations: Catalan, Chinese (Traditional), French, Portuguese (Brazil), Spanish

Units

  • New Fauna/monster unit: Horned Scarab
  • Some standing/bobbing animations now filtered for low HP (depicting exhaustion) (PR #5388)

User interface

  • Major campaign menu overhaul including more accessible RNG options (including the experimental PRNG option previously found in Advanced Preferences), a difficulty dropdown replacing the difficulty dialog, and custom backgrounds set using [campaign] background= (issue #4543, PR #5358).
  • The OS version displayed in the game version dialog and --report now includes the runtime CPU architecture.
  • Improved sidebar area in the MP Lobby.
  • Improved filter options in the MP Lobby. Labels are clearer and games with blocked players are excluded from the list by default (with an option to unhide said games).

WML Engine

  • New [set_variable] options: reverse=yes, min=list, max=list

Miscellaneous and Bug Fixes

  • Fixed [terrain_defaults] and [resistance_defaults] (issue #5308).
  • Fixed being prompted multiple times to select campaign difficulty when loading a game (issue #5392)

Version 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).

Terrain

Translations

  • Updated translations: British English, Czech, Italian, Polish, Portuguese (Brazil), Russian, Turkish

Units

  • 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

Version 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.

Version 1.15.6

Add-ons client

  • Implemented support for incremental add-on downloads and uploads (issue #5046, PR #5038).

Add-ons server

  • The server configuration no longer contains the add-ons list/metadata (PR #5038):
    • Metadata is now stored in individual data/<addon_name>/addon.cfg files (PR #5038).
    • Full add-on packs are now stored as data/<addon_name>/full_pack_<version_md5>.gz files instead of data/<addon_name>.
    • Hash indexes of full add-on packs are stored as data/<addon_name>/full_pack_<version_md5>.hash.gz.
  • Implemented support for incremental add-on downloads and uploads (issue #5046, PR #5038):
    • Incremental update packs are stored as data/<addon_name>/<version_from_to_md5>.gzfiles.
    • Incremental update packs are allowed to be sent by clients in [upload] and may be asked from the server in [request_campaign].
    • The server can generate an incremental update pack while servicing [upload] if the client doesn't send one (e.g. old clients).
  • Previous versions of add-ons are stored on the server for a limited amount of time alongside update packs for older versions (30 days by default) (PR #5038).

Language and i18n

  • Updated translations: British English, Czech, French, Japanese, Polish, Portuguese (Brazil)
  • The font-handling now checks which glyphs are in each font, instead of using a list hardcoded in WML.
    • A bug in the removed code treated the first font containing U+4E00 as having the whole CJK Unified Ideographs block.
    • Fixes a bug where many Chinese characters were invisible if DroidSansJapanese was loaded before DroidSansFallbackFull (issue #5194).
  • Changing the language immediately updates the order of the fonts, instead of waiting for the next restart (issue #5194).

Lua API

  • Implement new GUI2 widget userdata for working with custom dialogs.
  • Renamed wesnoth.show_dialog to gui.show_dialog. The preshow and postshow now take a single parameter - a widget userdata.
  • All other dialog functions (such as wesnoth.get_dialog_value and wesnoth.set_dialog_value) are now deprecated.

Multiplayer

  • Delay Advancements modification:
    • The Delay Advancements modification allows changing how advancements are handled. With this enabled, units that previously would have advanced on another player's turn will instead not advance until it is again their side's turn. The benefit of this is that units will also not pick an advancement at random if they have multiple.