forked from wesnoth/wesnoth
-
Notifications
You must be signed in to change notification settings - Fork 0
/
changelog
12915 lines (12758 loc) · 644 KB
/
changelog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Version 1.13.1+dev:
* Add-ons client:
* Warn user if attempting to upload an addon with a version lesser than or
equal to a published version.
* Campaigns:
* Delfador's Memoirs:
* Added defeat condition for death of the last undead veteran in
'Showdown in the Northern Swamp' (bug #23668)
* Eastern Invasion:
* Fixed scenario events not working right on easy difficulty in 'Captured'.
* The South Guard:
* Deoran is now the grandson of the Haldiel in HttT instead.
* Tutorial:
* Fixed transition to second scenario.
* Under the Burning Suns:
* Gave Garak a new ability called Teaching (at the start of every turn,
his experience points are transferred to adjacent units on the same side)
* Editor:
* Add Recent Files menu with a list of recently saved or loaded maps or
scenarios, up to a custom limit (by default 10) that can be set in
Advanced Preferences.
* Graphics:
* New animated water.
* New standing animation for the Dwarvish Runesmith
* New generic portraits for the Troll and Troll Whelp
* Language and i18n:
* Updated translations: British English, French, Galician, Hungarian,
Japanese, Latvian
* Fixed crashes during start-up on Windows resulting from add-ons containing
erroneous textdomain declarations (bug #23839).
* Lua API:
* It is now possible to implement custom [effect]s with wesnoth.effects
* Changed interface for the wesnoth.synchronize_choice function
* Added support for unit.level field (read only)
* Added support for unit.advancements field (bug #23677)
* Added support for current.event_context.unit_x/y fields (bug #23507)
* Added wesnoth.set_dialog_focus function
* Added wesnoth.set_dialog_visible function
* Added wesnoth.show_message_dialog function
* Added wesnoth.show_popup_dialog function
* Added wesnoth.deselect_hex function
* Added wesnoth.is_skipping_messages and wesnoth.skip_messages functions
* New parameter write_to_mods in wesnoth.add_modification
* Added wesnoth.random function
* helper.shuffle is now synced
* Remove wesnoth.get_unit(underlying_id)
* Add wesnoth.get_unit(string_id)
* Change wesnoth.message so that it can display translatable strings
* Change wesnoth.put_unit so that the unit is passed as the first parameter
* Add wesnoth.erase_unit, which replaces wesnoth.put_unit when called without a unit
* Add wesnoth.unit_vision_cost
* Add wesnoth.unit_jamming_cost
* Add methods to proxy unit metatable:
matches, to_map, to_recall, clone, extract, advance, add_modification,
resistance, defense, movement, vision, jamming, ability, transform
All are equivalent to a similar wesnoth.* function, but are called as
unit:fcn_name(arguments) instead of as wesnoth.fcn_name(unit, arguments)
* Add wesnoth.races[race_id].traits
* Add wesnoth.unit_types[unit_type_id].traits
* pairs() and ipairs() now work on vconfig userdata objects
* Add helper.get_nth_child
* Add helper.child_count
* Add helper.child_array
* Music and sound effects:
* New dwarf hit and die sounds.
* Terrains:
* Removed unit elevation from N-S hanging bridges
* Added unit elevation to NW-SE and SW-NE stone chasm bridges
* Added unit elevation to NW-SE and SW-NE plank bridges
* Hanging, stone chasm, and plank bridges are now displayed in-game simply
as "Bridge", retaining their descriptive names in the editor as per
convention.
* User interface:
* It is now possible to switch from replay directly into normal play (bug #23833).
* The game now shows a notification on remote clients if a sides takes very long to do a local choice (bug #23297).
* It is now possible to replay a turn in mp games by loading autosaves.
* The game now asks for confirmation when attempting to quit during the game.
* Add "unit status=..." command to debug console to add/remove unit statuses
* GUI2:
* stacked_widget can optionally display a single layer at a time. This
may be used to implement dialogs with multiple pages or tabs.
* Widgets which are children of invisible or hidden parents can no longer
be interacted with even if the children themselves are still internally
visible.
* Added support for tristate buttons/toggle panels or more generally n-state buttons/toggle panels
* Added a version dialog button to the title screen, replacing the Paths
option previously found in Preferences -> General.
* WML engine:
* controller= in side filters can now be used in mp games for unsynced code
* Added [effect] apply_to=max_expereince set=<value>
* Added enable_if= to mod and era events
* Added $varname?default_value| in variable substitution
* Fixed side_for= parameter in [message]s with input
* New actionwml tag [on_undo] contains actionswml that is executed when the current action is undone
* New actionwml tag [unsynced] executes its contents in an unsynced context where for example [set_variable]rand= will return unsynced results
* [campaign] now supports [event] subtags which are added to every scenario of the campaign similar to [modification] [event]s
* Added support for mod_x,mod_y= in [terrain_graphics].
* Added support for has_flag= in terrain graphics [variant].
* Added category= to [label] - allows grouping labels so that players can
show/hide them
* Add female_text= to [animate_unit] and [unstore_unit] for easier translating
* AMLAs in [modifications] now use [advancement] tags instead of [advance] tags.
This means you can add an AMLA to placed unit by simply using its definition macro,
for example {AMLA_DEFAULT}.
* [get/set_global_variable]'s side= attribute now defaults to "global" (bug #23686)
* [team] share_view=yes/no, share_maps=yes/no was replaced with share_vision=all/shroud/none
* Add exclude_amla= key in [advancement] which disables the advancment if the unit
has already taken certain other advancements.
* The WML preprocessor now writes warnings to stderr for macros redefined
without #undef, to help detect unintentional name clashes.
* Fix macro definition line numbers being offset by 1 in WML preprocessor
messages involving macros.
* Added WML menu item and event handler views to the Gamestate Inspector
dialog.
* Added new possibilities for [effect]:
* apply_to=alignment - change a unit's alignment
* apply_to=attacks_left - change a unit's attacks per turn
* apply_to=recall_cost - change a unit's recall cost
* apply_to=vision, apply_to=jamming - change a unit's vision/jamming points
* apply_to=new_advancement - add new advancement possibilities (either units
or AMLAs)
* apply_to=remove_advancement - remove advancement possibilities (either units
or AMLAs)
* apply_to=attack - add set_ versions of all existing increase_ keys
* apply_to=attack - add increase_movement_used and set_movement_used to change the
number of movement points the attack consumes
* Ability to patch movetypes to account for custom terrains or damage types
* Removed y offset by -1 from [message]'s scroll-to-unit logic.
* Add [found_item] ConditionalWML to check if an [object]id= ActionWML has been taken
* New auto-stored WML variable $other_unit usable in the following contexts:
* [filter_adjacent] - $other_unit refers to the $this_unit of the enclosing filter
(In weapon specials and unit abilities, the unit owning the ability.)
* [filter_self/opponent/attacker/defender] (weapon specials)
$other_unit refers to the other unit in the attack
(eg in [filter_self], it's the opponent)
* [affect_adjacent][filter] (unit abilities)
$other_unit refers to the unit owning the ability
* New rotate operators for directions: dir:cw and dir:ccw
(This is useful mostly in conjunction with variable substitution.)
These operators are applied after the existing '-' operator that takes the
opposite direction.
* Adjacency filters in abilities and weapon specials now support count= and is_enemy=
* Add new looping tags: [for], [foreach], [repeat]
* Add new flow control tags: [break], [continue], [return]
* Added a new [difficulty] tag for defining a campaign's difficulty level
* Add new syntax for [option], similar to the new difficulty syntax
* Add [test_condition] ActionWML that tells why a conditional failed (for debugging)
* Editor:
* Added Category field and color sliders to the Edit Label panel.
* Miscellaneous and bug fixes:
* Removed legacy filesystem API implementation.
* Fixed Generate Map dialog bug that caused last choice of map
generator to not be actually selected (bug #23711).
* Fixed unbound memory read in internal time formatting code with
specially-crafted input.
* Child wesnothd processes spawned by the Host Network Game option on
Windows now display console output directly instead of using stdout.txt
and stderr.txt.
* Remember last selected modifications separately for single and multiplayer.
* Fixed SDL2 compilation issues.
* Fixed RECRUIT_UNIT_VARIATIONS core WML macro leaking an internal temporary
variable ($recruited_unit_random_variation).
* Fixed unit [resistance] and [jamming_costs] not being considered for sync
check.
* Fixed problems with slow/poison/petrify sounds (bug #23024) and made the
sounds play automatically when the status is inflicted in combat, instead
of being played by attack animations.
* Fixed OOS on random maps, where clients placed sides in different castles.
* Fixed some (not all) OOS caused by modifying a sides controller by wml.
* Fixed wml menu items becoming unsynced in later scenarios.
* The game now automatically detects whether to show the game connect screen
between scenarios.
* Fixed possibility of corrupting saved games in certain instances,
eg if an add-on tries to set an invalid variable
* Fixed bug 23060: unit stat tooltips do not show.
* wmllint, wmlscope, wmlindent and wmllint-1.4 now run on Python 3
Version 1.13.1:
* Security fixes:
* Disallowed inclusion of .pbl files from WML, independent of extension
case (CVE-2015-5069, CVE-2015-5070, bug #23504).
* AI:
* Fast Micro AI: exclude hidden enemies from attack evaluation by default;
add optional key attack_hidden_enemies to override this
* Lua AI helper functions: fix bug crashing the AI when number= is not set in
a unit attack definition
* Micro AIs: add a warning and avoid crash when a non-existing side is used
in the [micro_ai] tag
* Campaigns:
* Dead Water:
* The Stun effect now expires at the stunned unit's side turn end
* Under the Burning Suns:
* The Stun effect now expires at the stunned unit's side turn end
* Editor:
* Redesigned Generate Map dialog to use a real listbox and remember the
last choice during the same editor session.
* Fixed stack corruption bug in the Side Setup dialog.
* Graphics:
* New generic portraits for the Walking Corpse and Soulless
* Language and i18n:
* Updated translations: Galician, Scottish Gaelic, Russian
* Lua API:
* New function wesnoth.get_viewing_side
* New function wesnoth.remove_dialog_item
* Multiplayer:
* A New Land:
* Removed the ability to select individual factions when using map
settings as this breaks player recruit lists (bug #23593).
* Era names no longer support formatting markup in the game setup screen.
* Removed the Silver Mage from the available leaders for the Rebels faction
in Age of Heroes.
* Fixed "Accept whispers from friends only" not working with the default
lobby UI, and added a warning every 5 minutes for individual rejected
senders.
* Allow custom colors in MP connect dialog (bug #23629).
* It is now possible to change a side's controller by WML (for example with
[modify_side]) in a MP game.
* Changing teams by WML in a MP game causes less bugs (bug #23028).
* MP campaigns now behave more like single-player campaigns.
* Various fixes in the MP game setup screens (bugs #23641, #23509, #23496,
#23462).
* Units:
* Fixed the Shuja not having the default AMLA.
* User interface:
* Fixed minimap buttons appearing without contents or in the wrong state
during WML start events until they are interacted with or control is given
to the player for the first time or some other unspecified thing happens.
* Force uniform font rendering settings across X11 and Apple OS X, avoiding
color glitches resulting from incorrect applications of subpixel hinting
(bug #20337).
* Hide mod options from the user command prompt dialog in the MP lobby when
not authenticated as a mod.
* Fixed unit bars, ellipses, and orbs disappearing for individual units in
replay mode when using Skip Animations/Quick Replays if they moved without
attacking or otherwise switching to a new animation.
* Chat Log dialog now starts on the last log page when there are multiple
pages.
* Fixed Wesnoth's fonts remaining in use by Windows after abnormal exits, as
well as being available to other applications.
* Started showing on which difficulty levels a campaign was completed.
* Modifications for single-player campaigns are now selectable directly in
the single-player Campaigns menu.
* The game now automatically detects whether to show the game setup screen
in single-player mode.
* WML engine:
* Added support for [object] duration=turn end
* New or updated image path functions:
* ~BW(): converts an image to black and white
* ~NEG() now supports 0,1 or 3 arguments, allowing solarization effects
* ~SWAP(): swaps the RGBA channels of the image
* ~CROP(): now supports negative x and y values.
* Added support for SLF in [label] when used inside an event
* Added synced=yes/no (default yes) to [set_menu_item]
* [options] is now recognized inside [campaign]
* type=sp/mp/hybrid now must be specified for [modification]s
* Miscellaneous and bug fixes:
* Removed abandoned libana network API implementation.
* Fixed bug #23201, toggle icons display error in replay.
* Added --wconsole switch to allocate a console on startup (Windows-only).
* Added cwesnoth.cmd wrapper script to start Wesnoth with a console
displaying stdout+stderr (Windows-only).
* Updated mainline campaigns and multiplayer scenarios to use [filter] status=
instead of [filter] [filter_wml] [status]
* Fixed a segfault in [move_units_fake]
* Fixed unbound memory read in the MP map selection screen that could lead
to a segmentation fault or other abnormal behavior (bug #23606).
* Made silence.ogg larger to work around a crash involving the multiplayer
lobby with music and sound enabled (bug #23633, bug #23599) with libvorbis
builds affected by Debian bug #782831.
* Moved [role] tag to Lua (fix for bug #23630)
* Removed broken Python port of wmlxgettext from data/tools/.
* Default to non-strict compilation with CMake.
* It is no longer possible to undo moves before the last (manual) shroud
update.
* Debug commands are now synced.
* Fixed GUI2 toggle panels in some way that the author of this changelog
entry chose not to specify.
* Removed some config reloads, especially when leaving games or entering
the single-player Campaigns menu.
* It is now possible to use WML to disable/enable quick 4 MP leaders in the
Default era and the time over advantage dialog by setting a WML variable.
Version 1.13.0:
* Security fixes:
* Fixed arbitrary file read from WML/Lua API (CVE-2015-0844, bug #23440).
* Add-ons client:
* The Update All button is now displayed on all Add-on Manager views instead
of just the Upgradable filter view, and enabled only when there is at
least one add-on that may be upgraded.
* Add-ons server:
* Add-on metadata pattern blacklisting implemented.
* Major internal refactoring done.
* AI:
* New Micro AI: Fast AI
* Big Animals Micro AI: bug fix for units not attacking when [avoid_unit] is
not set
* Bottleneck Micro AI: bug fix for case when allied units are present
* Coward Micro AI: new optional key attack_if_trapped=
* Forest Animals Micro AI: bug fix for wander terrain lying on border hexes
* Herding Micro AI: bug fix for dogs sometimes having moves left at end
* Lurkers Micro AI: fix bug in wander terrain selection
* Lurkers Micro AI: bug fix for attack error when lurker runs into ambush
* Lurkers MAI: bug fix for attempting to attack petrified units
* Messenger Escort Micro AI: new optional parameters [filter],
[filter_second] and invert_order=
* Stationed Guardian Micro AI: make guard_x/y= optional keys
* Stationed Guardian Micro AI: bug fix for unreachable stations
* Messenger Escort Micro AI: bug fix for escort units blocking messenger's
progress
* Several Micro AIs: fix a variety of rarely occurring but serious bugs, such
as invalid savegames or disabling the AI from working for the rest of the
turn or after changing the Micro AI settings.
* Bug fix for requiring unnecessary keys for removal of several Micro AIs
* Fixed a bug that made it impossible to change or delete Micro AIs after a
game had been reloaded (bug #21750). This was a general bug in the RCA AI
mechanism and applied to other CAs as well, but it was most visible in the
Micro AIs.
* Some internal reorganization of Micro AI code to facilitate customizing
them for UMC and adding functionality from other versions of Wesnoth. Some
code cleanup for consistency, readability and speed, as well as fixing of
some minor and subtle bugs.
* Fix bug in Random Recruit Micro AI: the AI can now handle custom castle
terrain independent of its terrain code
* Fix bug in Return Guardian and Goto Micro AIs when there is no path to
the goal hex
* Several fixes of translatable strings in Micro AIs
* Micro AIs: only display on-screen error messages when in debug mode
* Add conditional inclusion of AI macros to AI cfgs in data/ai
* Campaigns:
* Changed all occurrences of {FLAG_VARIANT ragged} to {FLAG_VARIANT6 ragged}
* Singleplayer campaign creation now utilizes the create, configure,
and connect engines from the multiplayer codepath.
* Eras, mods, and options are now available for sp campaigns.
* Fix sighted events firing too early in several scenarios. Fixes bug #22466
* Use the new bigmaps for A Tale of Two Brothers, Delfadors Memoirs, The
Hammer of Thursagan, Northern Rebirth and the epilogue of Legend of
Wesmere.
* Remaining cases of old-style note and carryover information in [objectives]
have been converted to a newer style.
* A Tale of Two Brothers:
* Updated music playlists.
* Descent into Darkness:
* Fixed various issues with player and enemy gold and income in
'Descent into Darkness'.
* Fixed Darken Volk's ellipse in scenarios 'A Small Favor part 3' and
'Alone at Last'.
* Fixed Darken Volk being completely passive in 'Alone at Last'.
* 'Return to Parthyn' now has variable content depending on whether
necromancy was used in 'Saving Parthyn'.
* Eastern Invasion:
* In 'Captured', stolen gold won't be mentioned if the player had no
carryover gold.
* Updated maps for scenario 14, 16 and 17b.
* New animation for Ravanal's shadow wave.
* Added the Skeleton Rider line.
* New map for 'Mal-Ravanal's Capital', as well as updated
maps for scenario 2 and 4b.
* Tweaked and rebalanced all scenarios up to 'Two Paths'.
* Heir to the Throne:
* Tweaked and expanded music playlists for all scenarios.
* Fixed missing message in 'The Siege of Elensefar'.
* Hide unit variations that should not be listed in the help browser.
* Liberty:
* Fixed possibility of no viable routes around guards in 'Hide and Seek'.
* Tweaked resistances for the Skeleton Rider line.
* Northern Rebirth:
* Fixed Sister Thera and Father Morvin respawning into the recall list if
the other is on the north or west map edges.
* Sister Thera and Father Morvin will no longer speak dialog on their death
after 'The Pursuit'.
* The maps for 'Infested Caves', 'Clearing the Mines', and 'The Pursuit'
have been completely redone.
* All scenarios up to 'Old Friend' have been significantly tweaked and
rebalanced.
* Sceptre of Fire:
* Balancing changes for 'The Dragon'.
* Son of the Black Eye:
* S2: adjusted starting villages; scenario now ends if Kapou'e is already
on the signpost when the messenger comes back
* S3: make objectives consistent between before and after trolls appear
* S6: remove AI controller. It doesn't work with sides without a leader
* S6: reduce randomness of unit types unloading from galleons
* Minor balance tweaks to scenarios 7, 8, 12, 14, 15, 17 and 18.
* Made allied leaders less likely to get themselves killed.
* Minor changes to objectives and messages in scenarios 7, 8 and 14
* The Hammer of Thursagan:
* Fixed missing objective in 'The Court of Karrag'.
* Rebalanced scenarios 'Invaders', Mages and Drakes' and 'Fear'.
* Set Masked Dwarvish Lord range attack same as for Dwarvish Lord
* Fixed some messages not being shown in custom events in 'The Underlevels'
* 'The Court of Karrag' and 'Epilogue' feature a new map.
* The Rise of Wesnoth:
* Hide unit variations that should not be listed in the help browser.
* Tutorial:
* Rewritten with an eye to being less constricting and more informative.
* Under the Burning Suns
* Fixed recruited Desert Archers being always male.
* Fixed malformed rand range errors during AI turns on medium difficulty
in 'A Stirring in the Night'.
* Fixed bug #22800: Cloaked Figure appears in strange location.
* Fixed bug #22799: No allies killed by enemy reinforcements.
* Fixed bug #22790: Various problems with dehydration.
* Hide unit variations that should not be listed in the help browser.
* C++ Engine:
* Purge "human_ai" controller type. This is a fixup of bugfix #18829 below.
* Editor:
* Added an entry for the terrain description help to the context menu.
* Default hotkey bindings for brushes (1-5)
* Disabled the swap palette button when the unit palette is active.
* Disabled the tod schedule and playlist menus in pure map mode.
* Support for displaying the saved status of the selected area.
* Fixed error messages about missing UI elements.
* Fixed falcon race missing an icon due to having incorrectly-named image
files.
* Graphics:
* New Ancient Lich baseframe and animations
* New standing animation (NE and SE) for the Revenant
* New standing animation for the Dwarvish Stalwart
* Smooth unit movement over terrains with elevation such as keeps and
bridges (bug #20635).
* Fixed bug #22045: Only blit neutral surfaces.
* [item] images are now subject to local ToD lighting effects instead of
just the current map-wide ToD lighting (bug #22215).
* Disabled "alpha thresholding" in the bilinear interpolation algorithm
used for all sprites and images. (This was introduced as a workaround
for an old bug.)
* Add a new bilinear interpolation implementation, which properly performs
alpha weighting when averaging colors, and rename old one as the legacy
version.
* Align unit overlays to the sprite rather than the occupied hex.
* Added Brazier and Lit Brazier embellishment terrains
* New beach waves terrain animation.
* New images for the dummy, barrel, and green cloak items
* Updated Snowy Orcish Castle and Keep terrain images
* Help browser:
* Several sections have been rewritten or had their layout improved
* Added trait list with links to the help page for unit types
* Added Defense Cap column to the Terrain Modifiers table in unit help pages
for units with a defense cap on at least one terrain type, which also now
include a note to this effect in their special notes.
* Fixed a bug which caused the terrain section topic not to properly generate
a list of its contents.
* Add a new help section to the terrains topic which explains about mixed
terrain types.
* When using the terrain description feature with a mixed terrain type, the
game will autogenerate a formatted explanation of its best / worst movement
/ defense properties.
* Added automatic help entries for all eras, fulfilling Feature Request
#22107
* Fixed in-game help descriptions of default factions, using content from
wiki
* Added automatically generated lists of races and alignments to the
descriptions of factions
* Autogenerated Time of Day Schedule section
* Unit types that do not include any visible (hide_help=no) variations no
longer generate topic sections.
* Language and i18n:
* Updated translations: Chinese (Simplified), Chinese (Traditional), Czech,
French, Galician, German, Greek, Hungarian, Italian, Lithuanian, Polish,
Portuguese, Russian, Scottish Gaelic, Slovak, Spanish, Vietnamese
* Fixed cmake pot-update target on Debian and other systems that do not use
bash as the default /bin/sh.
* Lua API:
* Upgraded Lua to version 5.2.3.
* Fix bug #21761: wesnoth.synchronize_choice will now give a warning when
the table returned by the user-specified function is not completely valid,
when wesnoth is running in debug mode (--debug command line flag).
* Added new function wesnoth.get_all_vars().
* Add (tentative, preliminary) support for lua scripting of wesnoth
application functions
* Enable ilua "strict mode" by default. This safety feature helps to catch
errors caused by mistyped variable names, and improves the behavior of the
lua interpreter console. See 1.13.0 RELEASE NOTES for more details.
* Add multiplayer client scripting (join lobby, chat, host games, save games,
reload games) and mp unit tests based on this
* Add functions in wesnoth.map_location to perform map location arithmetic
using the same functions the C++ engine does
* Enabled support for the bit32 library (bitwise operations)
* Added support for treeview wigets in lua gui2 dialogs.
* Added support to define wml conditional tags in lua. See the
wesnoth.wml_condtionals table as described on the wiki.
* Multiplayer:
* Fixed the Set Password option during game creation not having an effect
due to a misplaced WML attribute in the client's command for the server
(bug #23015).
* Fixed missing scenario title in lobby for reloaded MP campaigns.
* Added "no mirror" and "no ally mirror" options to the MP configure screen.
* Multiplayer content [era], [modifications] now carry version info of their
associated add-on, and may have "addon_min_version" fields set which
specify backwards compatibility with earlier versions.
* Missing content for games hosted in the mp server may now be retrieved
automatically by clicking on these games in the mp lobby.
* Ported the password prompt displayed when joining a password-protected MP
game to GUI2 (bug #23455).
* Music:
* Change main menu track to Journey's End.
* Replays:
* Added a button that allows playing a single move in replay mode.
* Units:
* Increased the experience requirement for the Rami from 32 to 39
* Increased the experience requirement for the Saree from 56 to 64
* Changed sound timings for Khalifate melee attacks
* New chill tempest animation for Lich/Ancient Lich
* Add 'elemental' trait to Mudcrawler line
* Fix sound timings for drake fire animation macros
* Assigned capitalized translatable names to Walking Corpse and Soulless
variations (bug #22902).
* Hid alternate Great Wolf variation from help as it is identical to the
default variation stats-wise.
* User interface:
* Added a context menu option for command mode.
* Added a Classic theme which restores the 1.10 UI.
* Made orb and minimap colors configurable in Preferences.
* Remove 'allow_new_game=no' entries from random map new game list
* Fixed bug #22095: An assertion failure in the gamestate inspector.
* Changed: A listbox can now update its size when rows are added.
* Changed: Avoid listboxes to handle mouse clicks twice.
* Fixed bug #22144 + #22046: An assertion failure with empty labels in
a listbox.
* The :inspect dialog now uses the same function as saved games to generate
WML in text form instead of a simplified version.
* Added a button to copy the currently displayed content from the :inspect
dialog to clipboard.
* WML array elements are now displayed with subscripts in the :inspect
dialog.
* Added a button to copy the in-game Chat Log dialog contents to clipboard.
* Fixed the WML load error dialog not displaying an add-on name instead of
falling back to its directory name if the add-on contains an outdated
_info.cfg file lacking an [info]title= value.
* Fixed most of the minimap buttons and the End Turn button appearing
without contents or in the wrong state during WML start events until they
are interacted with or control is given to the player for the first time.
* Added a new subdialog in Preferences to clean or purge the WML cache.
* Fixed AI engine names in the MP game setup screen being translated to the
language selected when Wesnoth was started rather than the current
language (bug #22092).
* Added a new "Advanced Settings" button and dialog to campaign select.
* Added new wml attributes to listbox: has_minimum and has_maximum.
* Added a "Disable automatic moves" preference to disable automatic movements
at the beginning of a turn.
* Fixed lower button row padding for GUI1 dialogs including Statistics and
the Add-ons Manager (bugs #22379, #22791).
* Fixed mouse tracking issue with workaround by changing the default window
resolution for OS X to 800 x 600 (bug #20332).
* Removed the "Replay viewer" text label from the replay controller theme,
because it caused problems for translators and was unnecessary
* Fixed bug #22337: Bug in inspect long arrays
* Added a new "Alerts" configuration screen under Preferences > Multiplayer,
refactored all of the mp alerts / desktop notifications for customizability
* Removed "desktop_notifications" and "lobby_sounds" advanced preferences,
as they are subsumed by the Preferences > Multiplayer > Alerts screen now.
* Added support for hyperlink rendering and clicking in gui2 labels.
* Added lua interpreter console, accessible via a hotkey
* Add lua console button to gamestate inspector
* Add command history and history expansion to lua console, based on optional
support from GNU readline history library.
* Add support to evaluate expressions automatically in lua console, based on
a lua lib "ilua", and "experimental compilation" technique.
* Fixed game falling back to desktop if a user declines to load a previous
version save from within a game
* Fix bug #22984: Sliders (GUI1) focusing improperly in non-game contexts,
and not responding to left-right key press
* Wesnoth now ships with Bold and Oblique forms of its default font, Deja Vu
Sans, and these are used in many menus and in the in-game help for styling
text where previously we used SDL_TTF. Fixes bug #22376.
* WML engine:
* New image path functions:
* ~XBRZ(): Takes one argument, the scaling factor (1-5). Uses the xBRZ
scaling algorithm added in this release.
* ~SCALE_SHARP(): Anologous to ~SCALE() but using the nearest neighbor
scaling algorithm instead.
* ~PLOT_ALPHA(): No arguments, plots the alpha channel in greyscale.
Mainly useful for diagnostics of other function combinations, or
debugging the engine itself.
* ~WIPE_ALPHA(): Again mainly useful for diagnostics.
* ~ADJUST_ALPHA(): Takes either a % or an 8-bit integer, and "multiplies"
the alpha channel by this value.
* ~SEPIA(): Gives the image a sepia tint.
* ~NEG(): Gives the image a photographic negative effect.
* Added customizable recall costs for unit types and individual units,
using the new recall_cost attribute in [unit_type] and [unit] (bug #13074).
* Added support for [elseif] tags inside [if]
* Schema validator and preprocessor #warning messages now conform better to
the new WML parser/preprocessor diagnostics format introduced in version
1.11.10.
* Added define= functionality to scenarios, eras, and modifications.
* [unit] uses passed [advancement]s instead of unittypes advancements if
[advancement] were given in [unit].
* allow [lua] tags inside [modification] and [era] (which have the same
effect as [lua] tags inside [scenario]).
* enable side_for= in key [message] with [option]s.
* added [effect] apply_to=fearless/healthy which is now used by
healthy/fearless traits instead of hardcoding the id of those traits in c++.
* added support for a shuffle key in the [music] music to allow selecting
between random and non-random music play (bug #19653)
* Fixed a bug that prevented [animate_unit] from displaying death or victory
animations for those units that filter them based on weapon (eg. Wose)
* New WML tags: [put_to_recall_list] and [sync_variable].
* Fixed nested macros emitting incorrect bindings to the default 'wesnoth'
textdomain at the end of a substitution instead of the parent textdomain,
this breaking localization of subsequent strings (bug #22962).
* Sounds for slow and poison are automatically played when slowing/poisoning
a unit, and should no longer be played by the attack animations.
* force_lock_settings defaults to yes in [scenario].
* Moved all preprocessor diagnostics from the 'config' log domain to
'preprocessor'.
* Dropped support for [filter_side] in [gold] and [modify_ai], [theme] name=
in place of id, and [object] duration=level.
* Allowed direct modification of unit.ellipse variable even if ellipse= is set
in [unit_type] or by an [effect]
* Add accelerate=yes/no key in [delay]
* Add support for status= key in SUFs
* Add "disallow_shuffle" key in [side], which causes the "shuffle sides"
feature always to skip this side, even if it is human playable.
* Add "require_scenario" key in [scenario], [multiplayer], which causes a
multiplayer game to require that all participants have the add-on installed.
* Miscellaneous and bug fixes:
* replace 'fight_on_without_leader'=yes/no with defeat_condition=no_leader/
no_units/always/never which allows the wml developer to decide when a side
is considered defeated
* Fix Fisher-Yates implementation of Lua helper.shuffle (bug #21706)
* Fixed issues with the ~BG() image path function not always working with
cached images.
* Idle controlled sides now serialize as human controlled.
* Fixed bug #20876: A segfault in cut_surface.
* Dropped support for AmigaOS, BeOS, and OS/2.
* Increased the sound mixer channel allocation from 16 to 32, thereby
raising the limit for simultaneous sound effects from 5 to 20, and
simultaneous UI sounds from 1 to 2.
* Fix bug #21758: "Ready not blocked while player pick faction."
* Fix bug #18829: "ai sides show up as "controller=network" on remote
clients". This issue is the source of some difficulties with mp campaigns
which occur when the campaign is reloaded from a non-host side, or after a
player rejoins from observer status. Hopefully, reloading campaigns is
easier after this.
* Fix bug #21797: "Mandatory WML child missing" when leaving a reloaded game.
* Fix bug #21808: Cannot join a reloaded game as an observer.
* Fixed halos glitching through locations that become shrouded after the
halo is rendered for the first time.
* OS X user data directory is now ~/Library/Application Support/Wesnoth_1.13.
For compiling Wesnoth using Xcode, a new version of
wesnoth_compile_mac_1.13.zip is also required.
* Fix bug #21257: Lagging animations with skip AI animations and fog/shroud.
* Improved unicode handling on windows for characters outside the Basic
Multilingual Plane.
* Fix bug #3856: The turn dialog used in hotseat MP play now applies
a blindfold for the duration of the dialog.
* Petrified units are no longer displayed in the "Damage versus" tooltip.
* Fix bug #21759: "timer refreshed too often when time runs out"
* Use one combo box instead of check boxes for replay options "skip replay"
and "enter blindfold". This fixes the mp lobby in width <= 800 resolutions.
Fixes bug #21888.
* MP server now commits controller changes to the replay rather than updating
as we go along. Among other things these means that players that join an
scenario with ai sides which has already started won't have corrupted
controller types which would prevent them from successfully saving and
reloading in the future.
We have also moved all "controller tweaks" associated to the start of MP
games to server-side rather than having a mix of client and server code.
* Fixup user-displayed strings associated to replay options, idle state
* OS X: mark Wesnoth as not high-resolution capable. This greatly improves
performance on retina devices.
* Upgrade Xcode project to enable both i386 and x86_64 builds
* Fixed problems with idle controller type in networked mp.
* Fix bug 21459 by making dropped sides default to idle.
* Fix bug 21882 by introducing "fight_on_without_leader" boolean attribute
of [side] tags and refactoring check_victory to use this.
* Changed: Don't use the random generator for units with no names.
* Fix bug #21910: code for game is ready bell is corrected, simplified, and
moved to mp_connect::process_network_data.
* Deliver desktop notifications in tandem with "game is ready" bell and
also the "game has begun" bell.
* Fix bug in which blindfold could cause OOS.
* Fix bug #21914: allow drake walking corpse variation to move on unwalkable
* Fix unnecessary "Mandatory WML Child not found" error when replay file
doesn't have a [carryover_sides_start] tag
* Server now generates PR 121 compliant replay files.
* Fix bug #21025: replay controller doesn't execute play_next_side properly
* Fix bug #21916: ready blocked at inappropriate times
* Fix bug #21931: controllers bugged in (basic campaign) when networked
* Fix bug #21883: make sure movement animations don't cycle with fog on
* Fix bug #21316: make subframes within standing animations cycle by default
* Fix bug #21967: fix crash when unit modification to traits has empty id
* Fix bug #19258, 21962: WML variables spuriously copied to replay_start
* Fix implementation bug in random number generator: rand_pool_ is now an
unsigned long rather than an unsigned int.
* Fix bug #21491: fix drag+drop for unit movements
* Fix bug #21448: make premoved units selection like in Wesnoth 1.10
* Fix bug #21372: fix unit move continuation if enemy discovered
* Added a Python/Tkinter based GUI to allow running wmllint, wmlscope and
wmlindent in an easier way
* Some commandline output which was helpful for noninteractive ai testing
is redirected from std::cout to a logdomain "aitesting".
* Added WML unit test capabilities, accessible from commandline using -u
switch. These are useful for unit testing the WML / lua api.
* Support for total conversions, so called "cores".
* Fix bug #22030: correct index of weapon special disable in attack GUI
* Fix bug #21964: assertion failure when using "controller" attribute with
a number.
* Add [do_command], which takes the body of a [command] tag from ReplayWML,
(some possibilities not allowed), and executes the corresponding action.
It is replay safe and triggers WML events as appropriate.
* Reallow selection of another unit on same side without deselect first
* Add "strict mode". Using --log-strict=[severity] causes wesnoth to throw
a game_error exception when anything is written to a log as severe as
that. For example --log-strict=warning causes both warnings and errors
to generate runtime exceptions. This is intended for unit tests.
* Fix bug #21867: team flag colors not refreshed after making use of
[modify_side] color= unless a new flag set is also provided.
* Fix a bug where in movement records, "skip_sighted" was sometimes
spelled as "skip_sighed".
* Fix bug #22020: make base units with variations help entry clickable
from the 'Unit Description' menu entry or from side pane.
* Fix bug #21977: ready blocked on scenario transition, when
allow_new_game=yes
* Add "MAKE_ENUM" macro to simplify parsing of WML options.
* "MAKE_ENUM" macro signals WML parsing errors when the game is run
in debug mode, and an illegal value for an attribute is encountered.
* Fix bug #21397 Reloading may cause a side's turn is not initialized.
This bug affected only networked mp, at least since version 1.8.
* [modify_side] may now alter the value of [side] defeat_condition.
* Fix bug #22116: unlock movement when attacking enemy+discovering in fog
* In mp the other players now also proceed to the next scenario if one human
player wins.
* Fix bug #21397: "Saving and loading may cause a side's turn is not
initialized".
* Fix bug which caused no units to be displayed when reloading an end of
scenario save, by stripping them from the save file. However, this does
not fix bug #15545, which was the reason that this behavior was introduced.
* Fix bug #22123 "Replays don't reset map when reset button is pressed,
causing OOS"
* Wesnoth reports an error if it evaluates [if] and finds no [then], [else],
[elseif] children, as a chat message from lua.
* Fix bug #22134: Campaign prefix not used in mp campaign saves
* Made the error messages sent to stderr when the core data dir is
incorrectly set more helpful.
* Fix bug #20126: Recursive preprocessor includes cause infinite loop
* Added 'faction_lock' and 'leader_lock' to SideWML to be used in MP Connect
screen. Fixes bug #21978.
* Fix bug #22231: partial moves now able to be continued in whiteboard
* Added wmi_pager object to control how wml menu items are displayed in
context menus, and allow to display more than seven.
* Fix an inefficient implementation of unit::invisible, in an effort to
address slow performance problems:
http://forums.wesnoth.org/viewtopic.php?f=4&t=12139&start=180#p569931
(Also see gfgtdf's commits trying to optimize the minimap loop)
* Made it so <exe location>/../ (non-Windows) or <current working dir>/../
(Windows) are also considered possible data directories if they contain a
data/_main.cfg file, intended to help with cmake builds.
* Fix bug #21723: team-specific items displayed to wrong players / at wrong
times
* When parsing command line args, if we fail to parse, give an error message
rather than crashing with no explanation.
* Fix bug #22305: assertion failure in unit_display.cpp
* Fix bug #22086: wrong or missing minimap previews displayed b/c of problems
with saveindex
* Fixed the SCATTER_UNITS macro so that it may no longer attempt to place
units at the map borders.
* Fixed bugs in [filter_vision] reported here:
http://forums.wesnoth.org/viewtopic.php?f=21&t=40702 [filter_vision] is now
a check for *any* side matching the filter to have appropriate vision.
* Add [has_ally], [has_enemy] to work around issues reported here:
http://forums.wesnoth.org/viewtopic.php?f=21&t=40702 In a side_filter,
[has_ally] and [has_enemy] are corrected / simplified versions of
[allied_with] / [enemy_of], this is an extension of the bugfixes for
[filter_vision].
* Fix [side] share_view/maps always beeing false for non-first levels in mp
campaigns
* Fixes start-of-scenario multiplaer saves (#22068)
* Fix bug wherein "lobby sounds" advanced preference didn't do anything for
the normal (GUI 1) lobby.
* Fix bug wherein dbus notifications did not have a wesnoth icon
* Fix bug wherein chat history synopses weren't working right in the dbus
notifications
* Default to classic minimap unit/village color coding (colored by side).
* Default to classic minimap terrain representation (satellite view).
* Display the tooltip for actions browsed in the hotkey preferences dialog.
* Enabled action icons in the hotkey preferences dialog.
* Fix bug #21717: "F5->reload wml tree" doesn't work in editor.
* Fix bug #21298: Minimap shows invisible overlays
* Remove carryover WML (this may make a reappearance in 1.13.0 but it is
considered premature now, please see github PR discussion for more info)
* Fix bug #22465: Minimap not redrawn after turn dialog.
* Fix bug #22306: move_unit moves a unit even when it shouldn't
* Fix minor bug where toggling accelerated speed caused two lines of print
messages to display on top of one another. Reported here:
http://forums.wesnoth.org/viewtopic.php?f=5&t=40745
* Fix bug #22611: loading a theme with nonexistent button images would cause
the program to close.
* Fix bug #22487: advanced preferences descriptions not showing up
* Fix bug #22646: Tooltips broken in replay viewer
* Fix bug #22643: Cannot compile with boost 1.56
* Fix issue where the chatlog for a replayed game could not be opened in
single player. The chatlog can now always be opened.
* Fix bug #22745: choose_track function crashes the game in certain cases
* Fix bug #22650: nontranslatable strings displayed in tooltips for terrain
icons
* Fixed Gameplay -> Time of Day help topic displaying the Dawn ToD picture
where the Second Watch picture should be used instead (bug #22537).
* Fixed mishandling of nested subnamespaces by the [clear_global_variable]
WML action causing an assertion failure (bug #21093).
* Fix bug #22443: Scenario Settings table has inaccurate Start Gold info in
certain cases
* Fix Grand Knight image being distorted in the sidebar
* Fix bug #22251: Map labels not appearing in mp
* Fix bug: lobby sounds not all playing. This was fixed by adding a second
dedicated channel for UI sounds, and moving the "Ready to start" sound to
the turn bell channel.
* Bug fix: another instance of "overlapping messages", this time with the
planning mode activation hotkey
* Fix bug #21400: Use unit 'image' with higher priority than 'image_icon'
for animation frames with no specified image.
* New filesystem implementation based on boost filesystem
* Added "--noaddons" command-line argument, prevents any add-ons from being
loaded.
* Added "--render-image" command-line argument, similar to --screenshot, but
instead of a map, it takes a wesnoth imagepath and generates at bitmap
with the filters applied.
* New gettext implementation based on boost locale. This raises min boost
requirement to 1.48, and adds a new dep (locale, filesystem was also added
above)
* New image scaling routine imported from the xBRZ project (HqMAME on
sourceforge)
* Now may save screenshots and other images as pngs, using SDL_SavePNG lib
(from github)
* New RNG implementation using boost::mt19937, and boost::random_device for
seeds. The boost random library is now a build requirement.
* Add "lua" random map generation
* Multiplayer server can now handle scenarios with more than 9 sides
* [modify_side] controller= now works in networked mp. If a null-controlled
side becomes alive by [modify_side] controller=ai/human then the currently
active client will be assiged controll
* Fixed a stingstream syntax error that caused the build to fail in Visual
Studio 13
* Fixed hotkeys for changing tips in titlescreen (bug #18926).
* Fixed problems building wesnothd using cmake if not building the game
* Added several new options to GUI.pyw
* Fixed a bug in which sides without a leader, but not defeated due to
defeat_condition set to no_units_left or never couldn't capture villages
* Fixed several Mac OS specific bugs in GUI.pyw
* Fixed bug 22987 for filtering on era and mods in the Multiplayer lobby.
* Fixed bug 23117 Invert breaks lobby filtering if Apply Filter is off.
* Fixed bug 23426 Show terrain description hotkey works also for shrouded
hexes.
* Fix bug #23243: Segfault while clicking during [delay] in prestart.
* Remove support for legacy style unit abilities descriptions.
* Fixed bug #23445: set default build type in cmake to "Release" to ensure
that the game is not unoptimized
* Increased minimum version of FriBiDi to 0.10.9 in cmake to match scons
* Changed how FriBiDi is found in cmake to using pkgconfig
* Made the file chooser dialog (used for e.g. loading maps in the editor)
use uniform path delimiters on Windows, fixing issues with browsing to
parent directories (bug #23224).
Version 1.11.11:
* Add-ons server:
* Filenames with whitespace in them are no longer allowed.
* AI:
* Non-default multiplayer and Micro AIs:
* Fixed bugs which could lead to the AIs being disabled for the rest of the
turn if WML events removed or changed units during the AI turn
* Improved error reporting of invalid AI actions
* Campaigns:
* Eastern Invasion:
* Updated maps for scenarios 12, 14, 16 and 17a.
* Fixed a bug in 'Captured' which can cause the beginning to make no
sense.
* Under the Burning Suns:
* Fixed broken Divine Incarnation unit type in The Final Confrontation.
* Language and i18n:
* Updated translations: German, Italian, Slovak
* WML engine:
* Bug #21643: Removing fog from a single hex no longer makes the hex ugly.
* WML files whose names contain whitespace trigger preprocessor errors.
* Bug #21722: Event handlers with multiple names never fired.
* User interface:
* Corrected most of the issues left with the new default theme.
* Reintroduced the alignment, race and side being shown in the sidebar.
* Adjusted the theme to the size and shape of the new minimap frame images.
* Certain changes to the used text colors, sizes and alignment.
* Non-team labels no longer remove team labels that were present in the
same hex.
* New colors for the Light Red and Dark Red minimap markers.
* Bug #21724: 'none' is now a special case for [unit_type] ellipse
* Miscellaneous and bug fixes:
* Units can no longer be moved in linger mode (bug #21450).
* Changed: Updated valgrind suppression file.
* Fixed color issues with font_rgb in unit status labels in themes.
* Labels are now removed when shroud/fog is removed, rather than waiting
for a new turn (bug #21434).
* Percent signs show when describing traits that increase damage or attacks
by a percentage (bug #21577).
* Linux dbus notifications: Only last 5 messages are remembered, and they
are displayed with the most recent ones first.
* Fixed bug #21736: MP create screen always defaulting to top entry.
Version 1.11.10:
* Add-ons client:
* Fixed faulty add-on _info.cfg files causing the game to display obscure
error messages or crash to desktop.
* Generated _info.cfg files now contain the list of dependencies for an
add-on as well (needed by wesnoth_addon_manager).
* Python wesnoth_addon_manager client:
* The dependencies= attribute and the [feedback] tag in .pbl files are
now properly supported (bug #21189).
* Generated _info.cfg files now contain the same information as the
game's built-in client (type and title were missing).
* AI:
* Hang Out Micro AI: default AI [avoid] aspect is now taken into account
* Fixed problems with several Micro AIs that sometimes produced OOS errors
* Campaigns:
* Eastern Invasion:
* New world map.
* Rewrote scenario 'Training the Ogres' and renamed it to
'Capturing the Ogres'.
* Rewrote scenario 'Captured'.
* Heir to the Throne:
* Fixed Delfador clobbering whichever unit happens to be standing on
31,11 at the end of The Bay of Pearls, causing it to disappear
forever.
* S15 (The Lost General): fix bug of sighted events firing too early
* Legend of Wesmere:
* Fixed missing journey map background in story screens.
* Liberty:
* Updated sprites for Shadow Mage line.
* Son of the Black Eye:
* Rebalancing of the campaign is now complete
* Under the Burning Suns:
* Updated animation WML of all campaign specific units
* Editor:
* Fixed: Drawing the offmap area for small resolutions.
* GUI2:
* Added: FAI-function handling in GUI2 widgets.
* Added: A new tooltip window.
* Language and i18n:
* Updated translations: Scottish Gaelic
* Lua API:
* Config of current era is now available in a Lua table in MP games
* Config of any era can be requested by id, also a list valid era ids
* Multiplayer:
* Fix for bug #21405, in a series of features:
* The abort option presented to the host when a player disconnects
from a networked game is now a "save and abort" option.
* New Idle controller status: Sides may now be set in an "idle" state
by the host when a player disconnects from a network game. This does
not give any player control or vision. To proceed with the game, the
host must reassign the side's controller using :control, :droid, or
:give_control as usual. (give_control existed but was not documented)
Related to this, there are new commands :controller which query the
controller status, and :idle which toggles the idle status.
* New "Blindfold Replays" option: Observers may check a box in the
lobby so that if they join a game, they will be "blindfolded" and see
only a black screen until they are given control of a side.
* Units:
* New baseframes for Jundi, Muharib, Batal, Qatif-al-nar, Qudafi, Rasikh.
* User interface:
* New UI for displaying errors detected during the core and add-on WML
loading process (parser and preprocessor errors), including the
ability to copy the report to clipboard.
* New UI for displaying the notification that a screenshot or map
screenshot was successfully saved to disk, including options to open it
in an external application, copy the path to clipboard, or browse the
screenshots folder.
* Force grayscale antialiasing for text rendered using Cairo/Pango (e.g. by
GUI2) on Windows to work around ClearType-induced glitches (bug #21648).
* Fixed bug #21584: Properly redraw the minimap when the minimap is
resized.
* Fixed: Enable blurring in the title screen.
* Added descriptions to the options in Preferences -> Display -> Themes.
* New sound played to signal the start of an MP game.
* WML engine:
* WML loading phase errors are reported to stderr in a new indented format.
* Implemented [true] and [false] ConditionalWML tags, which describe a
condition that always yields true or false, respectively.
* Fixed: Disallow change and remove sections without an id in the ThemeWML.
* Added [theme] description attribute for including a description of the
theme that will be displayed in Preferences.
* [theme] name attribute is now expected to be translatable and used only
for the theme selection UI. Existing [theme]s need to be converted to
have a separate 'id' attribute.
* [endlevel] now has two optional subtags [next_scenario_settings],
[next_scenario_append], which can be used to reconfigure next scenario.
* Optimizations made to the game events engine. Slower machines may notice
an improvement during movement (when enter/exit_hex events are triggered).
The optimization is more effective when relatively few events have variables
in their names.
* Miscellaneous and bug fixes:
* Fixed: A compilation warning with DEBUG_WINDOW_LAYOUT_GRAPHS.
* Added -Wold-style-cast to the CMake strict flags.
* Made sure that cmake does not add -NDEBUG for release builds since this
flag breaks building.
* Updated screenshots used inside the ingame help and fixed description of
orbs.
* Fixed bug #21659: lua location_set:empty now works as described
* Users now get a warning if they start a multiplayer scenario through the
title screen load button, as this may cause eras and modifications not
to work correctly in subsequent scenarios of an mp campaign.
* wmllint can now update base terrain aliases in UMC after the changes in
versions 1.11.8 and 1.11.9. This conversion is applied to the aliasof,
mvt_alias, and def_alias attributes under the [terrain_type] tag.