Skip to content

Commit

Permalink
SotA S01: Better implementation of fences blocking the wild animals
Browse files Browse the repository at this point in the history
  • Loading branch information
beetlenaut authored and sigurdfdragon committed Jan 15, 2019
1 parent abdf530 commit 02d7ef3
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 37 deletions.
14 changes: 7 additions & 7 deletions data/campaigns/Secrets_of_the_Ancients/maps/01_Slipping_Away.map
Expand Up @@ -3,9 +3,9 @@ Wo, Wo, Wo, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ds, Ds, Gs^Vht, Gs, Gs, Gs, Gs, Gs, Gs,
Wo, Wo, Wo, Ww, Wo, Ww, Ww, Ww, Ww, Ww, Ds, Ds, Ds, Gg, Gs, Gs, Gs, Gs, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gll, Gs^Fds, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Hh, Hh, Hh^Fp, Mm, Mm, Hh^Vhh, Rrc, Rrc^Vh, Mm, Mm, Mm
Wo, Wo, Wo, Wo, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ds, Ww, Gg, Gg, Gs, Gs, Gs, Gs^Fds, Gll, Gll^Fp, Gs^Fds, Gs^Fds, Gs^Fds, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Hh, Mm, Mm, Hh^Fms, Mm, Hh, Hh^Vhh, Mm, Mm, Hh^Fp, Mm
Wo, Wo, Wo, Wo, Wo, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ds, Ds, Gg, Gs, Gs^Fms, Gs^Fms, Gs, Gs, Gs, Gs^Fms, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Hh, Hh, Hh, Mm, Hh, Hh^Fp, Hh, Hh, Mm, Mm, Mm, Mm
Wo, Wo, Wo, Wo, Wo, Wo, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ds^Esd, Ds, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs^Eff, Gs^Eff, Gs^Eff, Gs, Hh, Hh, Hh, Hh, Hh, Hh, Gs, Hh, Mm, Mm, Mm, Mm
Wo, Wo, Wo, Wo, Wo, Wo, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ds, Ds, Gs, Gs, Gs, Gs, Gs, Gs^Fds, Gs^Fds, Gs^Fds, Gs, Gs^Eff, Gs^Eff, Rb^Gvs, Gs^Vl, Gs^Eff, Hh^Eff, Hh, Hh, Hh, Hh, Gs, Gs, Gs, Hh, Hh, Mm, Hh^Fp, Hh^Fms
Wo, Wo, Wo, Wo, Wo, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ds, Ds, Gs, Gs, Gs, Gs, Gs, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Eff, Gs^Eff, Gs^Eff, Gs, Gs^Es, Hh, Hh, Hh, Hh, Gs, Gs, Gs, Gs, Hh, Hh, Hh, Hh^Fms
Wo, Wo, Wo, Wo, Wo, Wo, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ds^Esd, Ds, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs^Fync, Gs^Fync, Gs^Fync, Gs, Hh, Hh, Hh, Hh, Hh, Hh, Gs, Hh, Mm, Mm, Mm, Mm
Wo, Wo, Wo, Wo, Wo, Wo, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ds, Ds, Gs, Gs, Gs, Gs, Gs, Gs^Fds, Gs^Fds, Gs^Fds, Gs, Gs^Fync, Gs^Fync, Rb^Gvs, Gs^Vl, Gs^Fync, Hh^Fync, Hh, Hh, Hh, Hh, Gs, Gs, Gs, Hh, Hh, Mm, Hh^Fp, Hh^Fms
Wo, Wo, Wo, Wo, Wo, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ds, Ds, Gs, Gs, Gs, Gs, Gs, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fync, Gs^Fync, Gs^Fync, Gs, Gs^Es, Hh, Hh, Hh, Hh, Gs, Gs, Gs, Gs, Hh, Hh, Hh, Hh^Fms
Ww, Wo, Ww, Wo, Wo, Wo, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ds, Ds, Gs, Gs, Gs, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs, Gs, Gs, Gs^Fds, Gs, Gs, Hh, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Hh, Hh, Hh, Hh^Fms
Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ds, Ds^Esd, Gs, Gs, Gs, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Hh^Fms, Gs^Fds, Gs, Gs^Fds, Gs^Fds, Gs, Gs, Gs, Gs^Fds, Gs, Gs^Fds, Gs, Gs^Fds, Gs, Gs, Gs, Gs^Es, Hh, Gs^Es, Gs
Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ds, Ds, Gs, Gs, Gs, Gs, Gs^Fds, Gs^Fms, Gs^Fds, Gs^Fds, Gll, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs, Gs, Gs^Fds, Gs^Fds, Gs^Fds, Hh^Fms, Gs^Fds, Gs^Fds, Gs^Fds, Gs, Gs, Gs^Es, Gs^Es, Gs, Gs
Expand All @@ -19,9 +19,9 @@ Gs, Gs, Ds, Ds, Ds, Ds, Ds, Ds, Gs^Fms, Gll^Fp, Rb^Gvs, Gs^Vl, Gs^Fds, Gs^Fds, G
Gd, Gd, Gd, Ds^Esd, Ds, Ds, Gs, Gs, Gs^Fds, Rb^Gvs, Rb^Gvs, Rb^Gvs, Gll, Gs^Fds, Gs, Gs^Fds, Gs^Fds, Gs^Fds, Re, Gg, Gs^Fds, Gs^Fds, Gg^Fet, Rp, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Ss, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fms, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds
Gd, Gd, Gd, Gd, Gd, Gd, Gs, Gs, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gll, Gs, Gs^Fds, Gs^Fds, Re, Re, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fms, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gg, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Vl, Gs^Fds, Gs^Fds, Gs^Fds
Gs, Gd, Gd, Gd, Gd, Gd, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gll, Gs^Fds, Gs^Fds, Gs^Vl, Re, Re, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Hh^Fms, Hh^Fms, Gs^Fds, Gg, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fms, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Rb^Gvs, Rb^Gvs, Rb^Gvs, Gs^Fds, Gs^Fds
Ch, Ch, Ch, Gd, Gd, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gll, Gs, Gll, Gs^Fds, Gs^Fds, Gll, Rb^Gvs, Gs^Fds, Gg^Fet, Gs^Fms, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Eff, Gs^Eff, Gs^Eff, Hh^Fms, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Ss^Vhs, Gll^Fp, Ww^Ewl, Gs^Fds, Gs^Fds, Gs^Fds, Rb^Gvs, Gs^Fds, Rb^Gvs, Gs^Fds, Gs^Fds
_s^Xo, _s^Xo, _s^Xo, Ch, Gs, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fms, Gs, Gll, Gs^Fms, Gs^Fds, Gs^Fds, Gll^Fp, Rb^Eff, Rb^Eff, Rb^Gvs, Gs^Vl, Rb^Gvs, Rb^Eff, Rb^Eff, Gs^Fds, Gs, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Ss, Gll^Fp, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fms, Gs^Fds, Gs^Fds
_s^Xo, _s^Xo, _s^Xo, Ch, Gs, Gs, Gs, Gs, Gs^Fds, Gs^Fms, Gs^Fds, Gs^Fds, Gll, Gll, Gs^Fds, Gs^Fms, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Rb^Eff, Rb^Eff, Rb^Gvs, Rb^Eff, Rb^Eff, Gs, Gs, Re, Gs, Re, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fms, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fms, Gs^Fds, Gs^Fds
_s^Xo, _s^Xo, _s^Xo, Ch, Gs, 1 Gs, Gs, Gs^Fds, Gll, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs, Gs^Fds, Gs, Gs^Fds, Gs^Fds, Gs^Fds, Gs, Rb^Eff, Gs, Gs, Ds, Ds, Ds, Re, Ww^Ewl, Re, Re, Gs^Fds, Gs^Fds, Gs^Fms, Gs^Fds, Gll, Gs^Fds, Gg^Fet, Gs^Fds, Gg^Fet, Gs^Fds, Gs^Fds
Ch, Ch, Ch, Gd, Gd, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gll, Gs, Gll, Gs^Fds, Gs^Fds, Gll, Rb^Gvs, Gs^Fds, Gg^Fet, Gs^Fms, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fync, Gs^Fync, Gs^Fync, Hh^Fms, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Ss^Vhs, Gll^Fp, Ww^Ewl, Gs^Fds, Gs^Fds, Gs^Fds, Rb^Gvs, Gs^Fds, Rb^Gvs, Gs^Fds, Gs^Fds
_s^Xo, _s^Xo, _s^Xo, Ch, Gs, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fms, Gs, Gll, Gs^Fms, Gs^Fds, Gs^Fds, Gll^Fp, Rb^Fync, Rb^Fync, Rb^Gvs, Gs^Vl, Rb^Gvs, Rb^Fync, Rb^Fync, Gs^Fds, Gs, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Ss, Gll^Fp, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fms, Gs^Fds, Gs^Fds
_s^Xo, _s^Xo, _s^Xo, Ch, Gs, Gs, Gs, Gs, Gs^Fds, Gs^Fms, Gs^Fds, Gs^Fds, Gll, Gll, Gs^Fds, Gs^Fms, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Rb^Fync, Rb^Fync, Rb^Gvs, Rb^Fync, Rb^Fync, Gs, Gs, Re, Gs, Re, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fms, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fms, Gs^Fds, Gs^Fds
_s^Xo, _s^Xo, _s^Xo, Ch, Gs, 1 Gs, Gs, Gs^Fds, Gll, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs, Gs^Fds, Gs, Gs^Fds, Gs^Fds, Gs^Fds, Gs, Rb^Fync, Gs, Gs, Ds, Ds, Ds, Re, Ww^Ewl, Re, Re, Gs^Fds, Gs^Fds, Gs^Fms, Gs^Fds, Gll, Gs^Fds, Gg^Fet, Gs^Fds, Gg^Fet, Gs^Fds, Gs^Fds
_s^Xo, _s^Xo, _s^Xo, Ch, Gs, Gs, Gs, Gs^Fds, Gs^Fds, Gs^Fds, Gs, Gs, Gs, Gs^Fds, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Ww, Wwt, Ww, Ww, Ww, Ww^Ewl, Gg^Gvs, Gs^Gvs, Gs^Fds, Gs^Fms, Gs^Fds, Gs^Fms, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds
_s^Xo, _s^Xo, _s^Xo, Ch, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Gs, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Ww, Gs^Vh, Gs^Gvs, Gs^Gvs, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds, Gs^Fds
Expand Up @@ -12,12 +12,11 @@
# -------------

# The placement of enemies in this scenario is carefully adjusted rather than totally
# random. That's why there are so many macro calls. Also, the enemies can't attack inside
# a fence, and we don't want them to move through the fences on their turn. To get this
# effect, we use a custom terrain overlay ^Fync. It *looks* just like normal fences, but
# it is an alias of Unwalkable. On the AI's turn, we swap it in for all the fences. Then,
# on the players turn, we turn the fences back to normal so that Ardonna can go through
# them.
# random. That's why there are so many macro calls. Wild animals can't pass through
# fences. To block them, we use a custom terrain overlay (code: ^Fync). It is a copy of
# the core fence, except that it is an alias of unwalkable. Bats are unaffected because
# they are flying, and Ardonna gets an object that lets her go through unwalkable terrain
# until the end of this scenario.

[scenario]
name= _ "Slipping Away"
Expand Down Expand Up @@ -183,6 +182,9 @@ With further observation, I have determined that this is probably not the way to
[note]
description= _ "This scenario takes place entirely at night."
[/note]
[note]
description= _ "Ardonna can climb over a fence for 2 movement points, but wild animals cannot."
[/note]
[/objectives]

[label]
Expand All @@ -203,6 +205,29 @@ With further observation, I have determined that this is probably not the way to
side=1
[/unit]

# Fences are unwalkable, but not for Ardonna.
[object]
silent=yes
duration=scenario
[filter]
id=Ardonna
[/filter]
[effect]
apply_to=movement_costs
replace=yes
[movement_costs]
unwalkable=2
[/movement_costs]
[/effect]
[effect]
apply_to=defense
replace=yes
[defense]
unwalkable=50
[/defense]
[/effect]
[/object]

{PLACE_WOLF 39 4 QUICK RESILIENT ai_special=guardian}
{PLACE_WOLF 35 2 RESILIENT INTELLIGENT ai_special=guardian}
{PLACE_WOLF 17 16 QUICK INTELLIGENT ()}
Expand All @@ -224,30 +249,6 @@ With further observation, I have determined that this is probably not the way to
[/event]

# *************************** PLAY ***************************
[event]
name=side 2 turn
first_time_only=no
[terrain]
[and]
terrain=*^Eff
[/and]
terrain=^Fync
layer=overlay
[/terrain]
[/event]

[event]
name=side 1 turn
first_time_only=no
[terrain]
[and]
terrain=*^Fync
[/and]
terrain=^Eff
layer=overlay
[/terrain]
[/event]

[event]
name=turn 6
{PLACE_RAT 25 1}
Expand Down

0 comments on commit 02d7ef3

Please sign in to comment.