major scepter of fire update, HotNE balancing

This commit is contained in:
Scott Klempner 2006-03-27 19:13:39 +00:00
parent 3942d4fc78
commit 2fd4908dbe
4 changed files with 542 additions and 336 deletions

View file

@ -7,6 +7,7 @@
name="gameplay03.ogg"
[/music]
{TURNS 26 20 15}
victory_when_enemies_defeated=no
{DUSK}
{FIRST_WATCH}
@ -702,7 +703,7 @@
{LISAR_GUARD_DOORS}
[message]
description=Li'sar
message= _ "Whew! We make our way through the dangerous fog of the mountains, and now there is all this chaos before us! Come on, men! We must make it to the mines, which lie ahead of us!"
message= _ "Whew! We make our way through the dangerous fog of the mountains, and now there is all this chaos before us! Come on, men! We must make it to the caves that lie ahead of us!"
[/message]
{CLEAR_VARIABLE true_entrance_location}
{CLEAR_VARIABLE outlaw_name}

View file

@ -1,7 +1,6 @@
[scenario]
id=Scepter
#textdomain wesnoth-httt
name= _ "The Scepter of Fire"
id=Scepter
scenario_generation=cave
#
@ -29,15 +28,17 @@ scenario_generation=cave
[generator]
[settings]
id=Scepter
name= _ "The Scepter of Fire"
map_data="{campaigns/Heir_To_The_Throne/maps/Sceptre}"
{DEFAULT_MUSIC_PLAYLIST}
{TURNS 43 40 37}
{TURNS 80 64 50}
victory_when_enemies_defeated=no
next_scenario=A_Choice_Must_Be_Made
#
# This is a custom schedule that gives everything a slight reddish hue
#
[time]
#textdomain wesnoth
id=underground
@ -49,99 +50,58 @@ scenario_generation=cave
blue=-40
[/time]
[event]
name=prestart
[objectives]
side=1
[objective]
description= _ "Capture the Scepter of Fire with Konrad or Li'sar"
condition=win
[/objective]
[objective]
description= _ "Death of Konrad"
condition=lose
[/objective]
[objective]
description= _ "Death of Delfador"
condition=lose
[/objective]
[objective]
description= _ "Death of Li'sar"
condition=lose
[/objective]
[objective]
description= _ "Death of Kalenz"
condition=lose
[/objective]
[/objectives]
[event]
name=prestart
[objectives]
side=1
[objective]
description= _ "Capture the Scepter of Fire with Konrad or Li'sar"
condition=win
[/objective]
[objective]
description= _ "Death of Konrad"
condition=lose
[/objective]
[objective]
description= _ "Death of Delfador"
condition=lose
[/objective]
[objective]
description= _ "Death of Li'sar"
condition=lose
[/objective]
[objective]
description= _ "Death of Kalenz"
condition=lose
[/objective]
[/objectives]
{SOF_TERRAIN_MASK}
#
# Initialize the lava growing effect
#
{VARIABLE lava_count 1}
{VARIABLE lava_x 25}
{VARIABLE lava_y 35}
[terrain]
x=$lava_x
y=$lava_y
letter=l
[/terrain]
[terrain_mask]
x,y=10,40
mask="
rr~~r~~~rr~~~~~r~~~r~~~~~~~r~~
r~~rr~~~r~~~r~~r~~~r~~r~~~~r~~
rr~rr~~rr~~~r~~~~~rr~~r~~~~rr~
~r~~r~~r~~~rr~~~~~rr~~r~~~~rr~
~r~rr~rr~~~r~~~r~~r~~~rr~~r~r~
rr~r~~r~~~~rr~~rr~r~~~rr~r~~r~
r~~r~~r~~~~rr~~~r~rr~~~rr~~rr~
~~~r~~rr~~~~r~~~r~~r~~~r~~rrr~
~~rr~~rr~~~~r~rrr~~r~~~r~~rr~~
~~rr~~~rr~~~rr~r~~~rr~~~~rr~~~
~rr~r~~~r~~rr~~rr~r~r~~rr~rr~~
~rr~~r~~r~~rr~~~r~~~r~~r~~~r~~
~~r~~~~rrr~r~~~rrr~~rr~~r~~rr~
~~rr~~rrr~rr~]~rrr~~rr~rr~~rr~
~~rr~~rr~~r]~]]~r~]]~r~rr~rrr~
~~~r~~~~~~r]]]]]]]]~~r~rrr~~r~
r~~rr~~~~~~]]]]]]]]]~~~~r~~~r~
~~~r~r~~~~~~]]]]]]~r~~~rr~~~r~
~r~~~~r~~~rrr~]]~rrr~~~~rrr~~~
~r~~~~rr~~r~r~~~rr~~~~r~~~rr~~
~rr~~~rr~~r~~~rrrrr~~rr~~~rr~~
~~r~~rr~~rrrrrr~~rr~~~rr~rr~~~
~~r~~rrrrrr~~~~~~rr~~~rr~rr~~~
~rrr~~~~~~p~~rr~~prrr~p~~~~p~~
~r~rrp~rrrr~~rr~~~~~r~~~~p~rr~
~rpr~~~~~~rrrprrrrrrrpr~~~~rr~
~rrr~~rrrrrrr~rrr~~~~rrrr~p~~~
~~~rrrrprr~prrr~~~p~rr~p~rrrr~
~p~~rr~~rr~~~~rp~~~rrr~~~p~rr~
~~~~pr~rr~p~~~rr~~~p~rr~~rr~~~"
[rule] # Make sure your castle is not converted
old=o
new=rp]
terrain=o
[/rule]
[rule] # Make sure cave walls are not converted
old=W
new=rp]
terrain=W
[/rule]
[rule] # Make sure the keep is not converted
old=K
new=rp]
terrain=K
[/rule]
[rule] # Add stone villages
old=u
new=p
terrain=p
[/rule]
[rule] # Add roads
old=u
new=r
terrain=r
[/rule]
[rule] # Add a mushroom forest
old=u
new=]
terrain=]
[/rule]
[/terrain_mask]
[/event]
#
# Except on hard, you only have to face 3 enemies instead of 4
# This part randomly kills one of the 4 leaders
#
#ifdef HARD
#else
{VARIABLE_OP side_kill random 2..5}
[kill]
side=$side_kill
[/kill]
{CLEAR_VARIABLE side_kill}
#endif
[/event]
[event]
name=start
@ -158,12 +118,49 @@ r~~rr~~~~~~]]]]]]]]]~~~~r~~~r~
description=Konrad
message= _ "The Scepter must be getting close now! Where shall we go?"
[/message]
{TREMOR}
{TREMOR}
[message]
description=Delfador
message= _ "Yes, I feel it is near here! We must search for it carefully."
[/message]
[message]
description=Kalenz
message= _ "We cannot explore this much area by ourselves, especially if we are beset by the denizens of these caves. We must ask our dwarven allies to help search the caves with us."
[/message]
{TREMOR}
{TREMOR}
[message]
description=Li'sar
message= _ "An earthquake! We'll be trapped!"
[/message]
[message]
description=Kalenz
message= _ "No, not an earthquake princess. I feel it too. Something is... aware... of us."
[/message]
[message]
description=Li'sar
message= _ "Aware? Who? Delfador, what does he mean?"
[/message]
[message]
description=Delfador
message= _ "The Scepter... the earth... the molten lava... the fire... everything. It was forged here, not far north of where we now stand. It calls out to the heir - I can barely hold it back in my mind. The sheer power of it!"
[/message]
{TREMOR}
[message]
description=Konrad
message= _ "Where? Where is it?"
[/message]
[message]
description=Delfador
message= _ "North. More than that, I cannot tell."
[/message]
# [message]
# description=Delfador
# message= _ "I think... I think... if I were to concentrate a bit I could tell you where it is."
# [/message]
# [message]
# speaker=narrator
# message= _ "If Delfador rests, he can concentrate on the location of the Scepter of Fire."
# [/message]
[/event]
#
@ -184,13 +181,45 @@ r~~rr~~~~~~]]]]]]]]]~~~~r~~~r~
numerical_equals=1
[/variable]
[then]
{TREMOR}
{TREMOR}
{VARIABLE_OP lava_count add 1}
[store_locations]
variable=lava_flow_hexes
x=$lava_x
y=$lava_y
terrain=W
radius=$lava_count
[/store_locations]
{FOREACH lava_flow_hexes i}
{VARIABLE_OP temp_x to_variable lava_flow_hexes[$i].x}
{VARIABLE_OP temp_y to_variable lava_flow_hexes[$i].y}
[terrain]
x=$temp_x
y=$temp_y
letter=l
[/terrain]
{NEXT i}
#
# Reset the counter if it gets too large (it slows things down)
#
[if]
[variable]
name=lava_count
numerical_equals=3
[/variable]
[then]
{VARIABLE lava_count 0}
{VARIABLE_OP lava_x random (10..40)}
{VARIABLE_OP lava_y random (15..45)}
[/then]
[/if]
[/then]
[/if]
{CLEAR_VARIABLE rumble_test}
[/event]
{campaigns/Heir_To_The_Throne/utils/deaths.cfg}
[/settings]
map_width=50
@ -198,10 +227,12 @@ r~~rr~~~~~~]]]]]]]]]~~~~r~~~r~
flipx_chance=50
village_density=20
#the chamber with the player. Somewhere in the far south
#
# The chamber with the player. Somewhere in the far south
#
[chamber]
id=player
x=10-40
x=15-35
y=68
size=8
jagged=50
@ -214,23 +245,130 @@ r~~rr~~~~~~]]]]]]]]]~~~~r~~~r~
side=1
canrecruit=1
controller=human
shroud=no
shroud=yes
[/side]
[/items]
[/chamber]
#the chamber with the first orc. Somewhere in the mid-east
#
# The antechambers
#
[chamber]
id=orc1
x=30-50
y=35-50
size=6
[passage]
destination=player
width=2
jagged=5
windiness=10
[/passage]
id=antechamber_1
x=10-25
y=50-60
size=7
jagged=5
{PASSAGE_NORMAL player 2 10 10}
[/chamber]
[chamber]
id=antechamber_2
x=25-40
y=50-60
size=7
jagged=2
{PASSAGE_NORMAL player 2 3 1}
{PASSAGE_CHANCE 40 antechamber_1 1 9 9}
[/chamber]
#
# The central volcano
#
[chamber]
id=center
x=25-26
y=35-36
size=2
jagged=1
{PASSAGE_NORMAL antechamber_1 1 20 3}
{PASSAGE_NORMAL antechamber_2 1 20 3}
[/chamber]
#
# The 5 minichambers encircling the central volcano and a 6th chamber to serve as the exit
#
[chamber]
id=mini_1
x=10-16
y=36-40
size=5
jagged=2
{PASSAGE_NORMAL center 1 5 2}
{PASSAGE_NORMAL antechamber_1 2 5 2}
[/chamber]
[chamber]
id=mini_2
x=8-20
y=17-26
size=5
jagged=3
{PASSAGE_NORMAL center 1 5 2}
{PASSAGE_NORMAL mini_1 1 5 2}
[/chamber]
[chamber]
id=mini_3
x=10-40
y=14-30
size=5
jagged=4
{PASSAGE_NORMAL center 1 5 2}
{PASSAGE_NORMAL mini_2 2 5 2}
[items]
#
# These macros handle the placement and attainment of the scepter,
# including ending the level in victory.
# I moved them to the utils file to make the chamber WML more readable
#
# The scepter will always be in mini chamber 3, but the location of this
# particular chamber is highly variable
#
{PLACE_SCEPTER}
{KONRAD_GETS_SCEPTER}
{LISAR_GETS_SCEPTER}
[/items]
[/chamber]
[chamber]
id=mini_4
x=30-42
y=17-26
size=5
jagged=5
{PASSAGE_NORMAL center 1 5 2}
{PASSAGE_NORMAL mini_3 2 5 2}
[/chamber]
[chamber]
id=mini_5
x=34-40
y=36-40
size=5
jagged=5
{PASSAGE_NORMAL mini_4 2 5 2}
{PASSAGE_NORMAL center 1 5 2}
{PASSAGE_NORMAL antechamber_2 2 5 2}
[/chamber]
[chamber]
id=exit
x=25
y=1
size=2
jagged=1
{PASSAGE_NORMAL mini_2 1 5 2}
{PASSAGE_NORMAL mini_3 1 5 2}
{PASSAGE_NORMAL mini_4 1 5 2}
[/chamber]
#
# There are 4 chambers for enemies randomly scattered on the map
#
[chamber]
id=enemy_1
x=1-10
y=45-55
size=5
jagged=3
{PASSAGE_NORMAL mini_1 2 5 2}
{PASSAGE_CHANCE 60 mini_2 1 5 2}
{PASSAGE_CHANCE 40 antechamber_2 1 5 2}
[items]
[side]
type=Orcish Warlord
@ -242,7 +380,7 @@ r~~rr~~~~~~]]]]]]]]]~~~~r~~~r~
leader_value=10
{ATTACK_DEPTH 5 5 6}
[/ai]
recruit=Goblin Knight,Wolf Rider,Troll,Orcish Warrior,Orcish Crossbowman
recruit=Wolf Rider,Orcish Grunt,Orcish Archer
team_name=orcs
{GOLD 30 40 50}
@ -250,21 +388,16 @@ r~~rr~~~~~~]]]]]]]]]~~~~r~~~r~
[/side]
[/items]
[/chamber]
#the chamber with the troll. Somewhere in the mid-west.
[chamber]
id=troll
x=2-15
y=35-50
size=10
jagged=50
#there is a 50% chance of a narrow passage direct to the troll
[passage]
chance=50
width=1
windiness=20
destination=player
[/passage]
id=enemy_2
x=1-10
y=1-35
size=5
jagged=3
{PASSAGE_NORMAL mini_2 2 5 2}
{PASSAGE_NORMAL enemy_1 2 5 5}
{PASSAGE_CHANCE 60 mini_1 1 5 2}
{PASSAGE_CHANCE 40 mini_3 1 5 2}
[items]
[side]
type=Troll Warrior
@ -277,9 +410,9 @@ r~~rr~~~~~~]]]]]]]]]~~~~r~~~r~
recruitment_pattern=fighter
[/ai]
#ifdef EASY
recruit=Troll,Troll Whelp,Ogre
recruit=Troll Whelp,Ogre
#else
recruit=Troll,Troll Warrior,Ogre
recruit=Troll Whelp,Troll,Troll Warrior,Ogre
#endif
team_name=orcs
{GOLD 30 40 50}
@ -287,35 +420,15 @@ r~~rr~~~~~~]]]]]]]]]~~~~r~~~r~
[/side]
[/items]
[/chamber]
#intermediate chamber between the troll and the player
[chamber]
id=troll_player
x=10-20
y=50-60
size=4
#passages to both the troll's chamber and the player's chamber
[passage]
destination=player
width=3
windiness=10
jagged=5
[/passage]
[passage]
destination=troll
width=2
windiness=10
jagged=5
[/passage]
[/chamber]
#chamber with the second orc. Somewhere in the north.
[chamber]
id=orc2
x=2-40
y=2-10
size=12
id=enemy_3
x=40-50
y=1-35
size=5
jagged=3
{PASSAGE_NORMAL mini_4 2 5 2}
{PASSAGE_CHANCE 60 mini_5 1 5 2}
{PASSAGE_CHANCE 40 mini_3 1 5 2}
[items]
[side]
type=Orcish Warlord
@ -328,9 +441,9 @@ r~~rr~~~~~~]]]]]]]]]~~~~r~~~r~
recruitment_pattern=fighter,fighter,scout
[/ai]
#ifdef EASY
recruit=Troll,Ogre,Goblin Knight,Wolf Rider,Troll Whelp
recruit=Ogre,Goblin Knight,Wolf Rider,Troll Whelp
#else
recruit=Troll,Troll Warrior,Ogre,Goblin Knight,Wolf Rider,Troll Whelp,Saurian Skirmisher
recruit=Troll,Ogre,Goblin Knight,Wolf Rider,Troll Whelp,Saurian Skirmisher
#endif
team_name=orcs
@ -339,13 +452,16 @@ r~~rr~~~~~~]]]]]]]]]~~~~r~~~r~
[/side]
[/items]
[/chamber]
#chamber with the third orc. Somewhere in the north-east
[chamber]
id=orc3
x=40-48
y=10-20
size=10
id=enemy_4
x=40-50
y=45-55
size=5
jagged=3
{PASSAGE_NORMAL mini_5 2 5 2}
{PASSAGE_NORMAL enemy_3 2 5 5}
{PASSAGE_CHANCE 60 mini_4 1 5 2}
{PASSAGE_CHANCE 40 antechamber_2 1 5 2}
[items]
[side]
type=Orcish Warlord
@ -358,169 +474,15 @@ r~~rr~~~~~~]]]]]]]]]~~~~r~~~r~
recruitment_pattern=fighter,fighter,scout
[/ai]
#ifdef EASY
recruit=Troll,Ogre,Goblin Knight,Wolf Rider,Troll Whelp
recruit=Wolf Rider,Goblin Spearman,Goblin Impaler
#else
recruit=Troll,Troll Warrior,Ogre,Goblin Knight,Wolf Rider,Troll Whelp,Saurian Skirmisher
recruit=Goblin Knight,Wolf Rider,Goblin Spearman,Goblin Impaler,Saurian Skirmisher
#endif
team_name=orcs
{GOLD 20 30 40}
{INCOME 2 4 6}
[/side]
[/items]
#has a passage to the first orc
[passage]
destination=orc1
width=3
windiness=5
[/passage]
#has a passage to the second orc 50% of the time
[passage]
chance=50
destination=orc2
width=2
jagged=3
windiness=5
[/passage]
#has a passage to the scepter 50% of the time
[passage]
chance=50
destination=scepter
width=1
jagged=5
windiness=5
[/passage]
[/chamber]
#chamber with the Scepter in it. Somewhere around the center
[chamber]
id=scepter
x=20-40
y=20-40
size=15
jagged=50
[items]
[item]
image=items/sceptre-of-fire.png
[/item]
[event]
same_location_as_previous=yes
name=moveto
first_time_only=no
[filter]
side=1
x=22
y=32
[/filter]
[object]
id=object_scepter
name= _ "Scepter of Fire"
image=items/sceptre-of-fire.png
duration=forever
description= _ "This ancient Scepter was forged by the great Dwarves of the Deep Mountains. A symbol of the kingship of Wesnoth, the Scepter has the power to shoot fireballs at enemies of the bearer!"
cannot_use_message= _ "This is the Scepter of Fire. Only a true successor to the throne can possibly dare to take this!"
[filter]
type=Princess,Battle Princess,Fighter,Commander,Lord
[/filter]
[effect]
apply_to=variation
name=scepter
[/effect]
[/object]
[/event]
[event]
same_location_as_previous=yes
name=moveto
[filter]
description=Konrad
[/filter]
[set_variable]
name=scepter
value="Konrad"
[/set_variable]
[message]
description=Konrad
message= _ "Here it is at last, I have the Scepter!"
[/message]
[message]
description=Kalenz
message= _ "So it is in our hands! Now let us leave this stinking pit."
[/message]
[message]
description=Li'sar
message= _ "I think that if we travel just a little north, we might be able to get out."
[/message]
[endlevel]
result=victory
[/endlevel]
[/event]
[event]
same_location_as_previous=yes
name=moveto
[filter]
description=Li'sar
[/filter]
[set_variable]
name=scepter
value="Li'sar"
[/set_variable]
[message]
description=Li'sar
message= _ "At last! I have the Scepter!"
[/message]
[message]
description=Konrad
message= _ "Indeed. You managed to reach it Li'sar. I hope you shall use it wisely."
[/message]
[message]
description=Li'sar
message= _ "Well my first use for it is going to be to help us get out of this hole! I hope you consider that wise."
[/message]
[message]
description=Delfador
message= _ "The Scepter makes its wielder powerful, but hardly immortal, child. Use it prudently. Now come, I believe there is an exit to the north!"
[/message]
[message]
description=Li'sar
message= _ "I think I know what I'm doing. Come, let us go!"
[/message]
[endlevel]
result=victory
[/endlevel]
[/event]
[/items]
[/chamber]
#chamber that is between the troll, the second orc, and the scepter
[chamber]
x=1-10
y=20-30
size=5
[passage]
destination=scepter
windiness=10
width=2
jagged=2
[/passage]
[passage]
destination=orc2
windiness=10
width=3
jagged=5
[/passage]
[passage]
destination=troll
windiness=5
width=3
jagged=5
[/passage]
[/chamber]
[/generator]

View file

@ -62,10 +62,7 @@
side=1
canrecruit=1
controller=human
#ifdef EASY
#else
fog=yes
#endif
#fog=yes
[/side]
[side]
@ -74,9 +71,17 @@
user_description= _ "Kior-Dal"
side=2
canrecruit=1
#ifdef EASY
recruit=Wolf Rider,Orcish Grunt,Orcish Archer
#endif
#ifdef NORMAL
recruit=Wolf Rider,Orcish Grunt,Orcish Archer,Goblin Knight,Orcish Warrior
#endif
#ifdef HARD
recruit=Orcish Warrior,Goblin Knight,Wolf Rider,Orcish Grunt,Orcish Archer,Troll Whelp,Troll,Orcish Assassin
#endif
[ai]
{ATTACK_DEPTH 5 5 6}
{ATTACK_DEPTH 4 5 6}
passive_leader=yes
simple_targetting=yes
recruitment_pattern=scout,scout,fighter,fighter,archer
@ -119,9 +124,17 @@
user_description= _ "Herbert"
side=3
canrecruit=1
#ifdef EASY
recruit=Cavalryman,Spearman,Bowman
#endif
#ifdef NORMAL
recruit=Cavalryman,Spearman,Bowman,Swordsman,Red Mage
#endif
#ifdef HARD
recruit=Cavalryman,Swordsman,Pikeman,Ogre,Dragoon,Red Mage,White Mage,Shock Trooper
#endif
[ai]
{ATTACK_DEPTH 5 5 6}
{ATTACK_DEPTH 4 5 6}
passive_leader=yes
simple_targetting=yes
recruitment_pattern=scout,scout,fighter,fighter,mixed fighter
@ -259,17 +272,10 @@
description=Li'sar
message= _ "After being in this wilderness for so long, it will be good to get some rest!"
[/message]
#ifdef EASY
[message]
description=Konrad
message= _ "But we don't know what dangers may lie ahead!"
[/message]
#else
[message]
description=Konrad
message= _ "But there is a great fog around us again! We don't know what dangers may lie ahead!"
[/message]
#endif
[message]
description=Kalenz
message= _ "So long as we move ahead with caution and prudence, I am sure we will reach the safety and hospitality of the elves."
@ -399,7 +405,7 @@
[/message]
[message]
description=Konrad
message= _ "(hushed) Our soldiers will defend us as we rush across the field. Sorry to be blunt, princess, but only you and I need to reach the Council alive."
message= _ "(hushed) But, our soldiers will defend us as we rush across the field. Sorry to be blunt, princess, but you and I are the only ones who need to make it through alive."
[/message]
[message]
description=Delfador

View file

@ -0,0 +1,237 @@
#define SOF_TERRAIN_MASK
[terrain_mask]
x,y=1,1
mask="
~~~~~~r~~~~~~~~]~r~r~r~rr~[r~~r~~]~~[~~~~~~~~r~~]~
~r~~~~~~r~~~~~~~rr[~r~~~r~~~]r~~~~~~~r~~~~~~~~~~~~
~~r~]~r~~~~]rrr~~rrrr[~~~~~rr~~~~[~~r~~~]~r]~~~r~r
~~~]~~r~~r~]rr]r~~~~r]~r~r~r~~~~r~]~~~~~r~[~~~[~~[
~~r~]rr~rrrr~~r]r~~rr~~r]r~~~~~]]~r~~~~~~~~~~~[~~~
rr]~~r~~~~r~rr]r~r~~~r~~~~~r~~~~~~~~~~~]~~~~r~~~]r
~rr~~~]~r~r~~r~r~[rrrr]r[~rr~r~~~]~~rr~~~~~r~~~~r~
[r~rr~~r~~r~rr~~~~~~r~~~~[~r~~r[~~r~~rr~~~~~]r~~r~
rrr~rr~r~[~~~~~r]~~]r~rr~r[~~~[~rr~~~~~]]~rr~~r~~~
r~~~rr~~[~~r~~r~~~~~rrr~~~~[~rrr~rr~~~r~~~r~~~r~~[
r~[~~r~~~~~]]r~~~~~~~~~~~~~~~~~r~~~r~~~rr~~[r~~~rr
rr~~~~~~~~][~~~~~[~]~rrr~~~~~~~~~]r~~r~r~r~~r~~~~~
~~~]rr~~~~~~~]~~~~rrr~~~[~~r~r~~~~~~~~~~~r~~]~~~~~
~~~~r~~~~~~r~rr~~~~~~~~~~~~~~~~~~r~~~~~~r~~~~~~~~r
~r~~r~~~rr~~r~~~rr~~~r~r~~~~r[~~~[r~~~r~~~r~rrrr~]
~]~~~r~r~~~~]~~~r~~~~r~~~~r~~~~~rr~r~~rr~r~r~rr~~r
~~~r~~~~~r~~r~~~~~r~~~r~[~~~]]~~~~~~rr~rr~~~r~~~~~
r~~~r~rr~]~~r~rr~~r~r~r~~~~~r~~r~~~~~~]~~~[~r~~]rr
~]~r~~~~r~~~~~~~~[~~~~rrr~~~r~]~rr~~r~r~~~r~~~rrr~
~r~r[~r~r~~~r~~~[~~rr~~~~~~~r~~~~~~~~~~~~[~r~~~~~~
r~~~~~~~~~~~~rrr~~r~~~~~~r~rr~~~rrr~~rr~r~r~~r~r~~
~rrr~r]~r~rr~rr~~rr~~~~~r~[rr[r~r~~r]~~~r~~~~~~~r~
r~]~r~~r~~r~r]r~~~~~~~~r~~~~~r~]r~rr]~~r~r~~r]~~~~
r~~~r~~r~~~~~~rr~r]~rr~r~~~r~~r~~~~~~~r]~~~r~~rrr~
~~~~rr~~~]~~~[~~rr~~r~~~~]~r[r~r~r]]~~~~~r~~~~[~~~
~~~]r~~~~~~rrr~~~~~~r~~[~[r~~~~r]r~~]~r~~r~~~~~~~r
~~~~~~~r[~r~~~]~]~r~~~~~rrr~~~~~~~~~~rr]~~~~~r~~r~
~~~[~r[~r~rr~~~[rr~~~r~[~rr~~~~~r~~~~rrr~~~~~r~~rr
r[]~rrr~~~~~~~~r~~~~r~~~~~~[~rr[]~~~~~~]~r]~~~~~~r
~~~~r~r[r~~~~~~]~~r~r~~~~~~~~~r~~~~~r~~]]~r~~~~~r~
~rr~~~~]~r~~~~r~~~~~~rr~~r~~~~~~~r~~~~~~~~rr~r~~rr
r~~~~~~~~r~~rr~~r~]rr~~r~r]~r~~r~r~rrrr~r~rr~~~]]~
r~~~[rr~r~~~~~r~~r]~~~r~~~~r~r]~rr~~~~~~~~~r~]~~r~
[~[~~~~~r[r~~rr~rr~~~r~~~~~~r~r~~r~~~~~~[~~~~~~rrr
~~~rrr~r]~~]rr~rr~r~~~[~r~~]~~rrr~~]r~~~~~~~rr~~rr
~~~r~~~~~r[~rr[~r~r~r~r~~~[~~~~]r~~r~~rr~[r~~~~rr~
~]r~~~~~r~r~~rrr~~~~~r~~r]rr~~~~r~[~]~~~~~r~~~~~~~
~rr~r~~~r~~~r~r~~r~r~~r~~~~~~~~]~]]r~]]~~~~~]~~]~~
]~~rrrrr~[~~~~r~~~~~~~rr~~~rr~~r~[~[~~~~~~~~r~~rrr
r~r~~r~~rrr~~~~r~r~r~rr~~~~~~rrr~~~r~~~rr~rr~~~~~~
r~~~~~~~~~r~r~~~~~~]~r~~~~r~r~~~~~r~~~r~~~~r~[~~~]
~rr~~rr~~]~rrrrrrrr~~~~~r[~~~r~~~[~~~~r~rrrrr~r]~~
r~r~~~r]r~rr~~~~~~~~rr~r~r~rr~~~~~~~~~]~~~~r~~~~~~
~~r~~~r~~~~r]~~~r~~r~rr~r~[rr~~~~~~r~~~~r~]rr[]~rr
rr~~~rr~r~rr~r~~~]~~rrr~r~rrr~~[~r~~~~r~r~~r~~~~~~
r~r[~~~~~~~~rr~~~r~~~~~~~~r~~~r]r[~r~~~r~~r~r~~rr~
r~]~~~~~rrr[~r~~r~~~~~~~~[~~rr~rrrrrr~r~~~~r~~~~~r
~~~~~~~~~~]r~~rr~r~~~~~~r~~~~~r~~rr~~~~~~~~[~~~~~~
~~~~r~~rr~~~r~~~~~~~~~r~~r~~~~~rr~~~~~~~rrr~~r~r]r
~r~r~r~~~~rr~r~~r~~~r~]~r~~r~~r~r~~~~~~~~~~r~~[~~~
~~r~~~~rr~~~~]~r~~]~]~~rr~r~r[~~~r~~~~r~~~~]~~~~r]
~~r~~r~rrrr[]~~~r~~~~r~rr~]~~~~]~~~~~r~~rrr~]~~rr~
~rrrr~r~~]~r~~~~]~~r~~r~~r~rrrr~~~~r~~~~~~~~~r~~~r
r~r~~~~r~~~~~~r~~[r~~~~[rr~~~~rr~r[~~~~~~r[~r~rr~~
~~~~r[r~~r~~~~~r~rrr[~rr~r]r~~~~~r~r~~r~r~~~~~]r~r
~~~~~~~~~~~~r~rp~rrrrr~~r~]r~~r~rp~~]~r~~~~~~r~rp~
~r~~~~~~~~~~~~~~rr]~r~~~r~~~pr~~~~r~~r~~~~~~~p~~~~
~~r~p~~~~~~prrr~~~rrr]~~r~~r~~~~~]~~~r~~]~rp~r~r~r
~~~p~~~~~r~]rrprp~~~~p~r~~~~~~~~r~p~~~~rr~]~~~]~~]
~~r~prr~rr~r~~rpr~~~r~~rp~~~~~~]p~~~~~~r~~r~~~]~~~
rrpr~r~~rrr~rrpr~r~~~r~~~~~r~~~~~~p~r~~p~r~~r~~~]r
~rr~~~prr~r~~r~r~]~rrrpr]r~rrr~~~p~~rr~~~~~rp~~~r~
]rprrr~r~~r~rr~~~~~~r~~~~]~~~~r]~~r~~r~~~r~~pr~~r~
rrrrrr~r~]~~~~~rp~~prrrr~r]~~~]~rr~~~~~pp~r~~~r~~~
~~~~rr~~]~~r~~r~~~~~rrr~~~~]~rrr~rr~~~r~~~r~~~r~~]
r~]~~r~~~rrpp~r~~~~~~~~~~~~~~~~r~~~r~~~rr~~]r~~~rr
rr~~~~~r~~p]~~~~~]~prrrr~~~~~~~~~pr~~~~r~r~~r~r~~~
r~~p~rr~~~~~~p~p~~rrr~p~]p~r~r~~~~~~~~~~~r~~]~~~~~
~~~~r~~~~~~rrrr~~~~~~~~~~~~~~~~~~r~~~~~~r~~~~~r~~r
~r~~r~~~rr~~r~p~rr~~~r~r~~~pr]~~~]r~~r~r~pr~rrrr~]
"
[rule] # Make sure your castle is not converted
old=o
new=rp][
terrain=o
[/rule]
[rule] # Make sure cave walls are not converted
old=W
new=rp][
terrain=W
[/rule]
[rule] # Make sure the keep is not converted
old=K
new=rp][
terrain=K
[/rule]
[rule] # Convert cave villages to stone villages
old=D
new=~rp][
terrain=p
[/rule]
[rule] # Add stone villages
old=u
new=p
terrain=p
[/rule]
[rule] # Add roads
old=u
new=r
terrain=r
[/rule]
[rule] # Add hilly caves
old=u
new=[
terrain=[
[/rule]
[rule] # Add a mushroom forest
old=u
new=]
terrain=]
[/rule]
[/terrain_mask]
#enddef
#define PLACE_SCEPTER
[item]
image=items/sceptre-of-fire.png
[/item]
[event]
same_location_as_previous=yes
name=moveto
first_time_only=no
[filter]
side=1
x=22
y=32
[/filter]
[object]
id=object_scepter
name= _ "Scepter of Fire"
image=items/sceptre-of-fire.png
duration=forever
description= _ "This ancient Scepter was forged by the great Dwarves of the Deep Mountains. A symbol of the kingship of Wesnoth, the Scepter has the power to shoot fireballs at enemies of the bearer!"
cannot_use_message= _ "This is the Scepter of Fire. Only a true successor to the throne can possibly dare to take this!"
[filter]
type=Princess,Battle Princess,Fighter,Commander,Lord
[/filter]
[effect]
apply_to=variation
name=scepter
[/effect]
[/object]
[/event]
#enddef
#define KONRAD_GETS_SCEPTER
[event]
same_location_as_previous=yes
name=moveto
[filter]
description=Konrad
[/filter]
[set_variable]
name=scepter
value="Konrad"
[/set_variable]
[message]
description=Konrad
message= _ "Here it is at last, I have the Scepter!"
[/message]
[message]
description=Kalenz
message= _ "So it is in our hands! Now let us leave this stinking pit."
[/message]
[message]
description=Li'sar
message= _ "I think that if we travel just a little north, we might be able to get out."
[/message]
[endlevel]
result=victory
[/endlevel]
[/event]
#enddef
#define LISAR_GETS_SCEPTER
[event]
same_location_as_previous=yes
name=moveto
[filter]
description=Li'sar
[/filter]
[set_variable]
name=scepter
value="Li'sar"
[/set_variable]
[message]
description=Li'sar
message= _ "At last! I have the Scepter!"
[/message]
[message]
description=Konrad
message= _ "Indeed. You managed to reach it Li'sar. I hope you shall use it wisely."
[/message]
[message]
description=Li'sar
message= _ "Well my first use for it is going to be to help us get out of this hole! I hope you consider that wise."
[/message]
[message]
description=Delfador
message= _ "The Scepter makes its wielder powerful, but hardly immortal, child. Use it prudently. Now come, I believe there is an exit to the north!"
[/message]
[message]
description=Li'sar
message= _ "I think I know what I'm doing. Come, let us go!"
[/message]
[endlevel]
result=victory
[/endlevel]
[/event]
#enddef
#define PASSAGE_NORMAL DESTINATION WIDTH WINDINESS JAGGED
[passage]
destination={DESTINATION}
width={WIDTH}
windiness={WINDINESS}
jagged={JAGGED}
[/passage]
#enddef
#define PASSAGE_CHANCE CHANCE DESTINATION WIDTH WINDINESS JAGGED
[passage]
chance={CHANCE}
destination={DESTINATION}
width={WIDTH}
windiness={WINDINESS}
jagged={JAGGED}
[/passage]
#enddef