From 16d24e876ab514cd6c73e9b5c59974309a8a0bc8 Mon Sep 17 00:00:00 2001 From: nemaara Date: Tue, 5 Feb 2019 00:23:44 -0500 Subject: [PATCH] DiD S11: gameplay updates --- .../scenarios/11_Descent_into_Darkness.cfg | 400 +++++++++++++----- 1 file changed, 304 insertions(+), 96 deletions(-) diff --git a/data/campaigns/Descent_Into_Darkness/scenarios/11_Descent_into_Darkness.cfg b/data/campaigns/Descent_Into_Darkness/scenarios/11_Descent_into_Darkness.cfg index 9611a0f57aa6..69c05f50eb79 100644 --- a/data/campaigns/Descent_Into_Darkness/scenarios/11_Descent_into_Darkness.cfg +++ b/data/campaigns/Descent_Into_Darkness/scenarios/11_Descent_into_Darkness.cfg @@ -102,6 +102,13 @@ fog=yes shroud=yes + [ai] + aggression=1.0 + caution=0.0 + grouping=no + simple_targeting=yes + village_value=0 + [/ai] [/side] [event] @@ -683,6 +690,12 @@ {MODIFY_UNIT (type=Ghoul) max_moves 4} {MODIFY_UNIT (type="Walking Corpse") max_moves 3} + [message] + speaker=narrator + message= _ "Stepping on runes provides Malin with a temporary buff. He loses any additional abilities he obtains if he steps off of the corresponding runestone." + image=wesnoth-icon.png + [/message] + [objectives] side=1 [objective] @@ -694,7 +707,7 @@ description= _ "Death of Malin Keshar" [/objective] [note] - description= _ "Use the runes to your advantage" + description= _ "While malin is standing on a runestone, he receives additional abilities" [/note] [/objectives] [/event] @@ -713,18 +726,6 @@ {PLACE_IMAGE scenery/rune3.png 10 7} {PLACE_IMAGE scenery/rune1.png 11 6} {PLACE_IMAGE scenery/rune1.png 13 9} - [remove_object] - id=Malin Keshar - object_id=precision_rune - [/remove_object] - [remove_object] - id=Malin Keshar - object_id=lifeblood_rune - [/remove_object] - [remove_object] - id=Malin Keshar - object_id=carapace_rune - [/remove_object] #enddef # Ritual part 2 @@ -1052,7 +1053,7 @@ [/message] [random_placement] - num_items={ON_DIFFICULTY 5 6 7} + num_items={ON_DIFFICULTY 4 4 5} variable=loc min_distance=3 [filter_location] @@ -1074,9 +1075,33 @@ [/command] [/random_placement] + [random_placement] + num_items={ON_DIFFICULTY 1 2 2} + variable=loc + min_distance=3 + [filter_location] + terrain=Uu^*,Uu,Uh^*,Uh,Qxu + [not] + x=18-23 + y=1-5 + [/not] + [not] + x,y=12,7 + radius=4 + [/not] + [not] + [filter][/filter] + [/not] + [/filter_location] + [command] + {NOTRAIT_UNIT 2 "Wraith" $loc.x $loc.y} + [/command] + [/random_placement] + {MODIFY_UNIT (side=2) attacks_left 0} {MODIFY_UNIT (side=2) moves 0} {MODIFY_UNIT (side=2) max_moves 3} + {MODIFY_UNIT (type=Wraith) max_moves 2} [random_placement] num_items=1 @@ -1199,14 +1224,6 @@ # Ritual runes - {FORCE_CHANCE_TO_HIT (id=Malin Keshar) side=2 100 ( - [have_unit] - id=Malin Keshar - x=13,11 - y=6,9 - [/have_unit] - )} - [event] name=moveto first_time_only=no @@ -1234,10 +1251,21 @@ [effect] apply_to=new_ability [abilities] - [dummy] + [leadership] name= _ "conscience" - description= _ "This unit has a 100% chance to hit with all attacks" - [/dummy] + name_inactive= _ "conscience" + description= _ "This unit has its damage increased by 35%" + description_inactive= _ "This unit has its damage increased by 35%" + value=35 + affect_self=yes + affect_enemies=no + affect_allies=no + [filter] + id=Malin Keshar + x=13,11 + y=6,9 + [/filter] + [/leadership] [/abilities] [/effect] [/object] @@ -1279,8 +1307,15 @@ max_value=90 add=30 name= _ "carapace" + name_inactive= _ "carapace" description= _ "This unit gains 30% to all resistances." + description_inactive= _ "This unit gains 30% to all resistances." affect_self=yes + [filter] + id=Malin Keshar + x=13,11 + y=9,6 + [/filter] [/resistance] [/abilities] [/effect] @@ -1320,11 +1355,18 @@ [abilities] [regenerate] id=lifeblood - value=999 + value=32 name= _ "lifeblood" - description= _ "This unit will heal to full HP every turn. If it is poisoned, it will remove the poison instead of healing." + name_inactive= _ "lifeblood" + description= _ "This unit will heal 32 HP every turn. If it is poisoned, it will remove the poison instead of healing." + description_inactive= _ "This unit will 32 HP every turn. If it is poisoned, it will remove the poison instead of healing." affect_self=yes poison=cured + [filter] + id=Malin Keshar + x=14,10 + y=7,7 + [/filter] [/regenerate] [/abilities] [/effect] @@ -1357,10 +1399,6 @@ [then] {REMOVE_IMAGE $x2 $y2} {PLACE_IMAGE scenery/rune4.png $x2 $y2} - [remove_object] - id=Malin Keshar - object_id=precision_rune - [/remove_object] [/then] [elseif] [variable] @@ -1370,10 +1408,6 @@ [then] {REMOVE_IMAGE $x2 $y2} {PLACE_IMAGE scenery/rune1.png $x2 $y2} - [remove_object] - id=Malin Keshar - object_id=carapace_rune - [/remove_object] [/then] [/elseif] [/if] @@ -1392,10 +1426,6 @@ [then] {REMOVE_IMAGE $x2 $y2} {PLACE_IMAGE scenery/rune1.png $x2 $y2} - [remove_object] - id=Malin Keshar - object_id=carapace_rune - [/remove_object] [/then] [elseif] [variable] @@ -1405,10 +1435,6 @@ [then] {REMOVE_IMAGE $x2 $y2} {PLACE_IMAGE scenery/rune4.png $x2 $y2} - [remove_object] - id=Malin Keshar - object_id=precision_rune - [/remove_object] [/then] [/elseif] [/if] @@ -1428,10 +1454,6 @@ [then] {REMOVE_IMAGE $x2 $y2} {PLACE_IMAGE scenery/rune3.png $x2 $y2} - [remove_object] - id=Malin Keshar - object_id=lifeblood_rune - [/remove_object] [/then] [/if] [/then] @@ -1450,10 +1472,6 @@ [then] {REMOVE_IMAGE $x2 $y2} {PLACE_IMAGE scenery/rune3.png $x2 $y2} - [remove_object] - id=Malin Keshar - object_id=lifeblood_rune - [/remove_object] [/then] [/if] [/then] @@ -1617,7 +1635,7 @@ [unit] side=1 x,y=3,34 - hitpoints=11 + hitpoints=17 facing=se animate=yes @@ -1729,7 +1747,7 @@ [/reset_fog] [random_placement] - num_items=6 + num_items=5 variable=loc min_distance=3 [filter_location] @@ -1743,8 +1761,27 @@ {NOTRAIT_UNIT 3 "Vampire Bat" $loc.x $loc.y} {GUARDIAN} [/command] [/random_placement] + [random_placement] - num_items=6 + num_items={ON_DIFFICULTY 2 3 3} + variable=loc + min_distance=3 + [filter_location] + x,y=1-29,1-24 + terrain=Uu,Uu^* + [not] + [filter][/filter] + [/not] + [/filter_location] + [command] + {NOTRAIT_UNIT 3 "Blood Bat" $loc.x $loc.y} + [/command] + [/random_placement] + + {MODIFY_UNIT (type=Blood Bat) max_moves 4} + + [random_placement] + num_items=5 variable=loc min_distance=3 [filter_location] @@ -1758,8 +1795,9 @@ {NOTRAIT_UNIT 3 "Giant Rat" $loc.x $loc.y} {GUARDIAN} [/command] [/random_placement] + [random_placement] - num_items=7 + num_items=6 variable=loc min_distance=3 [filter_location] @@ -1774,6 +1812,21 @@ [/command] [/random_placement] + [random_placement] + num_items={ON_DIFFICULTY 1 1 2} + variable=loc + min_distance=11 + [filter_location] + x,y=1-29,1-24 + terrain=Uu,Uu^* + [not] + [filter][/filter] + [/not] + [/filter_location] + [command] + {NOTRAIT_UNIT 3 "Giant Spider" $loc.x $loc.y} {GUARDIAN} + [/command] + [/random_placement] # Previously recruited and new adepts can now also become liches [lua] @@ -1822,6 +1875,89 @@ [/objectives] [/event] +# small flavor events + [event] + name=attack + [filter] + type=Blood Bat + [/filter] + [filter_second] + side=1 + [/filter_second] + [filter_condition] + [variable] + name=scenario_stage + numerical_equals=2 + [/variable] + [/filter_condition] + + [message] + speaker=Mal Keshar + message= _ "Why are these bats chasing me?" + [/message] + [/event] + + [event] + name=die + first_time_only=no + [filter] + type=Blood Bat + [/filter] + [filter_condition] + [variable] + name=scenario_stage + numerical_equals=2 + [/variable] + [/filter_condition] + + [random_placement] + num_items=1 + variable=loc + min_distance=3 + [filter_location] + x,y=1-29,1-24 + terrain=Uu,Uu^* + [not] + [filter][/filter] + [/not] + [not] + [filter_adjacent_location] + [filter] + side=1 + [/filter] + radius=7 + [/filter_adjacent_location] + [/not] + [/filter_location] + [command] + {NOTRAIT_UNIT 3 "Blood Bat" $loc.x $loc.y} + [/command] + [/random_placement] + + {MODIFY_UNIT (type=Blood Bat) max_moves 4} + [/event] + + [event] + name=sighted + [filter] + type=Giant Spider + [/filter] + [filter_second] + side=1 + [/filter_second] + [filter_condition] + [variable] + name=scenario_stage + numerical_equals=2 + [/variable] + [/filter_condition] + + [message] + speaker=Mal Keshar + message= _ "Dela used to be afraid of spiders. Imagine if I showed her something like this..." + [/message] + [/event] + [event] name=attacker_hits id=lich_attacker @@ -1832,6 +1968,12 @@ [filter_attack] name=touch [/filter_attack] + [filter_condition] + [variable] + name=scenario_stage + numerical_equals=2 + [/variable] + [/filter_condition] [message] speaker=Mal Keshar @@ -1852,6 +1994,12 @@ [filter_second_attack] name=touch [/filter_second_attack] + [filter_condition] + [variable] + name=scenario_stage + numerical_equals=2 + [/variable] + [/filter_condition] [message] speaker=Mal Keshar @@ -2390,6 +2538,24 @@ image=wesnoth-icon.png [/message] + [message] + speaker=narrator + message= _ "A tree, perennial life... Mal Keshar stands beneath it, reminiscing back to a time when he had been among the forests of Parthyn... when he had still been at home." + image=wesnoth-icon.png + [/message] + + [message] + speaker=narrator + message= _ "No... no. The words echo softly in the otherwise still air. Or are they merely thought, not spoken?" + image=wesnoth-icon.png + [/message] + + [message] + speaker=narrator + message= _ "Home... he belongs among the darkness now, without light, without life save for the lonesome tree. It is faintly nostalgic, the feeling he gets, but he supposes he should treat the tree more as a symbol of health than anything else. There is no need to think so much about the past, because he does not really regret what has transpired." + image=wesnoth-icon.png + [/message] + # reward: +7 HP [object] silent=yes @@ -2612,7 +2778,7 @@ image=wesnoth-icon.png [/message] - {PLACE_IMAGE items/potion-yellow.png 25 32} + {PLACE_IMAGE items/potion-yellow.png 26 31} {VARIABLE puzzle_tree 3} {VARIABLE puzzle_tree_potion_cup 2} @@ -2632,24 +2798,6 @@ [/then] [/elseif] - [elseif] - [variable] - name=puzzle_tree - numerical_equals=3 - [/variable] - [then] - [message] - speaker=narrator - message= _ "You picked up the bottle of soil." - image=wesnoth-icon.png - [/message] - - {REMOVE_IMAGE 25 32} - - {VARIABLE puzzle_tree 4} - [/then] - [/elseif] - [elseif] [variable] name=puzzle_tree @@ -2664,7 +2812,7 @@ [then] [message] speaker=narrator - message= _ "You got some seeds." + message= _ "You got some sprouts." image=wesnoth-icon.png [/message] @@ -2709,7 +2857,7 @@ image=wesnoth-icon.png [/message] - {PLACE_IMAGE items/potion-blue.png 25 32} + {PLACE_IMAGE items/potion-blue.png 26 31} {VARIABLE puzzle_tree 8} [/then] [else] @@ -2726,7 +2874,37 @@ [/if] [/then] [/elseif] + [/if] + [/event] + [event] + name=moveto + first_time_only=no + [filter] + id=Mal Keshar + x,y=26,31 + [/filter] + [filter_condition] + [variable] + name=scenario_stage + numerical_equals=2 + [/variable] + [/filter_condition] + [if] + [variable] + name=puzzle_tree + numerical_equals=3 + [/variable] + [then] + [message] + speaker=narrator + message= _ "You picked up the bottle of soil." + image=wesnoth-icon.png + [/message] + + {REMOVE_IMAGE 26 31} + {VARIABLE puzzle_tree 4} + [/then] [elseif] [variable] name=puzzle_tree @@ -2739,7 +2917,7 @@ image=wesnoth-icon.png [/message] - {REMOVE_IMAGE 25 32} + {REMOVE_IMAGE 26 31} {VARIABLE puzzle_tree 9} [/then] @@ -2770,9 +2948,9 @@ [message] speaker=narrator message= _ "Once mighty, the tree now decomposed into tiny seedlings, -Buds of life that sprout with heat, +Buds of life that grow with heat, Finds a new place to grow again. -Rock, then soil, both under light, then seed, then water, +Rock, then soil, both under light, then sprouts, then water, And the Yew spreads its supple branches in rebirth." image=wesnoth-icon.png [/message] @@ -2920,27 +3098,41 @@ And the Yew spreads its supple branches in rebirth." image=wesnoth-icon.png [/message] - {PLACE_IMAGE items/potion-blue.png 15 18} + {PLACE_IMAGE items/potion-blue.png 14 18} {VARIABLE puzzle_potion 4} [/then] [/elseif] + [/if] + [/event] - [elseif] - [variable] - name=puzzle_potion - numerical_equals=4 - [/variable] - [then] - [message] - speaker=narrator - message= _ "You picked up the flask of water." - image=wesnoth-icon.png - [/message] + [event] + name=moveto + first_time_only=no + [filter] + id=Mal Keshar + x,y=14,18 + [/filter] + [filter_condition] + [variable] + name=scenario_stage + numerical_equals=2 + [/variable] + [/filter_condition] + [if] + [variable] + name=puzzle_potion + numerical_equals=4 + [/variable] + [then] + [message] + speaker=narrator + message= _ "You picked up the flask of water." + image=wesnoth-icon.png + [/message] - {REMOVE_IMAGE 15 18} - {VARIABLE puzzle_potion 5} - [/then] - [/elseif] + {REMOVE_IMAGE 14 18} + {VARIABLE puzzle_potion 5} + [/then] [/if] [/event] @@ -2973,6 +3165,12 @@ And the Yew spreads its supple branches in rebirth." image=wesnoth-icon.png [/message] + [message] + speaker=narrator + message= _ "Mal Keshar drinks the potion and feels energy flow through his skeletal form. The power of death surges in his vacant body, threatening to overflow, to burst free, but at the last moment, he reins it in. The stream of magic trickles down to drops, diminished, tempered, but manageable." + image=wesnoth-icon.png + [/message] + # reward: +1 RANGED DMG [object] silent=yes @@ -3244,7 +3442,13 @@ Into pitch black shadow." [message] speaker=narrator - message= _ "You cremated the bones." + message= _ "You cremated the bones!" + image=wesnoth-icon.png + [/message] + + [message] + speaker=narrator + message= _ "Ash swirls upward, the charred remnants of the once living. Charcoal from bone, embers from flesh, he consumes the pallid cinders, siphoning away the energy with a draining touch." image=wesnoth-icon.png [/message] @@ -3350,6 +3554,8 @@ And the tongue of fire begets ashen repose." speaker=Mal Keshar message= _ "I sense the lair of something powerful nearby. Capturing that castle may be a worthwhile endeavor, but I shall have to approach carefully." [/message] + + [cancel_action][/cancel_action] [/event] # Initiate boss battle @@ -3603,6 +3809,8 @@ And the tongue of fire begets ashen repose." description= _ "Runes may only be activated once per turn" [/note] [/objectives] + + [cancel_action][/cancel_action] [/event] # spawns