- Unit formulas are replaced by inline MicroAIs or candidate actions placed in the unit's [ai] tag.
- The stationed_guardian MicroAI was chosen as the closest match to the guardian FormulaAI. It's not a perfect fit, but it's pretty close.
- The goto and patrol MicroAIs are fairly obvious substitutes for the respective unit formulas.
- The priority test in unit formulas is replaced by fairly basic inline non-external CAs with differing scores.
- The side formulas (opening.fai) have been converted to a separate Lua stage using a new opening.lua. However, that's only a partial conversion. The move and attack functionalities of opening.fai are missing from opening.lua; instead the built-in move, move leader to keep, and combat CAs are used.
- The scouting FormulaAI CA has been ported to Lua. It remains a very basic AI, probably not well-suited to genera use.
- The level up attack FormulaAI CA has been ported to Lua. Like the new scouting CA, this is mostly intended to serve as an example.
By default, the functions now use the value taken directly from the map or array.
In addition, if a string or other non-functional value is passed, it's used as a key on the value.
Although there is little reason to do this in practice, there is merit in supporting all the same syntax in both places.
For example, if AI setup is defined as a macro, it could contain [modify_ai] tags.
This change means that placing that macro in [modify_side][ai] has the same effect as placing it in [side][ai].
Fixes the currently suspected root cause of #5108, but requires further testing
to confirm that it fixes that issue.
Closes#6501 (the question of how to test the mapgen filter).
(cherry picked from commit 30f50bac681fda1566f5cee5aad7be6b65cb0fdb)
This reverts commit 20551f4dfc3c4a8687cb32e793426d84d46f145b.
It turns out that this breaks simple_wml, so even though it's an improvement for
offline serialization, it can't be done at this time.
Should help to address the issue with gendered verb forms or noun cases in some languages as described in #4436 . This reuses the same preexisting mechanism as in the latter part of httt_utils.cfg.
This foreshadows that the player will need to attack the north-west after
defeating the north-east enemy, which is a bit fairer to anyone playing this
scenario for the first time.
Removes a now-unused string (Darius' pre-sacrifice speech). There are no new
strings here, the others are just being moved around.
For clearing shroud, change to using radius= because clearing a circle looks
better than clearing a square.
There's no significance to whether the new plan is "Plan B" or "Plan C" - back
in Wesnoth 1.10 it seems to have been dependent on whether all the merfolk had
been rescued.
Fixes issue #5540 about Hekuba spawning on a water hex.
(cherry picked from commit 25163c06a258b2a9f4627a1345a83f52447165dd)
Until a proper solution is found for #5228 , this will have to do. It suppresses the appearance of the era in the era selection list for other scenarios.
Hmm, I guess the [campaign] tag should support the allow_era= key in future but for the moment, this will do.