Heir to the Throne Update (Current Focus: S1)

This is the place for discussing development of mainline campaigns, reporting bugs in them and providing overall feedback.

Moderator: Forum Moderators

User avatar
RatArmy
Posts: 20
Joined: December 24th, 2014, 4:48 am

Re: Heir to the Throne Update (Current Focus: S1)

Post by RatArmy »

This is not about S1, but I think this thread is suitable for posting a HTTT bug report.

In scenario 15, The Lost General.

Code: Select all

        [message]
            x,y=6,23
            message= _ "I am of the merfolk, dweller of the vast oceans! Do not ask me what I am doing in a cave. My lord can be somewhat eccentric. We are fighting at the side of your fellow cave-dwellers to drive back the orcs and trolls."
        [/message]
        [message]
            speaker=Ulfdain
            # wmllint: directory spelling mer-mahn
            message= _ "(sniffs) A mer-mahn. Never heard of it. I doubt yer as tasty as my friends here."
        [/message]
First message says "merfork", but second message says as if Ulfdain heard the word as "merman", not "merfolk". Something is strange.
And, "merfolk" in first message was changed from "merman.

Code: Select all

diff --git a/data/campaigns/Heir_To_The_Throne/scenarios/15_The_Lost_General.cfg b/data/campaigns/Heir_To_The_Throne/scenarios/15_The_Lost_General.cfg
index 3711999..b9f6c79 100644
--- a/data/campaigns/Heir_To_The_Throne/scenarios/15_The_Lost_General.cfg
+++ b/data/campaigns/Heir_To_The_Throne/scenarios/15_The_Lost_General.cfg
@@ -207,7 +207,7 @@
         [/message]
         [message]
             x,y=6,23
-            message= _ "I am a merman, dweller of the vast oceans! Do not ask me what I am doing in a cave. My lord can be somewhat eccentric. We are fighting at the side of your fellow cave-dwellers to drive back the orcs and trolls."
+            message= _ "I am of the merfolk, dweller of the vast oceans! Do not ask me what I am doing in a cave. My lord can be somewhat eccentric. We are fighting at the side of your fellow cave-dwellers to drive back the orcs and trolls."
         [/message]
         [message]
             speaker=Ulfdain
Japanese Translator: Mainline components, and some Add-on campaigns...
User avatar
zookeeper
WML Wizard
Posts: 9742
Joined: September 11th, 2004, 10:40 pm
Location: Finland

Re: Heir to the Throne Update (Current Focus: S1)

Post by zookeeper »

Yeah, you're right. I'll untangle that somehow.
User avatar
RatArmy
Posts: 20
Joined: December 24th, 2014, 4:48 am

Re: Heir to the Throne Update (Current Focus: S1)

Post by RatArmy »

@zookeeper
Thanks to fix!
Japanese Translator: Mainline components, and some Add-on campaigns...
User avatar
ZIM
Posts: 90
Joined: September 22nd, 2015, 10:04 am
Location: Indonesia

Re: Heir to the Throne Update (Current Focus: S1)

Post by ZIM »

Hello,
I would like to report a bug,

In scenario Sceptre of Fire, I've choosen Li'sar to take the sceptre, but on the next scenario, Konrad is the one who wield the sceptre.

Could anyone tell me how to fix it?
User avatar
zookeeper
WML Wizard
Posts: 9742
Joined: September 11th, 2004, 10:40 pm
Location: Finland

Re: Heir to the Throne Update (Current Focus: S1)

Post by zookeeper »

ZIM wrote:Hello,
I would like to report a bug,

In scenario Sceptre of Fire, I've choosen Li'sar to take the sceptre, but on the next scenario, Konrad is the one who wield the sceptre.

Could anyone tell me how to fix it?
It was a bug in 1.13.6. It's been fixed in newer versions, but after updating you'll need to replay from the beginning of the SoF scenario for it to work right. Or I can probably directly hotfix a savefile of your choosing, if you want.
Konrad2
Forum Moderator
Posts: 3330
Joined: November 24th, 2010, 6:30 pm

Re: Heir to the Throne (Small suggestion)

Post by Konrad2 »

Could we please make Haldiels death (the loyal Horseman you get in scenario 2) a losing condition, at least for a couple scenarios? He has to live long enough to have children, as Deoran, The hero of the Southguard. And a dead Haldiel can hardly be the grandfather of Deoran, nor would he be as much remembered.
User avatar
beetlenaut
Developer
Posts: 2812
Joined: December 8th, 2007, 3:21 am
Location: Washington State
Contact:

Re: Heir to the Throne Update (Current Focus: S1)

Post by beetlenaut »

Konrad2 wrote: March 15th, 2018, 6:41 pmHe has to live long enough to have children
Why can't he already have children when he joins the player's team?
Campaigns: Dead Water,
The Founding of Borstep,
Secrets of the Ancients,
and WML Guide
Konrad2
Forum Moderator
Posts: 3330
Joined: November 24th, 2010, 6:30 pm

Re: Heir to the Throne Update

Post by Konrad2 »

beetlenaut wrote: March 15th, 2018, 10:04 pm Why can't he already have children when he joins the player's team?
One argument would be that he seems to be quite young. But that's not for certain, which is why I added, that he would hardly be remembered as much if he perished early in the campaign. Konrad has a lot of people who aided him and who are loyal, why would Hadiel be special or even be remembered?
And it seems to be a waste to draw a connection to a seemingly insignificant soldier in Konrads army, when you can easly make him more than that.
Maybe not make it necessary for him to survive, but recall him automatically (except underground?). Make him memorable.
That's pretty much my 'strongest' point. If you say that it's important to have been part of Konrads army, then there are a looooooot of important people at the end of the campaign.

I've reread the Intro of TSG and Deoran is described as a young man, when it's the 9th year of Konrads rule (at least 15(?) years old but not much more).
Any idea how many months/years HttT spans?
User avatar
zookeeper
WML Wizard
Posts: 9742
Joined: September 11th, 2004, 10:40 pm
Location: Finland

Re: Heir to the Throne Update (Current Focus: S1)

Post by zookeeper »

Just because Haldiel is mentioned in passing in TSG's intro doesn't mean he should be special or particularly memorable in HttT. Deoran being Haldiel's grandson is just a little bit of connecting tissue between different storylines, and no one would miss if it had never been there in the first place.
chak_abhi
Posts: 347
Joined: June 24th, 2010, 3:37 pm

Re: Heir to the Throne Update (Current Focus: S1)

Post by chak_abhi »

I have always considered the last scenario (The Battle for Wesnoth) to be a spoilsport at the end of this epic campaign. You just have to burrow down in a small area creating a wall of tough units and see your painstaking efforts going down the drain in front of a load of enemy veterans. I have created an alternative map and code for this scenario which you can try if you want. Mind you, this one might probably be harder than the one being replaced, but at least you have to apply your brains instead of cowering down like rats all along. And there will be no scope for an assassination mission, and no one should be foolish enough to try it!

Code: Select all

#textdomain wesnoth-httt
[scenario]
    id=24_Battle_for_Wesnoth
    name= _ "The Battle for Wesnoth"
    map_data="{campaigns/Heir_To_The_Throne/maps/Weldyn.map}"
    turns=60

    {DEFAULT_SCHEDULE_DUSK}

    next_scenario=25_HttT_Epilogue

    {INTRO_AND_SCENARIO_MUSIC "revelation.ogg" "battle-epic.ogg"}
    {EXTRA_SCENARIO_MUSIC "battle.ogg"}
    {EXTRA_SCENARIO_MUSIC "vengeful.ogg"}
    {EXTRA_SCENARIO_MUSIC "siege_of_laurelmor.ogg"}
    {EXTRA_SCENARIO_MUSIC "legends_of_the_north.ogg"}
    {EXTRA_SCENARIO_MUSIC "suspense.ogg"}
    {EXTRA_SCENARIO_MUSIC "the_city_falls.ogg"}


    [event]
        name=prestart
        [objectives]
            side=1
            [objective]
                description= _ "Defeat Asheviere"
                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]

            {TURNS_RUN_OUT}
            {IS_LAST_SCENARIO}
        [/objectives]

    # Asheviere gets all the villages around Weldyn.
    [capture_village]
    side=5
    terrain=*^Vhc*
    [/capture_village]

    [/event]

    [story]
        [part]
            story= _ "Here we overlook the city of Weldyn. The great city. The ancient city. The city of evil. The city of good. The city of men."
            background=story/arrival_of_the_heir.png
        [/part]
        [part]
            story= _ "I have not looked upon this city for seventeen years. Seventeen years ago, when I should have been at the height of my power. But my strength failed me. I failed, and I cannot atone for it."
            background=story/arrival_of_the_heir.png
        [/part]
        [part]
            story= _ "The battle had been long and hard. We had been defeated. Eldred was slain, but I knew that Asheviere’s wrath would be great. That many innocents would be slain. I had to save the monarchy. I had to save the princes. I made haste to Weldyn, before the guards of Asheviere could get there, to carry out their evil orders."
            background=story/arrival_of_the_heir.png
        [/part]
        [part]
            story= _ "But I failed. I was too late. I entered the chambers of the youngest prince, prince Konrad, just as one of the evil ones ran him through. All was lost. The heirs were slain. Only Asheviere and her daughter had any claim to the throne."
            background=story/arrival_of_the_heir.png
        [/part]
        [part]
            story= _ "Of course, you are surprised by this, but it is the truth. In haste, I vanquished the evil ones who had committed this foul deed. Then I took the little prince’s broken body, and away I rode. Far away, to the land of the elves."
            background=story/arrival_of_the_heir.png
        [/part]
        [part]
            # wmllint: local spelling Parandra
            story= _ "By strange and mysterious fortune, the Elf Lady Parandra had come across a human child. She knew not where he had come from, only that the orcs would have eaten him if it weren’t for her intervention. The elves felt that great fortune smiled upon this man-child. Perhaps that is why this most truthful of peoples agreed to my plan."
            background=story/arrival_of_the_heir.png
        [/part]
        [part]
            story= _ "After burying the little prince, we agreed never to speak of him again. Instead, this orphan child we would call Konrad, and he would be brought up to be king. I would say that I had slain the guards before they had carried out their evil deed, instead of after. No one would ever have to know. And no one did know for certain, until now."
            background=story/arrival_of_the_heir.png
        [/part]
        [part]
            story= _ "I had thought that we could one day make you king, Konrad. But now I see that fate has made a different choice. That despite all of Asheviere’s evil, this Li’sar is fit for the throne. She is the rightful queen. From a long line of kings, stretching all the way back to the seafarers of old from the west."
            background=story/arrival_of_the_heir.png
        [/part]
        [part]
            story= _ "Now, let us not tarry here any longer! The time has come for the heir to the throne to claim it!"
            background=story/arrival_of_the_heir.png
        [/part]
    [/story]

    {HTTT_TRACK {JOURNEY_24_NEW} }

    [side]
        type=Commander
        id=Konrad
        name= _ "Konrad"
        unrenamable=yes
        profile=portraits/konrad-human.png
        side=1
        canrecruit=yes
        controller=human
        gold=400
        team_name=elves
        user_team_name=_"Rebels"
        {FLAG_VARIANT long}
    [/side]

    [side]
        type=Orcish Warlord
        id=Haliel-Maga
        name= _ "Haliel-Maga"
        side=2
        canrecruit=yes
        recruit=Orcish Warrior,Goblin Knight,Goblin Pillager,Orcish Crossbowman,Orcish Assassin,Troll
        gold=300
        [ai]
            {NO_SCOUTS}
            {ATTACK_DEPTH 5 5 6}
            recruitment_pattern=fighter,mixed fighter,archer
            day=dusk,first watch,second watch
            aggression=0.9
            caution=0.2
            village_value=0.2
            grouping=offensive
        [/ai]
        team_name=evil
        user_team_name=_"Asheviere"
        {FLAG_VARIANT6 ragged}
    [/side]

    [side]
        type=General
        id=Heford
        name= _ "Heford"
        side=3
        canrecruit=yes
        recruit=Horseman,Dragoon,Royal Guard,Longbowman,Heavy Infantryman
        [ai]
            {NO_SCOUTS}
            {ATTACK_DEPTH 5 5 6}
            recruitment_pattern=fighter,mixed fighter,archer
            day=dawn,morning,afternoon
            aggression=0.9
            caution=0.2
            village_value=0.2
            grouping=offensive
        [/ai]
        team_name=evil
        user_team_name=_"Asheviere"
        {GOLD 175 300 400}
        {FLAG_VARIANT loyalist}
    [/side]

    [side]
        type=Cavalier
        id=Sir Kalm
        name= _ "Sir Kalm"
        side=4
        canrecruit=yes
        recruit=Horseman,Dragoon,Cavalier,Cavalryman
        [ai]
            recruitment_pattern=fighter
            {NO_SCOUTS}
            {ATTACK_DEPTH 5 5 6}
            recruitment_pattern=fighter,mixed fighter,archer
            day=dawn,morning,afternoon
            aggression=0.9
            caution=0.2
            village_value=0.2
            grouping=offensive
        [/ai]
        team_name=evil
        user_team_name=_"Asheviere"
        {GOLD 175 300 400}
        {FLAG_VARIANT loyalist}
    [/side]

    [side]
        type=Dark Queen
        id=Asheviere
        name= _ "Asheviere"
        side=5
        canrecruit=yes
        recruit=Royal Guard,Heavy Infantryman,Dragoon,Longbowman,Duelist,Halberdier
        {GOLD 300 400 500}
        [ai]
            {NO_SCOUTS}
            {ATTACK_DEPTH 5 5 6}
            recruitment_pattern=fighter,mixed fighter,archer
            day=dawn,morning,afternoon
            aggression=0.9
            caution=0.2
            village_value=0.2
            grouping=offensive
        [/ai]
        team_name=evil
        user_team_name=_"Asheviere"
        {FLAG_VARIANT loyalist}

        {GENERIC_UNIT 5 "Royal Guard" 6 9} {GUARDIAN}
        {GENERIC_UNIT 5 "Halberdier" 10 9} {GUARDIAN}
        {GENERIC_UNIT 5 "Master Bowman" 14 9} {GUARDIAN}
        {GENERIC_UNIT 5 "Halberdier" 18 9} {GUARDIAN}
        {GENERIC_UNIT 5 "Royal Guard" 5 11} {GUARDIAN}
        {GENERIC_UNIT 5 "Master Bowman" 5 13} {GUARDIAN}
        {GENERIC_UNIT 5 "Halberdier" 5 15} {GUARDIAN}
        {GENERIC_UNIT 5 "Master Bowman" 6 16} {GUARDIAN}
        {GENERIC_UNIT 5 "Royal Guard" 10 16} {GUARDIAN}
        {GENERIC_UNIT 5 "Halberdier" 14 16} {GUARDIAN}
        {GENERIC_UNIT 5 "Royal Guard" 18 16} {GUARDIAN}
        {GENERIC_UNIT 5 "Halberdier" 19 11} {GUARDIAN}
        {GENERIC_UNIT 5 "Master Bowman" 19 13} {GUARDIAN}
        {GENERIC_UNIT 5 "Halberdier" 19 15} {GUARDIAN}

    [/side]

    
    
    {STARTING_VILLAGES 2 8}

    [event]
        name=prestart

        [if]
            [variable]
                name=clan_bayar
                numerical_equals=1
            [/variable]
            [then]
                {NAMED_LOYAL_UNIT 1 (Grand Knight) 77 4 (Lord Bayar) (_ "Lord Bayar")}
            [/then]
        [/if]
        [if]
            [variable]
                name=clan_daryn
                numerical_equals=1
            [/variable]
            [then]
                {NAMED_LOYAL_UNIT 1 (Grand Knight) 77 7 (Sir Daryn) (_ "Sir Daryn")}
            [/then]
        [/if]
        [if]
            [variable]
                name=clan_ruga
                numerical_equals=1
            [/variable]
            [then]
                {NAMED_LOYAL_UNIT 1 (Grand Knight) 77 8 (Sir Ruga) (_ "Sir Ruga")}
            [/then]
        [/if]
        [if]
            [variable]
                name=clan_alric
                numerical_equals=1
            [/variable]
            [then]
                {NAMED_LOYAL_UNIT 1 (Grand Knight) 77 9 (Sir Alric) (_ "Sir Alric")}
            [/then]
        [/if]

        {NEED_DELFADOR placement=leader}
        {NEED_KALENZ placement=leader}
        {NEED_LISAR placement=leader}
        [role]
            type=Grand Knight
            side=1
            role=clanboss
        [/role]
        
    [/event]

    [event]
        name=start
   
        [message]
            speaker=Asheviere
            message= _ "So, these rebels come at last to face me, while most of my army is off fighting the fickle clans."
        [/message]
        [message]
            role=clanboss
            message= _ "Wretched wench. Your army is tasting death as we speak. The clans have arrived to unseat you, pretender!"
        [/message]
        [message]
            speaker="Li'sar"
            message= _ "Surrender, mother. The land's blood is spent. I have come to take my rightful place."
        [/message]
        [message]
            speaker=Asheviere
            message= _ "Ahh. My own daughter, a turncoat. So it is true. Such treason my reign must endure! But endure it will."
        [/message]
        [message]
            speaker=Delfador
            message= _ "How long must the people endure your rule? Give the throne to your daughter. She is the rightful heir. We even hold the Sceptre to prove it!"
        [/message]
        [message]
            speaker=Asheviere
            {ASHEVIERE_VARIATION mad}
            message= _ "Delfador! My old tormentor! Treason! Men! Seize them! Kill them! Kill them all!"
        [/message]
    [/event]

    [event]
    name=die
    
        [filter]
        side=2,3,4
        canrecruit=yes
        first_time_only=yes
        [/filter]

        [message]
        speaker=Asheviere
        message= _ "The rebels appear to be more powerful than I had believed! Reinforce the outer walls NOW !"
        [/message]

        {GENERIC_UNIT 5 "Swordsman" 7 20} {GUARDIAN}
        {GENERIC_UNIT 5 "Pikeman" 12 20} {GUARDIAN}
        {GENERIC_UNIT 5 "Shock Trooper" 9 19} {GUARDIAN}
        {GENERIC_UNIT 5 "Javelineer" 5 21} {GUARDIAN}
        {GENERIC_UNIT 5 "Swordsman" 2 20} {GUARDIAN}
        {GENERIC_UNIT 5 "Shock Trooper" 20 23} {GUARDIAN}
        {GENERIC_UNIT 5 "Longbowman" 23 26} {GUARDIAN}
        {GENERIC_UNIT 5 "Swordsman" 27 26} {GUARDIAN}
        {GENERIC_UNIT 5 "Javelineer" 31 26} {GUARDIAN}
        {GENERIC_UNIT 5 "Pikeman" 35 25} {GUARDIAN}
        {GENERIC_UNIT 5 "Swordsman" 39 24} {GUARDIAN}
        {GENERIC_UNIT 5 "Shock Trooper" 40 21} {GUARDIAN}
        {GENERIC_UNIT 5 "Longbowman" 41 19} {GUARDIAN}
        {GENERIC_UNIT 5 "Swordsman" 41 16} {GUARDIAN}
        {GENERIC_UNIT 5 "Shock Trooper" 43 13} {GUARDIAN}
        {GENERIC_UNIT 5 "Pikeman" 43 8} {GUARDIAN}
        {GENERIC_UNIT 5 "Longbowman" 42 4} {GUARDIAN}
        {GENERIC_UNIT 5 "Javelineer" 38 3} {GUARDIAN}
        {GENERIC_UNIT 5 "Swordsman" 35 3} {GUARDIAN}
        {GENERIC_UNIT 5 "Pikeman" 33 1} {GUARDIAN}
        {GENERIC_UNIT 5 "Longbowman" 31 3} {GUARDIAN}
        {GENERIC_UNIT 5 "Javelineer" 27 4} {GUARDIAN}
        {GENERIC_UNIT 5 "Swordsman" 26 1} {GUARDIAN}
        {GENERIC_UNIT 5 "Longbowman" 23 3} {GUARDIAN}
        {GENERIC_UNIT 5 "Shock Trooper" 18 2} {GUARDIAN}
        {GENERIC_UNIT 5 "Pikeman" 15 3} {GUARDIAN}
        {GENERIC_UNIT 5 "Swordsman" 11 2} {GUARDIAN}
        {GENERIC_UNIT 5 "Javelineer" 7 3} {GUARDIAN}
        {GENERIC_UNIT 5 "Longbowman" 3 2} {GUARDIAN}
        

    [/event]

    [event]
    name=die
    
        [filter]
        id=Heford
        [/filter]

        [if]
        [have_unit]
        id=Sir Kalm
        [/have_unit]

        [then]
        [/then]

        [else]

        [message]
        speaker=Asheviere
        message= _ "The rebels appear to be more powerful than I had believed! CALL THE RESERVES !"
        [/message]

        {LOYAL_UNIT 5 "Royal Guard" 9 12} {GUARDIAN}
        {LOYAL_UNIT 5 "Halberdier" 15 12} {GUARDIAN}
        {LOYAL_UNIT 5 "Iron Mauler" 11 15} {GUARDIAN}
        {LOYAL_UNIT 5 "Master Bowman" 14 14} {GUARDIAN}

        [/else]

        [/if]

    [/event]

    [event]
    name=die
    
        [filter]
        id=Sir Kalm
        [/filter]

        [if]
        [have_unit]
        id=Heford
        [/have_unit]

        [then]
        [/then]

        [else]

        [message]
        speaker=Asheviere
        message= _ "The rebels appear to be more powerful than I had believed! CALL THE RESERVES !"
        [/message]

        {LOYAL_UNIT 5 "Royal Guard" 9 12} {GUARDIAN}
        {LOYAL_UNIT 5 "Halberdier" 15 12} {GUARDIAN}
        {LOYAL_UNIT 5 "Iron Mauler" 11 15} {GUARDIAN}
        {LOYAL_UNIT 5 "Master Bowman" 14 14} {GUARDIAN}

        [/else]

        [/if]

    [/event]

    [event]
        name=attacker_hits
        [filter]
            [not]
                type=Gryphon

                [or]
                    id="Li'sar"
                [/or]

                [or]
                    id=Delfador
                [/or]
            [/not]
        [/filter]
        [filter_second]
            id=Asheviere
        [/filter_second]
        [message]
            speaker=unit
            message= _ "Take this, witch!"
        [/message]
    [/event]

    [event]
        name=last breath

        [filter]
            id=Asheviere
        [/filter]

        [object]
            silent=yes

            [filter]
                id=Asheviere
            [/filter]

            [effect]
                apply_to=variation
                name=defeated
            [/effect]
        [/object]

        [delay]
            time=1
        [/delay]

        [animate_unit]
            flag=drop

            [filter]
                id=Asheviere
            [/filter]
        [/animate_unit]
    [/event]

    [event]
        name=last breath
        [filter]
            id=Asheviere
        [/filter]
        [filter_second]
            id="Li'sar"
        [/filter_second]
        [message]
            speaker="Li'sar"
            message= _ "Mother, I swore to end your reign of evil, and now I shall."
        [/message]
        [message]
            speaker=Asheviere
            {ASHEVIERE_VARIATION defeated}
            message= _ "Daughter, I built this kingdom for you. It has all been for you!"
        [/message]
        [message]
            speaker="Li'sar"
            {LISAR_VARIATION mad}
            message= _ "Even now, can you not tell the truth? Your greed has corrupted your soul. You are a monster! A murderess! It pains me to kill you, mother, but you have chosen your own fate. For Wesnoth!"
        [/message]
        [message]
            speaker=narrator
            image="wesnoth-icon.png"
            message= _ "Li’sar strikes a killing blow!"
        [/message]
    [/event]

    [event]
        name=last breath
        [filter]
            id=Asheviere
        [/filter]
        [filter_second]
            id=Konrad
        [/filter_second]
        [message]
            speaker=Konrad
            message= _ "You have hunted me across the countryside, indeed across the years. Here I am, Dark Queen."
        [/message]
        [message]
            speaker=Asheviere
            {ASHEVIERE_VARIATION defeated}
            message= _ "I was sure I had killed you, yet you haunt me still. Be gone, demon! I banish you, ghost!"
        [/message]
        [message]
            speaker=Konrad
            {KONRAD_VARIATION mad}
            message= _ "Oh, wretched lady, I am very real. The land has suffered from your greed and ambition. You will now be held to account for your misdeeds. For the young prince Konrad! For WESNOTH!"
        [/message]
        [message]
            speaker=narrator
            image="wesnoth-icon.png"
            message= _ "Konrad strikes a killing blow!"
        [/message]
    [/event]

    [event]
        name=last breath
        [filter]
            id=Asheviere
        [/filter]
        [filter_second]
            id=Delfador
        [/filter_second]
        [message]
            speaker=Delfador
            message= _ "As I destroyed your son, I now destroy you."
        [/message]
        [message]
            speaker=Asheviere
            {ASHEVIERE_VARIATION defeated}
            message= _ "You were always defiant, wizard, and no one has thwarted my plans as determinedly as you."
        [/message]
        [message]
            speaker=Delfador
            message= _ "I have always been a humble servant of the Crown, and remain such even now."
        [/message]
        [message]
            speaker=Asheviere
            {ASHEVIERE_VARIATION defeated}
            message= _ "Delfador! You utterly disgust me, you sniveling worm. How dare you confront me, your queen?"
        [/message]
        [message]
            speaker=Delfador
            # wmllint: local spelling Archmagi
            message= _ "How dare I? I, High Provost of the Council of Archmagi..."
        [/message]
        [message]
            speaker=Delfador
            # wmllint: local spelling An-Usrukhar
            message= _ "... bearer of the staff of An-Usrukhar, guardian of the book of Crelanu ..."
        [/message]
        [message]
            speaker=Delfador
            message= _ "... Mage Protector of The Kingdom Of The Peoples Of The West-North, Chief Advisor to the <i>Crown</i>..."
        [/message]
        [message]
            speaker=Delfador
            message= _ "... and personal counselor to my King and my <i>friend</i>, Garard the Second, whom you most <i>foully</i> betrayed..."
        [/message]
        [message]
            speaker=Delfador
            {DELFADOR_VARIATION mad}
            message= _ "I am Delfador the Great and TODAY YOU MEET YOUR ATONEMENT!"
        [/message]
        [message]
            speaker=narrator
            image="wesnoth-icon.png"
            message= _ "In a horrific inferno of magical rage, Asheviere is completely annihilated!"
        [/message]

        [scroll_to_unit]
            id=Delfador
        [/scroll_to_unit]
        [color_adjust]
            red=-100
            green=-100
            blue=-100
        [/color_adjust]
        [sound]
            name=fire.wav
        [/sound]
        [color_adjust]
            red=200
            green=0
            blue=0
        [/color_adjust]
        [sound]
            name=lightning.ogg
        [/sound]
        [color_adjust]
            red=100
            green=100
            blue=150
        [/color_adjust]
        [color_adjust]
            red=0
            green=0
            blue=0
        [/color_adjust]
    [/event]

    [event]
        name=last breath
        [filter]
            id=Asheviere
        [/filter]
        [filter_second]
            [not]
                id=Konrad

                [or]
                    id="Li'sar"
                [/or]

                [or]
                    id=Delfador
                [/or]
            [/not]
        [/filter_second]
        [message]
            speaker=Asheviere
            {ASHEVIERE_VARIATION defeated}
            message= _ "Treason! The evil ones have slain me!"
        [/message]
    [/event]

    # Workaround for a bug which might cause the die animation to get skipped
    [event]
        name=last breath

        [filter]
            id=Asheviere
        [/filter]

        [delay]
            time=1
        [/delay]
    [/event]

    [event]
        name=die

        [filter]
            id=Asheviere
        [/filter]

        [music]
            name="main_menu.ogg"
            immediate=yes
            append=no
        [/music]
        [message]
            speaker=Delfador
            message= _ "And so passes Asheviere, the dark queen of Wesnoth."
        [/message]
        [message]
            speaker=Konrad
            message= _ "We have won at last! Li’sar! You will be queen!"
        [/message]
        [message]
            speaker="Li'sar"
            message= _ "Yes, but I won’t ever forget what you have done for me, Konrad, Delfador, and Kalenz."
        [/message]
        [message]
            speaker=Kalenz
            message= _ "So much blood. So much death. For what? A title?"
        [/message]
        [message]
            speaker="Li'sar"
            message= _ "For justice, Elf Lord. We fight because if we do not, evil would prevail. But, I implore you to let the dead have their rest. We have taken victory. Tomorrow is a new day, friends... let us build this kingdom anew."
        [/message]
        [endlevel]
            result=victory
            carryover_report=no
            save=no
        [/endlevel]
    [/event]

    {campaigns/Heir_To_The_Throne/utils/deaths.cfg}
[/scenario]
Attachments
Weldyn.map
(13.19 KiB) Downloaded 528 times
Ceesem
Posts: 7
Joined: January 18th, 2010, 12:39 am

Re: Heir to the Throne Update (Current Focus: S1)

Post by Ceesem »

josteph wrote: September 15th, 2019, 4:33 am
Ceesem wrote: September 14th, 2019, 11:33 pm (7) What, if any, are changes you would have made to the scenario to make it more fun?
Already mentioned it but I'll repeat: the earthquake should come EITHER at 20 turn mark OR after you defeat the trollorc leader WHICHEVER COMES FIRST. Maybe add some more clues as to the second entrance to the undead.
There's a hint already: if you sent any units at all down the southern corridor (from the starting keep) one of them would have said There is a big cave-in south of here. Personally, I discovered the undead this way on my very first playthrough, a few turns into the scenario.

That's not to say we can't add more hints, in the case that the player has defeated the trolls (either all their units, or just the leader) before discovering the undead - if you have specific suggestions could you post them here please? (This thread is for feedback, not for design) We could do, say, an extra line of dialog, or we could end the scenario there and then but have Lionel attack you from behind in a future scenario...
As per request I conjured some specific suggestions:

Like I said in the original thread, I don't remember the "hint". I missed it somehow.
I'd say a better hint would be a dialogue between a unit that triggers the event and Konrad (with the additional benefit that you wouldn't be able accidentally skip the whole thing and not notice):
U: The south wall looks like a cave-in... Wait, did you hear that?
K: No, what?
U: I thought I heard strange muffled sounds coming from behind.
K: ...
(Random Dwarf (if available): You brave surface folk! Scared so easily by any little noise in the tunnels!)
U: Yes, forget it, must have been my imagination.

Then when passing by the lake:
U: Hmm... that sound again...
K: Are you certain it's not the sound of water in the lake?
U: ...

Idea for after defeating the Troll leader before discovering undead (leader is better than all units because the mission objective says destroy enemy leaders)
Konrad: That's it! We've liberated these caves from Trolls and Orcs! Their leader is dead and the Dwarves can pick up the stragglers. We can continue on to find the Sceptre...
Delfador: Not so fast, Konrad. I still sense a dark presence close to us... to the south-east.
Konrad: But we have explored these passages thoroughly, there's nothing here!
Kalenz: Perhaps you want us to double-check in case we have missed something?

Now you could give the player the option to go on (and have Lionel attack you from behind, I like that idea, just make sure that when he attacks he says something that will make the players aware / remind them that they skipped him in this scenario), or stay.

In this version you could even reconsider if the automatic "earthquake" is even necessary but rather leave the player to either discover Lionel manually or have him attack in the next scenario.
User avatar
josteph
Inactive Developer
Posts: 741
Joined: August 19th, 2017, 6:58 pm

Re: Heir to the Throne Update (Current Focus: S1)

Post by josteph »

Thanks for the suggestions!

I like the idea of hearing muffled sounds behind the cave-in, that adds atmosphere. (Even better if we actually play some appropriate sound file!)

The dialogs would be a bit tricky, though, because there are so many variables: Did any units go to the southern corridor? Was Konrad the first unit going down that corridor? Has Konrad recruited any dwarves at all? Have any allied dwarves survived? It's not insurmountable, but it's going to need some thought. (Would you like to try putting together a pull request?)

I also like the idea of Delfador "sensing a dark presence". We may even be able to have some Delfador say something to that effect at the start of the scenario? For example:

On side 1 turn 3 - before the cave-in is opened:

if have a White Mage or a lvl3 or lvl4 mage: (see also comments in S17 about choice of mage speaker there)
mage: Prince Konrad, Delfador, I have a great sense of unease about this place. Might there be undead ahead? Has Lord Relgorn spoken of undead presence in these caves?
Konrad: He has not.
Delfador: We must proceed with caution, Konrad. If not undead, something equally foul must be ahead of us.
otherwise:
Delfador: Kalenz, I have a great sense of unease about this place. Might there be undead ahead? Lord Relgorn spoke of none.
Kalenz: I sense it too, Delfador, but it is vague, distorted… and yet powerful. I am uncertain. Let us proceed with caution.
Tad_Carlucci
Inactive Developer
Posts: 503
Joined: April 24th, 2016, 4:18 pm

Re: Heir to the Throne Update (Current Focus: S1)

Post by Tad_Carlucci »

Designing the decision tree is probably a lot harder than coding it.
I forked real life and now I'm getting merge conflicts.
User avatar
josteph
Inactive Developer
Posts: 741
Joined: August 19th, 2017, 6:58 pm

Re: Heir to the Throne Update (Current Focus: S1)

Post by josteph »

I've sent a PR for another event in that scenario: #4367
User avatar
Ender24
Posts: 8
Joined: July 23rd, 2020, 10:06 pm

Re: Heir to the Throne Update (Current Focus: S1)

Post by Ender24 »

So Heir to the Throne doubles as an extension to the tutorial (which makes sense given it's its narrative continuation and the "default" campaign of sorts) with Delfador providing Conrad advice on gameplay early on like "Haldiel is loyal. This means he doesn't require income." Useful tips for new players. I think there is one more tip that would be worth adding at the Siege of Elensefar: replaying earlier scenarios. In all my recent playthroughs of any campaign, whenever I get really stuck somewhere, the solution always seems to be "replay the previous scenario or two but better this time". It really works like magic. I assume this is well known to veteran players, though they can probably get by just fine on the first attempt. However, this isn't obvious to a new player. The Siege of Elensefar really ups the ante after a relatively easy first few scenarios, and I'd imagine it can be a real brick wall for beginners. Thus I propose we open up the Siege of Elensefar with Konrad's pre-spawned unit explaining to him how if he finds himself lacking in manpower or gold it might be worth replaying prior scenarios for better performance. Just a thought.
Post Reply