Commit graph

277 commits

Author SHA1 Message Date
newfrenchy83
3910817cf7
add a 'replacement_type' and 'alternative_type' attribute in [damage] special or ability who modify the type of attack used (#7865)
At the suggestion of @stevecotton, I propose a special 'replacement_type' and 'alternative_type' attribute capable of modifying the type of attack used when the conditions are met.

Also make Holy water combine arcane damage with native type of weapon

Like holy water imbued ordinary weapon, it's seem logic what arcane damage dominant what if more efficient what original type(water can't altered pierce or blading of spear or sword)
2023-10-25 08:10:52 -05:00
Wedge009
45e537505f Use 'curly' quotes as per typography standard.
[ci skip]
2023-10-23 09:44:50 +02:00
Wedge009
2b0fa293b9 DW: Complete the move of Citizen to core. Resolves #7474. 2023-03-23 10:19:33 +11:00
Celtic Minstrel
cc40d5c55b
Move the Merman Citizen and Brawler units to core (#7323) 2023-01-26 22:45:29 -05:00
Pentarctagon
99bb65d1b3 whitespace fix. 2023-01-21 14:37:48 -06:00
Pentarctagon
fa084677c5 Add textdomain to achievements files. 2023-01-21 10:51:25 -06:00
Pentarctagon
d1465a9eb9
Add basic achievements functionality. (#7237)
* Add basic achievements functionality.

This reads the mainline achievements.cfg and then all the achievements of each installed add-on.

This is intentionally handled separately from other WML loading so that:
a) All achievements and their status are able to be displayed on the main menu right after Wesnoth starts and regardless of which add-ons are active.
b) Add-ons can add additional achievements to other content, whether UMC or mainline. For example, a modification that adds more achievements for mainline campaigns.

Marking something as achieved is handled by the new [set_achieved] tag and whether an achievement has been completed can be checked via [has_achievement].

There is no attempt to prevent people from manually editing which achievements they've accomplished.

NOTE: These are *not* in any way related to Steam achievements!
2023-01-21 10:32:45 -06:00
doofus-01
555d5a930b
1.17 - a couple more monsters (#7152)
* Dragonfly

* Grand Dragonfly

* Dragonfly naiad

* move Kraken out of WoF and DW and put in core

* Update kraken sprite and animations
2022-12-04 12:00:48 -08:00
Tahsin Jahin Khalid
06297cfdc6
Make Nightblade the default advancement for Slayer
Make Nightblade the default advancement for Slayer
2022-11-17 12:03:26 +08:00
Jonathan-Kelly
1ba0a11a18 Make Nightblade the default advancement for Slayer 2022-11-14 17:22:25 -05:00
Wedge009
bdc236e0a0 Disable saving of replays for story-only scenarios.
Resolves #6180.
Resolves #7123.
2022-11-14 19:54:05 +11:00
Tommy
d0557e505a DW:10: Update effect when Caladon dies to use screen_fade
The basic fade algorithm is the same, but it flows more smoothly.
2022-08-07 23:11:21 +12:00
Pentarctagon
9bfd432abe Update image pages for webp extension. 2022-04-30 14:23:32 -05:00
Pentarctagon
51b58ad218 Rename converted images to webp. 2022-04-30 14:23:32 -05:00
Pentarctagon
e5d6d806bf Convert image contents to webp. 2022-04-30 14:23:32 -05:00
Elvish_Hunter
c23cdd5fb1 maps/background.jpg -> maps/background.webp 2022-03-16 22:34:06 +01:00
Alexander Lacson
c3a852cef8
Dead Water Proofread Pass (#6139)
DW: proofread text
2021-10-07 15:17:35 -04:00
Wedge009
7f6c7c0283 Make 100% gold carry-over explicit in objectives (resolves #6131) 2021-09-30 11:25:17 +10:00
Wedge009
9cd5503338
Revise capitalisation (#6067)
* Revise capitalisation as per https://wiki.wesnoth.org/ProseStyle

Capitalisation of race names was inconsistent in parts, even within the same scenario in some cases.
As per https://wiki.wesnoth.org/ProseStyle, race names are generally lower-case unless part of unit or place names, or a specific group (such as 'Quenoth Elves'):
* Elf/Elves/Elvish/Elven
* Drakes
* Dwarf/Dwarves/Dwarvish/Dwarven
* Goblins
* Gryphons
* Humans
* Mer/Merfolk
* Nagas
* Ogres
* Orcs
* Saurians
* Trolls
* Woses

I substitute 'human' for 'men' on occasion, not for PC-ness, but to make it clear it's a reference to the race, not males (non-humans sometimes say 'men' when speaking to fellow male soldiers, for example).

Capitalisation of titles is a little less straightforward. Clearly cases such as King Haldric, Queen Asheviere, Prince of Wesnoth, Great Chief, etc, are capitalised.
However, use of a title alone can be valid with or without capital, eg 'the king/King'. I try to be consistent and consider the context:
* Title is used in place of the name, eg compare 'by the King's order' with 'by Garard's order'
* Would the speaker show respect to the person concerned as their leader, or a foreign dignitary? Contrast, 'Asheviere, that vile queen'.
* Compare 'my king' with 'my father' (latter is not usually capitalised in everyday English)
* Occasionally, when the speaker may not otherwise know a character's name or the correct protocol to address, may say something like 'Sir Elf'.

I apologise if I run counter to previous revisions - removal of 'princess' as a direct address in Northern Rebirth, for example, also dealt with the capitalisation issue, if I recall correctly.

Miscellaneous changes:
* Magi, as plural of mage, is not usually capitalised.
* Council may be capitalised when referring to a specific instance, such as the Elvish High Council in the Ka'lian, but not in instances such as 'making council'.

The review focused solely on campaign prose - there may be cases in other data files where capitalisation needs revising too.

* Capitalise proper noun use of 'kingdom'.

Just as England may be referred to as such on its own, it was also known as the Kingdom of England.
In the same way, Wesnoth is usually referred to simply as Wesnoth, but it would be formally called the Kingdom of Wesnoth.

* Capitalise 'majesty' when used as an address.

For consistency with existing instances of 'Your Majesty'.

* Capitalise 'Land of the Dead'.

While we might not normally refer to such as a place as a proper noun, Delfador's Memoirs seems to establish this as a specific location in Wesnoth lore.
For consistency, also capitalise a few references to this place in Northern Rebirth and Son of the Black-Eye.

(Granted, this does make Iliah-Malal's line in DM S18 seem a bit awkward, contrasting with 'land of the living', but the precedent has been set throughout the rest of the campaign.)

* Capitalise instances of the Book of Crelanu.

I leave book as lower-case when it's not yet famously known as the Book of Crelanu, such as in Legend of Wesmere, as well as in DM S15, where it is simply described as a book belonging to the old mage Crelanu.

* Harbour of Tirigaz does not appear to be a formal (capitalised) name.

In S12, Tirigaz is only described as a 'harbour'. Other instances of Tirigaz describes it as (lower-case) a port city.

[ci skip]
2021-09-22 18:15:01 +10:00
Celtic Minstrel
0c42cdc038
Enable translation mark validation by the schema (#5800)
- The t_string type is now a schema built-in type and no longer attempts a regex match.
- You can also specify that non-t_string types may be optionally-translatable; this case supports a regex match on the string (but note that the translation mark is not part of the match).
- Error messages involving keys with very large values ( > 128 characters) will now truncate the value.
- To account for occasional cases where the schema is intentionally violated, the --validate command-line option now automatically defines the SCHEMA_VALIDATION preprocessor define.

A key validates as type t_string if one of the following is true:
- The key is not present
- The key has at least one segment with a translation mark
- The key is blank (an empty string)

Any type other than t_string is not allowed to be translatable by default, unless you specify allow_translatable=yes in the [type] tag.

An optionally-translatable string could also be defined as a union of t_string and some other type.
2021-06-14 23:59:52 -04:00
Celtic Minstrel
3568b5ff66 An easier way of setting special notes in the most common use-case (abilities and weapon specials)
Rebased version of e6c58fc35c, with merge conflicts resolved.
2021-06-01 14:29:57 +02:00
nemaara
afc81cdee8 Fix campaign difficult ratings 2021-03-13 22:46:50 -05:00
Andrey Bienkowski
5d344526b0
Fix several typos in wml (#5525)
* Fix month typo and add months to dictionary

* typo s/cuttle fish/cuttlefish/

The phrase "cuttle fish" is not in wiktionary.org. The unit id used in WML is left as-is ("Cuttle Fish").

* typo s/carvans/caravans/

* add spelling ol’; fix typo s/ol/ol’/

* fix typo s/alloting/allotting/

* Typo? s/movepoints/movement points/

* Typo s/critized/criticized/

* Typo: s/un-life/unlife/

* DW: typo: s/veterens/veterans/

* SoF: typo: s/fulfil/fulfill/

* SoF typo: s/Thursagen/Thursagan/

* SotA typo: s/permanantly/permanently/

* SotA: possible typo s/Rastaban/Ras-Tabahn/

* THoT: typo s/Aiglondor/Aiglondur/

* Use a typographic-style quotation mark

* Undo month name change

* Change spelling un-life -> unlife
2021-02-10 10:23:12 +01:00
Charles Dang
e2e50645cd DW: ditch the ENABLE_KRAKEN macro 2021-01-16 23:27:36 +11:00
Charles Dang
f69aa281c1 Revert "Avoid [+campaign] use"
This reverts commit f29ff05180. Since ENABLE_KRAKEN is defined in one of
the DW unit files, this causes the preprocessor to fail on game start.
2021-01-16 22:54:52 +11:00
Gunter Labes
f29ff05180
Avoid [+campaign] use 2021-01-15 20:45:00 +01:00
Andrey Bienkowski
17a9cb720a Silence wmllint error about a missing campaign id
The following wmllint error was caused by the fact that the campaign definition is split into two and wmllint is not smart enough to understand that.

"../../data/campaigns/Dead_Water/_main.cfg", line 76: campaign requires an ID attribute but has none
2021-01-14 22:28:15 +03:00
nemaara
9917854fa3 DW: rebalancing pass 2021-01-14 04:58:34 -05:00
nemaara
5b84e142e3 DW S8: no bah 2021-01-14 04:23:15 -05:00
kabachuha
2d6a9fd4e6 DW: fix missing translation marks 2020-12-25 15:27:00 +03:00
Eric Gallager
35c20c1541
DW: reduce difficulty
from https://github.com/cooljeanius/wesnoth_mods
2020-12-15 02:44:01 -05:00
gfgtdf
b21c110f30 run wmlindent 2020-10-19 23:53:52 +02:00
Pentarctagon
5af1f129cd Mass convert of *^Uf terrain for SP. 2020-09-15 09:26:00 -05:00
gfgtdf
6fb3573978 fix modify_unit_type macros 2020-07-03 14:28:13 +02:00
Nils Kneuper
fd5368e7d7 updated Russian translation (add image translations) 2020-06-07 23:49:14 +02:00
gfgtdf
3950f40f3f remove [advancefrom] from mainline
See issue #3955
the intention is to deprecate [advancefrom] in
favour of [modify_unit_type], because it was a
common source of OOS errors, and it is less flexible.

As a secondary effect this also fixes issue #4402 :
"changing units via extra_defines sometimes not working
because extra_defines had bugs".
Now we no longer use extra_defines for that.

Addon authors should now no longer use these extra_defines,
instead put the new core marcos with the same name directly
into [campaign].
2020-03-12 19:15:17 +01:00
Charles Dang
fa2b2eea4e Campaigns: double spaces after sentences isn't standard 2020-03-08 22:14:00 +11:00
Charles Dang
daff648482 Campaigns: wmlindent pass
[ci skip]
2020-03-08 22:01:26 +11:00
Lukas Jox
e35aa82236 fix discrepancy between text and bigmap 2020-02-14 03:14:33 +01:00
Steve Cotton
a5a1fec226 Make map_file= search for a maps directory in the [binary_path] (#4633)
For both [scenario]map_file= and [replace_map]map_file=, this allows both of
these to have the same effect:

* map_file=campaigns/Heir_To_The_Throne/maps/01_The_Elves_Besieged.map
* map_file=01_The_Elves_Besieged.map

This allows a lot of copies of the campaign/add-on's name to be omitted. Thus
it's no longer necessary to change every scenario's .cfg file to rename an
add-on, or to move a campaign between UMC and mainline.

This makes [binary_path] a misnomer, as it now also handles a text-based type
of file, however that's going to be the correct path for campaigns or add-ons
that use the standard layout with images/, maps/, scenarios/, etc.

This commit has the change itself, in filesystem_common.cpp, and the updates
for most of the campaigns. DM, LoW, UtBS and WoV are omitted from this, as they
all use a macro to do the same effect:

 #define MEMOIRS_MAP NAME
-    map_file=campaigns/Delfadors_Memoirs/maps/{NAME}
+    map_file={NAME}
 #enddef
2019-12-26 19:01:28 +01:00
Celtic Minstrel
0ee05637d9 Lua: Replace uses of deprecated (moved) interface functions 2019-11-16 12:35:20 -05:00
Steve Cotton
2c15290575 Easy wmllint fixes for unrecognised characters (part of #4494)
There's one bugfix in this, an "id=Dela" that needed to include her surname.
2019-11-02 17:47:47 +01:00
nemaara
7c76f8d066 Revert "Revert "Merge pull request #4476 from newfrenchy83/newfrenchy83_replace_deprecated_special""
This reverts commit d3f968aad5.
2019-10-21 03:23:27 -04:00
nemaara
d3f968aad5 Revert "Merge pull request #4476 from newfrenchy83/newfrenchy83_replace_deprecated_special"
This reverts commit 5800acd8ea, reversing
changes made to 0e85ea8619.
2019-10-21 03:12:07 -04:00
newfrenchy83
d9481207d5
replace deprecated special= in master 2019-10-16 17:55:20 +02:00
Severin Glöckner
6da85e9042 switch from map_data to map_file in SP 2019-10-02 02:54:25 +02:00
Nils Kneuper
3bf54fd9b7 updated Chinese (Simplified) translation 2019-10-01 14:00:58 +02:00
Severin Glöckner
c23364b213 indent special notes
[ci skip]
2019-09-16 04:01:07 +02:00
Celtic Minstrel
73afb645f2 DW: Update special notes syntax 2019-09-12 21:12:53 -04:00
gfgtdf
8610cc0a15 use [modify_unit] over store+unstore 2019-08-25 22:29:49 +02:00