DiD S7: updated gameplay

This commit is contained in:
nemaara 2019-01-13 02:34:09 -05:00
parent 89246c0081
commit 03b1b53eaf

View file

@ -4,47 +4,79 @@
id=07_A_Small_Favor
name= _ "A Small Favor"
map_data="{campaigns/Descent_Into_Darkness/maps/07_A_Small_Favor.map}"
{TURNS 28 26 22}
{TURNS 20 18 16}
next_scenario=08_A_Small_Favor2
victory_when_enemies_defeated=no
#ifdef EASY
{FIRST_WATCH_HOUR2}
{FIRST_WATCH_HOUR3}
#endif
#ifndef HARD
{FIRST_WATCH_HOUR2}
{FIRST_WATCH_HOUR3}
{FIRST_WATCH_HOUR3}
{FIRST_WATCH_HOUR4}
{FIRST_WATCH_HOUR4}
#endif
{FIRST_WATCH_HOUR4}
{MIDNIGHT_HOUR}
{MIDNIGHT_HOUR}
{MIDNIGHT_HOUR}
{SECOND_WATCH_HOUR1}
{SECOND_WATCH_HOUR1}
{SECOND_WATCH_HOUR1}
{SECOND_WATCH_HOUR2}
{SECOND_WATCH_HOUR2}
{SECOND_WATCH_HOUR2}
{SECOND_WATCH_HOUR3}
{SECOND_WATCH_HOUR3}
{SECOND_WATCH_HOUR3}
{SECOND_WATCH_HOUR4}
{SECOND_WATCH_HOUR4}
{SECOND_WATCH_HOUR4}
{SECOND_WATCH_HOUR5}
{SECOND_WATCH_HOUR5}
{SECOND_WATCH_HOUR5}
{SECOND_WATCH_HOUR6}
{SECOND_WATCH_HOUR6}
{SECOND_WATCH_HOUR6}
{DAWN_HOUR}
#endif
#ifdef NORMAL
{FIRST_WATCH_HOUR2}
{FIRST_WATCH_HOUR3}
{FIRST_WATCH_HOUR3}
{FIRST_WATCH_HOUR4}
{FIRST_WATCH_HOUR4}
{MIDNIGHT_HOUR}
{MIDNIGHT_HOUR}
{SECOND_WATCH_HOUR1}
{SECOND_WATCH_HOUR1}
{SECOND_WATCH_HOUR2}
{SECOND_WATCH_HOUR2}
{SECOND_WATCH_HOUR3}
{SECOND_WATCH_HOUR3}
{SECOND_WATCH_HOUR4}
{SECOND_WATCH_HOUR4}
{SECOND_WATCH_HOUR5}
{SECOND_WATCH_HOUR5}
{SECOND_WATCH_HOUR6}
{DAWN_HOUR}
#endif
#ifdef HARD
{FIRST_WATCH_HOUR2}
{FIRST_WATCH_HOUR3}
{FIRST_WATCH_HOUR3}
{FIRST_WATCH_HOUR4}
{FIRST_WATCH_HOUR4}
{MIDNIGHT_HOUR}
{MIDNIGHT_HOUR}
{SECOND_WATCH_HOUR1}
{SECOND_WATCH_HOUR1}
{SECOND_WATCH_HOUR2}
{SECOND_WATCH_HOUR3}
{SECOND_WATCH_HOUR3}
{SECOND_WATCH_HOUR4}
{SECOND_WATCH_HOUR4}
{SECOND_WATCH_HOUR5}
{SECOND_WATCH_HOUR6}
{DAWN_HOUR}
#endif
{SCENARIO_MUSIC elvish-theme.ogg}
{EXTRA_SCENARIO_MUSIC wanderer.ogg}
{EXTRA_SCENARIO_MUSIC elf-land.ogg}
{EXTRA_SCENARIO_MUSIC nunc_dimittis.ogg}
{EXTRA_SCENARIO_MUSIC the_deep_path.ogg}
[story]
[part]
@ -85,7 +117,7 @@
side=1
controller=human
recruit=Walking Corpse,Vampire Bat,Ghost,Ghoul,Skeleton Archer,Skeleton,Dark Adept DiD
{GOLD 170 130 110}
{GOLD 160 140 120}
team_name=intruders
user_team_name= _ "Intruders"
{FLAG_VARIANT undead}
@ -116,49 +148,52 @@
type=General
id=Taylor
name= _ "Taylor"
name= _ "General Taylor"
canrecruit=yes
fog=yes
share_vision=none
color=green
facing=se
# Place city guards
{NAMED_LOYAL_UNIT 2 Spearman 11 3 () ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Spearman 17 6 () ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Spearman 23 9 () ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Spearman 25 14 () ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Spearman 13 23 () ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Spearman 7 23 () ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Spearman 4 18 () ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Spearman 2 14 () ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Spearman 16 28 () ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Pikeman 20 22 () ( _ "Gate Guard")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Pikeman 24 20 () ( _ "Gate Guard")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Bowman 2 17 (Guard1) ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Spearman 4 17 (Guard2) ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Spearman 4 18 (Guard3) ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 (Heavy Infantryman) 19 22 () ( _ "Gate Guard")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 (Heavy Infantryman) 24 19 () ( _ "Gate Guard")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Spearman 11 3 (Guard4) ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Bowman 11 4 (Guard5) ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Spearman 13 4 (Guard6) ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Pikeman 18 18 () ( _ "Gate Guard")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Swordsman 16 20 () ( _ "Gate Guard")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 (Heavy Infantryman) 20 22 () ( _ "Gate Guard")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 (Heavy Infantryman) 24 20 () ( _ "Gate Guard")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 (Heavy Infantryman) 3 12 () ( _ "City Guard")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 (Shock Trooper) 4 15 () ( _ "City Guard")} {GUARDIAN}
# More guards, depending on the difficulty
#ifdef EASY
{NAMED_LOYAL_UNIT 2 Mage 7 9 () ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Mage 8 7 () ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Sergeant 21 15 () ( _ "Head Trainer")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Mage 7 9 () ( _ "Mage Guard")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Mage 8 7 () ( _ "Mage Guard")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Sergeant 6 11 () ( _ "Head Trainer")} {GUARDIAN}
#endif
#ifdef NORMAL
{NAMED_LOYAL_UNIT 2 (Mage) 7 9 () ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 (Red Mage) 8 7 () ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 (Spearman) 12 7 () ( _ "Townperson")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 (Lieutenant) 21 15 () ( _ "Head Trainer")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 Mage 7 9 () ( _ "Mage Guard")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 (Red Mage) 8 7 () ( _ "Mage Guard")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 (Heavy Infantryman) 12 16 () ( _ "City Guard")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 (Lieutenant) 6 11 () ( _ "Head Trainer")} {GUARDIAN}
#endif
#ifdef HARD
{NAMED_LOYAL_UNIT 2 (Silver Mage) 7 9 () ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 (Red Mage) 8 7 () ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 (Pikeman) 12 7 () ( _ "Night Watchman")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 (Lieutenant) 21 15 () ( _ "Head Trainer")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 (White Mage) 7 9 () ( _ "Mage Guard")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 (Red Mage) 8 7 () ( _ "Mage Guard")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 (Shock Trooper) 12 16 () ( _ "City Guard")} {GUARDIAN}
{NAMED_LOYAL_UNIT 2 (Lieutenant) 6 11 () ( _ "Head Trainer")} {GUARDIAN}
#endif
[ai]
@ -199,33 +234,155 @@
[/ai]
[/side]
{STARTING_VILLAGES 1 3}
{STARTING_VILLAGES 2 15}
# City
{PLACE_IMAGE scenery/well.png 17 11}
{PLACE_IMAGE scenery/well.png 8 12}
{PLACE_IMAGE scenery/tent-shop-weapons.png 17 16}
{PLACE_IMAGE scenery/well.png 16 12}
{PLACE_IMAGE scenery/well.png 19 14}
{PLACE_IMAGE scenery/tent-shop-weapons.png 3 17}
{PLACE_IMAGE scenery/monolith1.png 11 5}
{PLACE_IMAGE scenery/monolith1.png 12 4}
{PLACE_IMAGE scenery/monolith1.png 13 5}
{PLACE_IMAGE scenery/monolith1.png 13 6}
{PLACE_IMAGE scenery/monolith1.png 10 6}
{PLACE_IMAGE scenery/signpost.png 15 16}
{PLACE_IMAGE scenery/signpost.png 11 12}
{PLACE_IMAGE scenery/temple1.png 10 18}
{PLACE_IMAGE scenery/tent-fancy-red.png 9 15}
{PLACE_IMAGE items/dragonstatue.png 12 14}
{PLACE_IMAGE "items/dummy.png~RC(magenta>green)" 18 15}
{PLACE_IMAGE "items/dummy.png~RC(magenta>green)" 19 15}
{PLACE_IMAGE items/armor.png 19 17}
{PLACE_IMAGE items/armor.png 21 17}
{PLACE_IMAGE items/armor.png 22 16}
{PLACE_IMAGE items/flower2.png 9 19}
{PLACE_IMAGE items/flower1.png 10 18}
{PLACE_IMAGE items/flower3.png 12 18}
{PLACE_IMAGE items/flower4.png 13 19}
{PLACE_IMAGE items/altar.png 12 5}
{PLACE_IMAGE "items/dummy.png~RC(magenta>green)" 7 12}
{PLACE_IMAGE "items/dummy.png~RC(magenta>green)" 4 11}
{PLACE_IMAGE items/armor.png 4 12}
{PLACE_IMAGE items/armor.png 4 16}
{PLACE_IMAGE items/armor.png 6 16}
{PLACE_IMAGE items/flower2.png 13 7}
{PLACE_IMAGE items/flower1.png 16 8}
{PLACE_IMAGE items/flower3.png 12 7}
{PLACE_IMAGE items/flower4.png 17 8}
# Manor
{PLACE_IMAGE scenery/trapdoor-closed.png 3 6}
{PLACE_IMAGE items/cloak-green.png 5 7}
{PLACE_IMAGE items/cloak-green.png 2 6}
{PLACE_IMAGE items/ornate1.png 5 5}
{PLACE_IMAGE items/potion-blue.png 4 5}
{PLACE_IMAGE items/potion-red.png 6 5}
{PLACE_IMAGE items/altar.png 3 7}
#define WATCHMAN_PATROL_MOVEMENT
[set_variable]
name=turn_mod
value=$($turn_number % 5)
[/set_variable]
[switch]
variable=turn_mod
[case]
value=1,0
[move_unit]
id=Guard3
side=2
to_x,to_y=5,22
[/move_unit]
[move_unit]
id=Guard2
side=2
to_x,to_y=4,21
[/move_unit]
[move_unit]
id=Guard1
side=2
to_x,to_y=4,20
[/move_unit]
[move_unit]
id=Guard6
side=2
to_x,to_y=18,7
[/move_unit]
[move_unit]
id=Guard5
side=2
to_x,to_y=16,6
[/move_unit]
[move_unit]
id=Guard4
side=2
to_x,to_y=14,5
[/move_unit]
[/case]
[case]
value=2,4
[move_unit]
id=Guard3
side=2
to_x,to_y=10,24
[/move_unit]
[move_unit]
id=Guard2
side=2
to_x,to_y=10,23
[/move_unit]
[move_unit]
id=Guard1
side=2
to_x,to_y=9,24
[/move_unit]
[move_unit]
id=Guard6
side=2
to_x,to_y=22,11
[/move_unit]
[move_unit]
id=Guard5
side=2
to_x,to_y=21,11
[/move_unit]
[move_unit]
id=Guard4
side=2
to_x,to_y=20,9
[/move_unit]
[/case]
[case]
value=3
[move_unit]
id=Guard3
side=2
to_x,to_y=14,22
[/move_unit]
[move_unit]
id=Guard2
side=2
to_x,to_y=13,23
[/move_unit]
[move_unit]
id=Guard1
side=2
to_x,to_y=12,22
[/move_unit]
[move_unit]
id=Guard6
side=2
to_x,to_y=20,16
[/move_unit]
[move_unit]
id=Guard5
side=2
to_x,to_y=21,16
[/move_unit]
[move_unit]
id=Guard4
side=2
to_x,to_y=21,15
[/move_unit]
[/case]
[/switch]
{CLEAR_VARIABLE turn_mod}
#enddef
[event]
name=prestart
@ -236,6 +393,10 @@
condition=win
description= _ "Move Malin and Darken Volk into the Mage Lords manor"
[/objective]
[objective]
condition=win
description= _ "OR: Defeat General Taylor"
[/objective]
[objective]
condition=lose
description= _ "Death of Malin Keshar"
@ -255,6 +416,12 @@
[note]
description= _ "This scenario takes place entirely at night."
[/note]
[note]
description= _ "Enemy units have reduced vision"
[/note]
[note]
description= _ "Night Watchmen have reduced movement"
[/note]
[/objectives]
# Place Darken Volk
@ -269,10 +436,27 @@
[recall]
id=Darken Volk
x,y=40,18
x,y=36,15
[/recall]
{MODIFY_UNIT (side=1) facing sw}
{MODIFY_UNIT (side=1) facing nw}
{MODIFY_UNIT (type=Spearman,Bowman) max_moves 3}
[modify_unit]
[filter]
[and]
side=2
[/and]
[and]
[not]
type=Spearman,Bowman
[/not]
[/and]
[/filter]
vision=3
[/modify_unit]
{VARIABLE guard_alerted 0}
[/event]
[event]
@ -280,7 +464,7 @@
[message]
speaker=Darken Volk
message= _ "The stolen book lies within Lord Karress manor at the north end of the city. We cannot defeat the entire city guard, so we must stay hidden as long as possible. Once we are seen by the night watchmen, we will have to make a run for it."
message= _ "The stolen book lies within Lord Karress manor at the north end of the city. It will be difficulty for us to defeat the entire city guard, so we must stay hidden as long as possible. Once we are spotted, we will have to make a run for it."
[/message]
[message]
@ -290,7 +474,6 @@
[/message]
[/event]
# Sentry attacks an undead
[event]
name=sighted
[filter]
@ -300,7 +483,6 @@
side=2
[/filter_second]
# Sound a warning and give gold to the general
[if]
[variable]
name=second_unit.id
@ -309,26 +491,36 @@
[then]
[message]
speaker=second_unit
message= _ "General Taylor! Undead creatures emerge from the forest!"
[/message]
[message]
speaker=Taylor
message= _ "Wake the guard! To arms, men!"
message= _ "Undead are emerging from the forest!"
[/message]
[/then]
[else]
[message]
speaker=Taylor
message= _ "Undead creatures emerge from the forest! To arms, men!"
[/message]
[/else]
[/if]
[message]
speaker=Taylor
message= _ "Wake the guard! To arms, men!"
[/message]
[modify_side]
side=2
{GOLD 75 150 300}
{GOLD 140 170 200}
{INCOME 12 16 20}
[/modify_side]
{VARIABLE guard_alerted 1}
[/event]
[event]
name=side 2 turn refresh
first_time_only=no
[filter_condition]
[variable]
name=guard_alerted
numerical_equals=0
[/variable]
[/filter_condition]
{MODIFY_UNIT (side=2) moves 0}
{WATCHMAN_PATROL_MOVEMENT}
[/event]
# Undead unit kicks the holy water
@ -349,6 +541,7 @@
x,y=$x1,$y1
[/filter]
amount=1
kill=no
animate=yes
[/harm_unit]
@ -372,6 +565,27 @@
[/message]
[/event]
[event]
name=last breath
[filter]
id=Taylor
[/filter]
[message]
speaker=Taylor
message= _ "The undead are too strong! Retreat and regroup!"
[/message]
[kill]
side=2
[/kill]
[endlevel]
result=victory
bonus=yes
{NEW_GOLD_CARRYOVER 40}
[/endlevel]
[/event]
# Victory Conditions
[event]
name=moveto
@ -395,8 +609,8 @@
[/filter_condition]
[message]
speaker=unit
message= _ "I found the entrance! Hurry!"
speaker=Darken Volk
message= _ "Here is the entrance! Hurry!"
[/message]
[endlevel]
@ -408,11 +622,37 @@
[event]
name=victory
{SET_GOT_INSIDE_MANOR}
{VARIABLE S7_turns $turn_number}
{MODIFY_UNIT (
side=1
{NOT_ON_RECALL_LIST}
[not]
id=Malin Keshar
[or]
id=Darken Volk
[/or]
[/not]
) variables.got_inside_manor yes}
{CLEAR_VARIABLE guard_alerted}
[/event]
{HERODEATH_MALIN}
{HERODEATH_VOLK}
{TIME_OVER_DEFEAT}
[event]
name=time over
[message]
speaker=Darken Volk
message= _ "We have no hope of entering the manor now that dawn has broken and the entire city guard is alerted to our presence. Your incompetence is truly appalling."
[/message]
[endlevel]
result=defeat
[/endlevel]
[/event]
[/scenario]