Battle for Wesnoth - Wesnoth Inc.
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.
Battle for Wesnoth - Wesnoth Inc.
Note this patch is only available to beta channel players.

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>.gz`files.
    • 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.
Packaging
  • When building wesnothd with database support enabled, Boost 1.66 is now the minimum required version.
Terrain
  • New wall variation: Overgrown stone walls ('Xof')
Units
  • Added Tusker line - Gorer and Tusklet (by TSI 2009)
  • Revised Falcon and Elder Falcon sprites
  • New units:
    • Swamp Lizard (crocodile)
    • Cave Bear
    • Icemonax
    • Giant Stoat
    • Fire Ant
  • Balancing:
    • Cost of Giant Rat changed from 6 to 5.
    • Cost of Giant Scorpling changed from 13 to 12.
    • Cost of Fire Guardian changed from 19 to 11.
    • Cost of Giant Mudcrawler changed from 16 to 11.
    • Cost of Giant Scorpion changed from 22 to 16.
    • Cost of Wolf changed from 17 to 15.
    • Cost of Chocobone changed from 38 to 28.
    • Cost of Cuttle Fish changed from 40 to 36.
    • Cost of Great Wolf changed from 30 to 21.
    • Cost of Gryphon changed from 40 to 29.
    • Cost of Water Serpent changed from 26 to 23.
    • Cost of Direwolf changed from 36 to 33.
    • Cost of Sea Serpent changed from 40 to 55.
    • Cost of Wild Wyvern changed from 54 to 75.
    • Cost of Wyvern Rider changed from 80 to 102.
WML Engine
  • Fix a bug with [set_variables][join] failing on boolean (yes/no) values
Miscellaneous and Bug Fixes
  • Removed font-analysis utils: codecomp codeextract codeglyphs codelist
  • [harm_unit] now calculates liminal damage by using the 1.15 algorithm
Sep 12, 2020
Battle for Wesnoth - Wesnoth Inc.
Add-ons client
  • Add-on titles and descriptions translated to the current language are used when available. The original English title is displayed in the UI and considered for search purposes in addition to translations.
Add-ons server
  • Made it possible to provide translations for add-on titles and descriptions at upload time in the .pbl (PR #4993). Only clients running 1.14.14/1.15.4 or later can read the translated values.
Language and i18n
  • Updated translations: British English, Catalan, Chinese (Simplified), Chinese (Traditional), Czech, Esperanto, French, Hungarian, Italian, Polish, Portuguese (Brazil), Russian, Spanish, Turkish
Multiplayer
  • 5p - The Wilderlands:
    • Player 5’s units are sorted when cycling through them with the »n« key.
    • Map tweaks (changes to some castles & villages, the northern river and embellishments)
User interface
  • Do not list nameless abilities in the Abilities and Ability Upgrades lists in unit descriptions in Help (issue #3060).
  • Fixed disabled buttons using the pressed highlight color.
Miscellaneous and bug fixes
  • Made wmllint recognize [remove_time_area] in order to avoid spurious warnings about unit ids.
  • Files created by the scenario editor include a boilerplate warning about hand-editing them.
Jun 13, 2020
Battle for Wesnoth - Wesnoth Devs
Campaigns
  • The South Guard:
    • S6b: Fixed enemy units triggering their own ambush events.
Language and i18n
  • Updated translations: Chinese (Traditional), French, Portuguese (Brazil), Russian
WML engine
  • Fixed OOS issues caused by select events triggered during events (issue #4946).
Miscellaneous and bug fixes
  • Fixed a major memory leak in the display code affecting all graphics operations, dating back to version 1.13.13.
  • Include graphics settings and the list of installed add-ons in the Game Version dialog's clipboard report and the command line --report output.
May 19, 2020
Battle for Wesnoth - Wesnoth Devs
Add-ons client
  • Ensure the client doesn't re-download dependencies that have just been updated during an Update All run by re-reading add-on versions after each update batch (issue #3273).
Add-ons server
  • Don't send restricted attributes at all, rather than sending them as an empty string (issue #4800).
Campaigns
  • General:
    • Fixed instances of multiple [avoid] tags being used (PR#4776).
    • Used more appropriate castle/encampment terrains.
  • Descent into Darkness:
    • S7: Correctly call Taylor a general.
    • S9: Spelling fix.
    • S11: Reduced boss difficulty and fixed ghost units not being correctly recalled.
  • Heir to the Throne:
    • S23: Clarify Bayar's dialogue.
  • Northern Rebirth:
    • Fixed enemy naga's triggering an event they shouldn't be triggering (issue #4853).
  • Son of the Black Eye:
    • S15: Fix the scenario not ending despite objectives being met in some circumstances (issue #4841).
  • Under the Burning Suns:
    • Fixed Sun Shydes dehydrating themselves at night.
    • Dehydration only affects the player's side.
Language and i18n
  • Updated translations: British English, Czech, Chinese (Traditional), Dutch, Esperanto, Finnish, French, Hungarian, Italian, Japanese, Polish, Portuguese, Portuguese (Brazil), Spanish, Swedish.
  • Use <game dir>/translations instead of <process working dir>/translations to find core translation catalogues on Windows.
Packaging
  • Fixed an issue when building using scons and --config=force.
  • Fixed creating the lockfile in scons when using python 3.
  • Significantly improved the macOS packaging instructions (PR#4781).
Units
  • Fixed the team color of the berserker idle animation.
  • Fixed typo in Troll race description.
  • Fixed the Red Mage using the Mage's idle animation.
User interface
  • Fixed a crash on certain screen resolutions due to UI element padding not being able to fit.
  • Fixed a crash when trying to preview an unplayable map (PR#4810; issues #3149, #4395, #4545).
Miscellaneous and bug fixes
  • Fixed building with the 64-bit Visual Studio projectfiles.
  • Added missing side controllers to two Micro AI scenarios (fixes #4890)
  • Experimental AI retreat CA: bug fix for cure-only abilities
  • Forest Animals Micro AI: excluded rabbit holes on map border
Feb 2, 2020
Battle for Wesnoth - Wesnoth Devs
AI:
  • Experimental AI:
    • Spread poison: bug fix for units ignoring [avoid] tag
    • Castle switch: bug fix for units-on-keep check
    • Remove village hunt CA
    • Add ids for candidate actions
  • Fix bug crashing some AIs when units with chance-to-hit specials without id are on map
  • Fast Micro AI: fix re-adding default CAs when deleting the MAI
  • Bottleneck Defense Micro AI: fix bug of units not participating if too far in front of the bottleneck
  • Lua AIs: several other minor behind-the-scenes bug fixes
Campaigns
  • Descent into Darkness:
    • S1: reduced difficulty
  • Heir to the Throne:
    • Modify campaign starting date
  • Legend of Wesmere:
    • Fix various date inconsistencies in historical references
  • Sceptre of Fire:
    • S1: Fix reference to LoW events
  • The South Guard:
    • Change Halidel to be Deoran's great-grandfather
    • S7b/S8b: reduce enemy gold values and modify dialogue upon allied unit death
  • Tutorial:
    • S2: Make the first grunt cross the bridge, otherwise the scenario is too hard
  • Under the Burning Suns:
    • Sun Singer and Sun Sylph: modify faerie fire colors
Language and i18n
  • Updated translations: British English, Chinese (Simplified), Chinese (Traditional), Czech, Dutch, Esperanto, French, German, Italian, Korean, Portuguese (Brazil), Russian, Spanish, Turkish
  • Fix Rename Unit dialog having untranslated text (issue #4569).
Lua API
  • wesnoth.deprecate_api was fixed to correctly wrap tables with metatables (issue #4079).
Music and sound effects
  • Removed accidental silence of two seconds after the first track of each scenario (issue #4459).
Units
  • Add various new death, standing, and idle animations
User interface
  • Fixed some severe game rendering issues with SDL 2.0.10 (issue #4237, issue #4245, issue #4510).
  • Draw ellipses during draw/sheath animations (issue #1527).
  • In the combat dialog and elsewhere, clicking the "Profile" button opens the help on the correct unit variation (e.g., Walking Corpse (Swimmer)) (issue #4142).
  • Ensure enough space to display turn numbers in the hundreds.
  • The search box in the Campaigns menu now takes campaign abbreviations and descriptions into account.
  • Added the Private Replay checkbox to the Multiplayer Create Game screen. This separates whether observers are allowed from whether the replay will be publicly available.
  • In the recruit dialog and recall dialog, units that are too expensive to recruit/recall are grayed out (PR #4362, PR #4444, part of issue #1282).
  • Reworked styling of progress bars and the network transfer progress dialog.
  • Removed "Classic" in-game theme.
  • Textboxes now have a hover effect as well as an I-beam cursor.
Packaging
  • The Wesnoth client now looks for the data/dist file when logging into the multiplayer server. This file should contain one of the following values based on what distribution channel the package is for: Default, Steam, SourceForge, Flatpak, macOS App Store, Linux repository, iOS, Android, BSD repository
Miscellaneous and bug fixes
  • New build-dependency: Python3 is required to run the WML unit tests (on non-Windows)
  • 80% of WML unit tests now run in a batch using a single instance of Wesnoth (non-Windows only)
  • New help topic outlining common (and less common) reasons for losing a scenario (PR #4217).
  • Add help text for some debug commands (part of issue #2500).
  • Make wmllint recognize `[load_resource]` (issue #4538).
  • Make wesnoth_addon_manager not generate packet.dump files any more (issue #4651)
Sep 24, 2019
Battle for Wesnoth - Wesnoth Devs
AI:
  • Fixed a rare crash in attack prediction (issue #4068)
  • Experimental AI: fixed guardians being used for village actions
Campaigns
  • A Tale of Two Brothers:
    • S3: modify castle illumination tip on easy mode
  • Dead Water:
    • S3: modify starting dialogue
  • Descent into Darkness:
    • Update campaign description
    • Update maps for S1 and S6
    • S4: reduce difficulty on easy and normal modes
    • S11: reduce difficulty just after Malin turns into lich
  • Eastern Invasion:
    • S9: add dialogue on victory
  • Heir to the Throne:
    • Remove 'Princess' as a direct address
    • S15, S23: Add explicit hints on EASY. (PR #4329)
    • S15: Improve one branch of the victory dialog. (PR #4334)
  • Legend of Wesmere:
    • S23: Landar's normal death dialogue now (properly) not used
  • Northern Rebirth:
    • Remove 'Princess' as a direct address
  • Sceptre of Fire:
    • S5: tell player that gryphon riders can now be recruited
    • S9: objectives changed to be more accurate upon moving to the volcano
  • Secrets of the Ancients:
    • Fixed number of scenarios in campaign listing
  • Son of the Black Eye:
    • S10: add dialogue on victory
  • The Rise of Wesnoth:
    • Tweaked dialogue in various scenarios
    • Fixed number of scenarios in campaign listing
    • S17a: prevent time over defeat if player chooses to defeat remaining saurians
  • The South Guard:
    • Update campaign description
    • Highlight narrator and gameplay explanations with colors
    • S1: create Sir Gerrick if player skips scenario with debug
    • S4: revise end of scenario dialogue
    • S5: add narrator warning when siding with bandits and reduce difficulty
    • S6b: create Urza Afalas if player skips S5 with debug
    • S6b: kill elves on side 1 if player got to this scenario with debug
    • S8b: fixed bug with shifted ToD schedules near campfires
  • Under the Burning Suns:
    • Various bugfixes (objectives, allied vision, unit spawns, event firing)
    • Updated various maps
    • Add additional animations to cutscenes and events
    • S2: add dehydration explanation to objectives
Graphics
  • Own portraits for higher level bats
  • New Water Serpent and Cuttlefish portraits
  • New Wolf, Great Wolf and Direwolf portraits
  • Additional wolf/dog portrait for custom units
  • Separate Mudcrawler portrait
  • New Walking Corpse portrait for mounted variation
Language and i18n
  • Updated translations: British English, Chinese (Traditional), Czech, Dutch, French, German, Italian, Japanese, Portuguese (Brazil), Russian, Spanish, Turkish, Ukrainian
  • Changed the :help command's output to split over multiple lines
  • Added translatable explanations of :droid, :help and :idle's arguments
Multiplayer
  • A New Land:
    • Help menu can be accessed in any turn and doesn't pause the game
    • Bottleneck in the spider's caves removed
    • Swapped positions of Gryphon and Drake
    • Guards can't be tricked off position, leaders won't destroy buildings
    • Guards and Spiders are loyal – AI income has been adjusted accordingly
    • AI income increases gradually in lategame (very slowly)
  • The Wilderlands:
    • Fixed default village_gold being too high, disadvantaging player 5
Packaging
  • Added HighContrast icon variant
WML engine
  • Fixed [music] ms_after= affecting the previous track instead of the intended one
Miscellaneous and bug fixes
  • Update various references of mermen to merfolk or mer
  • Adjust several maps to use different castle graphics
  • OpenMP support has been removed
  • Clarify descriptions of income and upkeep in the help and in tooltips. (PR #4337)
Apr 14, 2019
Battle for Wesnoth - Wesnoth Inc.
Campaigns
  • A Tale of Two Brothers:
    • S3: Changed castle to permanent chaotic ToD and rebalanced scenario accordingly
    • S4: Added dialogue between Baran and Tairach when they engage in combat
  • Dead Water:
    • S3: Added event to make Storm Trident more obvious
  • Descent into Darkness:
    • Complete revision of all dialogue and story text
    • Revised and rebalanced gameplay in all scenarios
    • S3 and S11: New scenarios completely rewritten from scratch
  • Eastern Invasion:
    • S1: Removed early finish bonus for fleeing
    • S2: Modified Dacyn's dialogue upon undead arrival
    • S7a: Require Dacyn to cross the river
    • S9: add snow to map
    • S10: show objectives after defeating enemy leaders
    • S11: show objectives after finding gold and releasing prisoners
  • Legend of Wesmere:
    • Disabled side shuffling in MP (checking the box does nothing)
    • Fixed missing persistent data at the end of chapter 3
    • Rebalanced gold values in all scenarios
    • S3: remove shroud from enemy sides upon Kalenz's arrival
    • S4: (MP only) free Cleodil at scenario start
  • Northern Rebirth:
    • Eryssa now must survive if she joins the player
    • Father Morvin and Sister Thera will now respawn at Tallin's location if they die to prevent illogical gameplay
    • Gold in S10-13 is adjusted if Krash is dead
    • S1: Spawn 2 Troll Whelps instead of 4 and a normal Troll
    • S4: Have Hamel describe Ghouls if Camerin is dead
    • S5: Add gates to map instead of images and overlays
    • S8: add text and updated objectives when rescuing Eryssa
    • S12a: Update objectives to make it clear that gold is not received if Sisal dies
  • The Rise of Wesnoth:
    • Fixed various typos
    • S17c: Modified Burin's description of trolls
  • The South Guard:
    • Fixed various typos
  • Tutorial:
    • Remove swamp from map for part 2
    • Warn player about water when stepping on any shallow water hex
    • Change quintain to level 0
    • Allow Konrad and Li'sar to level up and add corresponding dialogue for part 2
  • Under the Burning Suns:
    • Added embellishments to various maps
Language and i18n
  • Updated translations: British English, Chinese (Traditional), Dutch, French, Italian, Japanese, Lithuanian, Spanish.
Multiplayer
  • Dark Forecast: AI units are "discovered" (added to the help if not already known)
  • Dark Forecast: fixed bug where additional boss spawns would not occur after the initial wave
Multiplayer server
  • Forum user handler ban durations are now reported back to banned players.
Units
  • Updated descriptions for Goblin Knight and Wolf Rider
  • Add new descriptions for Quenoth faction
User interface
  • Add jamming to the vision tooltip in the sidebar. (PR #3327)
  • Fix undoing a recall not un-drawing parts of the sprite that go beyond the unit's hex (issue #3325)
  • Fix crash when the recruit filter matched nothing. (PR #3969)
  • "Show Enemy Moves" now highlights enemy units that can reach the highlighted hex. (PR #3961)
  • The time of day graphics for midday and midnight have been updated to match the rest of the summer/winter time of day schedules. (issue #2677)
Miscellaneous and bug fixes
  • Fix auxiliary attack end event handlers defined by FORCE_CHANCE_TO_HIT breaking if one or more of the affected units are removed by another attack end event handler (issue #3982).
  • The statistics dialog no longer forgets to reset stats when using "Reset Replay" ("Stop") in replay mode or "Back to turn" in networked MP games (issue #2852).
Feb 24, 2019
Battle for Wesnoth - Wesnoth Inc.
AI
  • Fixed crash when the AI simulates a fight between two units which can slow but aren't yet slowed, then simulates another fight for one of them in Monte Carlo mode (issue #3650).
  • Experimental AI recruiting: fixed AI crash for unit type with unknown race
  • Support for modifying the available AIs using cores:
    • New parameter default_ai_algorithm for setting the default AI
    • New parameter mp_rank for setting the order in which AIs appear in the MP computer player selection menu
  • New option "Keep saved AI" when reloading games from the MP Create Game screen. Choosing this option prevents overwriting of the saved AI by the default AI. (issue #3791)
  • Forest Animals Micro AI: fix AI crash when using custom rabbit hole image
  • Fix Lua AIs using the ai.stopunit_*() functions potentially creating infinite candidate action loops
Campaigns
  • Dead Water:
    • S12: Slightly rebalanced enemy reinforcements and ai gold
  • Descent Into Darkness:
    • Allow converting L3 necromancers to liches from S12 onwards (issue #3165).
    • Added an alternative method of completing the campaign (issue #3167).
    • S8, S9 (A Small Favor II & III): Clarify objectives. (PR #3711)
    • S8 (A Small Favor II): Fixed units created via the plague ability not available in S9. (PR #3711)
  • Sceptre of Fire:
    • S1&2: increased difficulty
    • S6: additional guards for the elves
  • Secrets of the Ancients:
    • S01 Slipping Away: It is now obvious that the wild animals cannot cross the fences.
    • S02 Dark Business: Simplify scenario by removing the temporary invisible starting keep.
    • S05 Blackwater: Additional dialog from Ardonna at the start.
    • S11 Battleground: Ghosts are now able to be recruited after the scenario is complete.
    • S15 Mountain Pass: Bird bones moves so bird is easier to keep alive when discovered.
    • S21 Against the World: Leader of the elves is now same elf from S12.
    • S21 Against the World: Adjustment so player doesn't have to chase down some leaders at the end.
    • Proper animation for finding the bird bones.
    • Newly made liches will now receive a move point upon transformation if they weren't recalled. this turn and haven't moved yet.
  • The Hammer of Thursagan
    • S12 'The Underlevels': redesigned with completely new map and scenario
  • Northern Rebirth:
    • Fix loyal units obtained in S7 costing upkeep (introduced in 1.14.5)
    • S13: Improvement to the AIs
  • The Rise of Wesnoth:
    • S15: victory text is not used upon hero death
    • S17d: enemy units are killed upon victory except for bats
    • S22: cuttlefish now have the loyal icon
  • The South Guard:
    • Revised scenario and story dialogue.
    • Reworked and rebalanced all scenario and map designs.
    • Removed S6a 'Tidings Good and Ill'.
  • Tutorial:
    • S2: Wolf riders are not initially recruited, to not hinder the player from reaching the island in time
Language and i18n
  • Updated translations: British English, Chinese (Simplified), Chinese (Traditional), Czech, French, German, Italian, Japanese, Lithuanian, Russian, Scottish Gaelic, Slovak, Spanish, Ukrainian.
Lua API
  • Fix wesnoth.set_dialog_callback calling the function immediately when used in the previous callback. (issue #3794)
  • Fix wesnoth.set_dialog_value not triggering re-layout. (issue #3572)
  • wml.tostring() now outputs a string that can be parsed back to WML without loss of data.
Miscellaneous and bug fixes
  • Fix crash with custom themes on desktop PCs. (issue #3599)
  • Add --campaign-skip-story command line switch for skipping directly to turn 1. (issue #3472)
  • Remove --data option, --data-path has the same functionality.
  • Fix documentation of --render-image command line switch. (issue #3568)
  • Update manpage with options previously only documented by wesnoth --help.
  • Fix wrong ordering for BW / BF years, for example in Play a Campaign when sorted by date. (issue #3187)
  • GUI.pyw can now terminate a running maintenance script
  • Fix SDL_DestroyRenderer assertion failure under XMonad. (part of issue #3716)
  • Fix map item names not being translated in the scenario editor.
  • Usernames specified in the MP UI and command line are now stripped of leading and trailing whitespace, including newlines.
  • Show ability of a selected unit as active/inactive with respect to mouseover hex. (issue #3912)
  • macOS: Wesnoth now uses the app sandboxing feature, which means there is a new location for saves. All saves will be migrated during first launch automatically. For info about backwards compatibility see: https://gist.github.com/hrubymar10/eb5afd896f933a46fac344ced940e020
  • Many units lacking animations now have at least a defense animations
Multiplayer server
  • Fix stale temporary bans continuing to have an effect on players until cleared by phpBB on the next ban/unban operation.
Packaging
  • new scons option, intended to be used when building releases inside a git repo: autorevision=False
  • Fix build with Boost 1.69. (issue #3646)
  • Fix build with Pango 1.43. (issue #3840)
User interface
  • Fix regression: Game Load screen would not select 1.12 savegames. (issue #3561)
  • Fix regression: the in-game "Observers" icon (an eye) was covered by the minimap. (issue #3543)
  • Increase step size when clicking sliders in the MP Create Game dialog. (issue #3552)
  • Fix overlapping top bar elements with small screen resolutions. (issue #3714)
  • Don't scroll to an invisible unit that recruits another invisible unit. (issue #3559)
  • When a recruited unit is fogged, scroll to the recruiting unit and play recruit animation. (issue #3577)
  • Fix line breaks in first statistics line in unit type pages in the help. (issue #3256)
  • Don't scroll to an enemy unit that teleports to or from an invisible hex. (PR #3578)
  • Don't show in the sidebar the time of day schedule of a shrouded hex. (PR #3638)
  • Game Load screen gracefully handles savefiles that can't be parsed. (issue #3652)
  • The sidebar now shows alignment and damages as they would be on the hex under the mouse, rather than at the unit's current location. (PR #3642)
  • When a unit has multiple statuses (slowed/poisoned/invisible/etc), the sidebar shows all of them, not just the first. (issue #3197)
  • Fixed being able to dismiss a game lobby by pressing Esc.
  • Fixed multiple severe issues in the classic theme.
  • The "Attack Enemy" dialog now shows inactive weapon specials in gray. (PR #3686)
  • Taking screenshots in title screen is possible again (issue #3235)
  • The "Recruit Unit" dialog is searchable by unit type name. (PR #3787)
  • Add text filter to hotkeys preferences. (PR #3759)
  • Hide leader in status table if it's unfogged but invisible. (PR #3854)
  • macOS: Dark GUI on macOS Mojave and later when dark appearance is enabled.
Sep 16, 2018
Battle for Wesnoth - Wesnoth Inc.
AI
  • Fixed crash in AI code when a side has multiple leaders.
  • Fix AI ignoring teleport locations when moving leader to leader goals.
  • Fast Micro AI: Fix bug crashing the AI when units with chance-to-hit specials without id are on map.
Campaigns
  • Heir to the Throne:
    • S6: Allow canceling an attack when a move+attack spawns enemy units (issue #3459).
    • S6: Change the trigger for spawning undead reinforcements (issue #3459).
    • S17: Add dialog explaining the lava game mechanic and an easter egg (issue #3473).
  • Liberty:
    • S3: Add story and war drums music.
  • Northern Rebirth:
    • S12: empty sides are hidden.
    • S13: allied leaders whose death causes defeat won't leave their keep and the lich brothers and Krash got more gold.
  • Sceptre of Fire:
    • S4: a cave entrance has been added.
    • S5: Gryphon Riders are now available starting form S5 (formerly S3).
    • S7: it's now impossible to kill all pursuers.
  • Secrets of the Ancients:
    • Fix dialog said by wrong unit & revert previous fix (issue #3294).
  • The Hammer of Thursagan:
    • S10: Fix objectives requiring too much of the player.
  • The South Guard:
    • S2: the case where Deoran is not sent to the Citadel is handled better.
    • S2: enemy units will no longer neutralize villages instead of capturing or burning them. This also means certain units will no longer be hidden in the Game Stats list.
    • S4: bodyguards are never spawned next to other units, and always in forest.
    • S5: zombies have now one castle with two leaders.
    • S6a: mermen leave after this scenario and will no longer be available.
    • S7a & S8a: a certain hero may now die.
  • Tutorial:
    • Show an undo reminder if one is out of moves, but can't end the turn yet.
    • Added more information to the Status Table prompt about how to access it (issue #2883).
  • Under the Burning Suns:
    • New graphics for Eloh.
Multiplayer
  • A New Land: Fixed village gold being 1 instead of 2.
  • Fixed Random Start Time not working (issue #3515).
  • Fixed a possible crash when leaving a game as an observer (issue #3017).
  • Fixed Start Game locked when other players abort the faction/leader selection dialog (issue #3452).
  • Fixed Skip Replay when joining MP campaigns.
  • Fixed OOS errors when undoing after ally chat.
  • Fixed game freezing upon droiding with Delayed Shroud Updates (issue #3453).
  • Fixed require_scenario and require_era attributes.
Language and i18n
  • Updated translations: British English, Chinese (Traditional), Czech, French, German, Hungarian, Italian, Japanese, Scottish Gaelic, Ukrainian.
User Interface
  • On laptop computers we now show how much battery you have left.
  • MacOS: Fixed moving the mouse with a touchpad also scrolling GUI dialogs.
  • MacOS: Add build number to OS version report.
  • Fix layout of Preferences window with some localizations (such as Czech).
  • Load Game now shows the chosen difficulty with the same name that you originally selected.
  • Load Game now shows the modifications enabled in the selected savegame (issue #3495).
  • Force leader sprites larger than 72x72 to be downscaled in Load Game (issue #3474).
  • Add left padding to dialog messages shown with a portrait on the right (issue #1938).
  • Addon Manager uses clearer terms for sort order.
  • Fix reversed sort order by unit level in Unit List and Recall Unit.
  • Fixed crash in Recall Unit when no units match the filter (issue #3475).
WML engine
  • Fixed [animate_unit] and [heal_unit] preventing unit halo from disappearing if the unit dies later (issue #3509).
Miscellaneous and bug fixes
  • Fix some minor problems with the macOS package.
  • Fixed crash when trying to attack with a unit without usable weapons (issue #3424).
  • Fixed the debug mode Create Unit dialog crashing when changing the gender of the previous selection after causing the list to come up empty using the filter box.
  • Allow searching by race and internal unit type id with the Create Unit filter box as well.
  • wmlxgettext is now included in release packages, so a separate download is no longer required to use it with GUI.pyw.
  • Fixed crash when pressing Reset replay (issue #3439).
  • Fixed editor cannot add starting location for > 9 players.
  • Fixed crash in Lua tstring comparision (issue #3541).
  • Fixed objectives at scenario start using old/cached values of conditions/variables (issue #3544).
  • Show an error message when trying to open the Lua console while not in debug mode.
  • On enemy side's turn, don't scroll to that side's leader if it's invisible.
  • Fixed :droid ignoring its second argument.
  • Fixed :droid giving no feedback when successful.
...