Jump to content

Lauriel

Modders
  • Posts

    940
  • Joined

  • Last visited

Posts posted by Lauriel

  1. One of the options in my mod will be to have the surviving cronies in the final battle with Sarevok (BGI portion of EET) flee when Sarevok falls.  I want them to say something and teleport out.  I'll be changing Tazok to run away in a panic, but for now, he teleports with the others.  Tazok works fine.  Angelo works fine.  However, Semaj totally loses his marbles when I attempt it.  He just stands there and casts the wizard teleport spell (from his class (or was it race?) script file) over and over and over and over and over.

    EDIT: No, he just acted like there was no dialogue file attached.  He only lost his mind when I started pulling parts of his brains out.  Why would he ignore the attached dialogue file?  It's attached when I look at it in NI.

    Here's what I have:

    survivors_flee.tpa

    Spoiler

    // Modify existing Tazok dialogue file
    COMPILE EVALUATE_BUFFER ~transitions/dialogues/tazok1.d~ USING ~transitions/languages/%s/dialogues.tra~

    // New Angelo (GALDOR) dialogue file
    COMPILE EVALUATE_BUFFER ~transitions/dialogues/angelo1.d~ USING ~transitions/languages/%s/dialogues.tra~

    // New Semaj dialogue file
    COMPILE EVALUATE_BUFFER ~transitions/dialogues/semaj1.d~ USING ~transitions/languages/%s/dialogues.tra~

    // Attach new Angelo dialogue file to his CRE
    COPY_EXISTING ~GALDOR.CRE~ ~override~
        WRITE_ASCII 0x2cc ~GALDOR~ #8   // dialogue

    // Attach new Semaj dialogue file to his CRE
    COPY_EXISTING ~SEMAJ.CRE~ ~override~
        WRITE_ASCII 0x2cc ~SEMAJ~ #8   // dialogue

    // Area script to trigger dialogues
    COPY_EXISTING ~BG0125.BCS~ ~override~
        DECOMPILE_AND_PATCH BEGIN
            APPEND_FILE TEXT ~transitions/scripts/New0125d.baf~
        END
    BUT_ONLY_IF_IT_CHANGES

     

    relevant portion of dialogues.tra:

    Spoiler

    @2010    = ~Noooo!  Retreat!  Retreat!~ [HOBGL05]    // I really want to hear him yell 'Noooo' like a hobgoblin.  Sorry, but I think it's hilarious.
    @2011    = ~<CHARNAME> is too strong for us!  Run for your lives!~
    @2012    = ~Sarevok has been defeated?!  This cannot be!  Flee while you can!~

     

    tazok1.d

    Spoiler

    APPEND TAZOK2
        IF ~Global("#L_TazokHasFled","GLOBAL",0) !Dead("Tazok") Dead("Sarevok")~ THEN BEGIN Tazok_oh_no
            SAY @2010 // ~Noooo!  Retreat!  Retreat!~ [HOBGL05]
            IF ~~ DO ~SetGlobal("#L_TazokHasFled","GLOBAL",1) ActionOverride("Tazok",CreateVisualEffectObject("SPDIMNDR",Myself)) ActionOverride("Tazok",DestroySelf())~ EXIT
        END
    END

     

    angelo1.d

    Spoiler

    BEGIN GALDOR
    IF ~Global("#L_AngeloHasFled","GLOBAL",0) !Dead("GALDOR") Dead("Sarevok")~ THEN BEGIN Angelo_flee
        SAY @2011 // ~<PRO_HESHE> is too strong for us!  Run for your lives!~
        IF ~~ DO ~SetGlobal("#L_AngeloHasFled","GLOBAL",1) ActionOverride("GALDOR",CreateVisualEffectObject("SPDIMNDR",Myself)) ActionOverride("GALDOR",DestroySelf())~ EXIT
    END

     

    semaj1.d

    Spoiler

    BEGIN SEMAJ
    IF ~Global("#L_SemajHasFled","GLOBAL",0) !Dead("SEMAJ") Dead("Sarevok")~ THEN BEGIN Semaj_flee
        SAY @2012 // ~Sarevok has been defeated?!  This cannot be!  Flee while you can!~
        IF ~~ DO ~SetGlobal("#L_SemajHasFled","GLOBAL",1) ActionOverride("SEMAJ",CreateVisualEffectObject("SPDIMNDR",Myself)) ActionOverride("SEMAJ",DestroySelf())~ EXIT
    END

     

    What New0125d.baf should look like (I think):

    Spoiler

    IF
        Dead("Sarevok")
        Global("#L_SemajHasFled","GLOBAL",0)
    THEN
        RESPONSE #100
            ActionOverride("SEMAJ",StartDialogueNoSet("SEMAJ"))
              Continue()
    END

    IF
        Dead("Sarevok")
        Global("#L_AngeloHasFled","GLOBAL",0)
    THEN
        RESPONSE #100
            ActionOverride("GALDOR",StartDialogueNoSet("GALDOR"))
              Continue()
    END

    IF
        Dead("Sarevok")
        Global("#L_TazokHasFled","GLOBAL",0)
    THEN
        RESPONSE #100
            ActionOverride("Tazok",StartDialogueNoSet("Tazok"))
              Continue()
    END

     

    I even tried the following for New0125d.baf

    Spoiler

    IF
        Dead("Sarevok")
        Global("#L_SemajHasFled","GLOBAL",0)
    THEN
        RESPONSE #100
            SetGlobal("#L_SemajHasFled","GLOBAL",1)
            ActionOverride("SEMAJ",CreateVisualEffectObject("SPDIMNDR",Myself))
            ActionOverride("SEMAJ",DestroySelf())
              Continue()
    END

    IF
        Dead("Sarevok")
        Global("#L_AngeloHasFled","GLOBAL",0)
    THEN
        RESPONSE #100
            ActionOverride("GALDOR",StartDialogueNoSet("GALDOR"))
              Continue()
    END

    IF
        Dead("Sarevok")
        Global("#L_TazokHasFled","GLOBAL",0)
    THEN
        RESPONSE #100
            ActionOverride("Tazok",StartDialogueNoSet("Tazok"))
              Continue()
    END

    Hopefully I've done a simple newb mistake, but for the life of me, I can't get Semaj to work.

    Side request - How do I get them to NOT say their normal introduction spiels   It drowns out the hobgoblin "noooo"  and also sort of is inconsistent with them running away like base cowards.

  2. 12 hours ago, Guest Glimpse said:

    I think Korlasz does not belong there because she was only added with Dragonspear and the Hafiz lines are already in the original game. I'd put Winski to the list instead. I think that what you say about Cythandria is true for all of them. It's the nature of an evil crowd that all try to first of all serve their own goals and the alliance is a means to an end.

    By the time Sarevok is defeated, Winski is already out of commission, isn't he?  In my mod, the Flaming Fist are not far behind me.  I can't imagine that he'd be able to recover before they find him.  He should be in the cells already...not saying that he couldn't have help in escaping via corrupt Flaming Fist who are in cahoots with Angelo.  Hmm.  I'll ponder this.  This could work.  Thanks for the idea!

    EDIT: And Korlasz is only there because it is part of SoD, though I will allow it to be skipped if they player so chooses.  I want my mod to 'add to' not 'take away' from what's already there.

  3. 13 hours ago, Arthas said:

    why did you involve the "law" in the whole matter? I mean, they attack you, and you see them consorting with CM creatures (doppelgangers). 

    They attack you only if they see you.  I was asked to spy, so I spied.  Eltan said he couldn't move against them without proof.  So, being a role player, I made a role-playing decision.  That's all.  I don't go into every house in town to steal items, either.  I know I miss a lot, but hopefully I'll be able to rectify that now that I'm aware you can change the game...though that'll be a different mod. :)

  4. Quote

    Edit: At any rate, they are six, and they seemingly serve Sarevok with a religious devotion rather than as mercenaries. From Zhalimar's dialogue: "There are no hired lackeys for you to bribe here, no mercenaries that slather at the sound of coins. We are servants of Sarevok and Sarevok alone, selected by hand to protect his destiny."

    You see...you try to behave in the game and look at what you miss!  I never saw this dialogue before ... well at least not for 20 years.  Thank you!  This is a much better solution.

  5. 5 minutes ago, Shin said:

    Hm. I always figured he meant Zhalimar Cloudwulfe and his party of faithful (Aasim, Alai, Diyab, Gardush and Naaman) that you do battle with atop the Iron Throne building, and as such never saw it as a plot hole. With Hafiz giving you one scroll, I got the impression he was talking about a singular encounter -- but of course it could be interpreted in different ways.

    Hmmm, good point.  I never thought of those because I normally just sneak past them to get the documentation since I hadn't been given permission from 'the law' to slaughter them all...not that that stopped me from doing so before...  LOL

    I will consider this.

  6. Hafiz the gnome from east of Nashkel Mines says there are 6 that serve Sarevok.  Actually, his exact words are:   "When you do battle against the six who serve your father's killer..."  I'm doing a mod that modifies the transition from BG1 to SoD and/or BG2 for EET.  As I do this, I'm trying to fill in plot holes, like Sarevok's sword and Hafiz's vision.  For 'the six who server your father's killer', I was thinking about the following list but I have an issue with one of them:  Tazok, Semaj, Angelo, Cythandria, Tamoko, and Korlasz.  The one I have an issue with is Cythandria.  She really didn't serve Sarevok.  She served herself.  But I can't think of anyone else who actually knowingly served Sarevok.  There were a number of pawns or those who were in the Iron Throne ranks (which would make them a pawn I guess), but I can't think of anyone who knew what Sarevok was up to and tossed their fate in with him that is still around for the protagonist to 'battle'.

    Any ideas?

  7. I think, if I were an innate spell caster, I'd prefer the ability to duplicate scrolls than an innate identify ability.  Seems more versatile. 

    Scenario:

    I have three scrolls in my inventory.  I use my duplicate scroll ability.  It goes through my inventory (not scroll cases), and makes a list of scrolls it can duplicate, displays that list in a dialogue, I pick my option, and *poof* I have one more of those in my stack of scrolls.  This way you can cap the spell level to duplicate or in some other way limit it so it's not now the most powerful skill on the Sword Coast.

    I'd like this a lot.  Gimme this! :)  I want my sorc to have this, too.  Pretty please!

  8. Poor bards.  They have one thing...  LOL  Well, they have 2 but thieves can pick pocket as well, so we're back to the 'one thing'.  Identifying items is why I keep Garrick with me during BG1...well that and he just says the sweetest things!  'If a man is known by the company he keeps, I shall be thought of gloriously.'.  I mean, how can you NOT love the guy?   And he saves me thousands!

    Just as long as it doesn't make bards useless.

    Can't you give your innate spellcasters a spell that will duplicate scrolls?  Or is that too powerful?  With scroll cases, keeping a few extra scrolls of idenification would make sense.  Sounds like it would be a much easier way to go to me.

     

  9. And now - my cynicism is paying off...

    I modified the predicate line to look like REQUIRE_PREDICATE (MOD_IS_INSTALLED ~myMod.tp2~ 0) OR (MOD_IS_INSTALLED ~myMod.tp2~ 1) OR ((MOD_IS_INSTALLED ~differentMod.tp2~ 0) AND (MOD_IS_INSTALLED ~myMod.tp2~ 2)) @8

    I installed 'differentMod' so it's component 0 was ready to go and I had selected the third option in my mod installation.  So the only portion of the predicate that returned true was OR ((MOD_IS_INSTALLED ~differentMod.tp2~ 0) AND (MOD_IS_INSTALLED ~myMod.tp2~ 2)).  So far so good.

    Then I uninstalled 'different Mod' expecting it to NOT reinstall the component with the REQUIRE_PREDICATE defined above...but it did.  I have no idea why it would have thought OR ((MOD_IS_INSTALLED ~differentMod.tp2~ 0) AND (MOD_IS_INSTALLED ~myMod.tp2~ 2)) was true.  It worked fine when it was just a series of 'OR' statements.  As soon as I put in the AND it lost it's little mind.

    Any thoughts?

  10. 19 minutes ago, Lauriel said:

    I'll give the REQUIRE_PREDICATE (..) or (..) thingie a shot.  We'll see if it likes that or not and if it does, what happens when the last of the required components is uninstalled.  My guess is nothing, but I'm a cynic at heart.

    Oh me of little faith!  Works perfectly.  THANK YOU!

  11. 4 minutes ago, subtledoctor said:

    REQUIRE_PREDICATE (MOD_IS_INSTALLED ~mod.tp2~ ~componentA~) OR (MOD_IS_INSTALLED ~mod.tp2~ ~componentB~)

    I think.  Never actually tried that.  Otherwise,

    Have component A and B both install a dummy marker file, then have component C  REQUIRE_PREDICATE (FILE_EXISTS_IN_GAME ~marker.mrk~)

    I'll give the REQUIRE_PREDICATE (..) or (..) thingie a shot.  We'll see if it likes that or not and if it does, what happens when the last of the required components is uninstalled.  My guess is nothing, but I'm a cynic at heart.

  12. Well, that didn't work.  I guess when you have subcomponents, i.e. options to be selected from for a component, each subcomponent receives it's own number.  So I guess I have to make  subcomponents of my main component FORCED - which I was trying to avoid since it doesn't give you the option to uninstall.  (Yes, I know, I can do it at the command line - but I'm lazy and I don't wanna!)

    Is there no other way for me to find out if the main component is installed no matter which of the options was selected?

  13. I've come up with a different solution.  In the above example, component 'a' was my main component.  Component 'b' was the main component of another mod which does essentially the same thing.  So, in my main component choices, I added the option of just using the other mod's changes.  So now when it comes to the component that requires one or the other ('c'), I can just use REQUIRE_COMPONENT <my tp2> 0 and know that either mine or the other mod's changes are in.

    This works fine, however I don't know how it will work if the other mod's main component is uninstalled.  Will it carry over and uninstall my dependent component like it should?  I will have to experiment to find out. 

  14. Is it possible to require either of 2 components (let's call them 'a' and 'b') to be installed before installing a third ('c') using the REQUIRE_COMPONENT?  Should I have two subcomponents - one that requires 'a', the other that requires 'b'? But if both 'a' and 'b' are installed, the issue is to make sure only one option is made available so the player doesn't get asked about 'c' twice.  Is this where REQUIRE_PREDICATE comes into play?  However, will it be smart enough to know to uninstall 'c' if 'a' gets uninstalled and 'b' never was installed (or visa versa)?  Or is this something where FORBID_COMPONENT would better suit, like:

    BEGIN 'c' REQUIRE_COMPONENT 'a' ...

    BEGIN 'c' REQUIRE_COMPONENT 'b' FORBID_COMPONENT 'a' ...

     

  15. 9 minutes ago, Shin said:

    Thanks. What kind of mod will it be?

    it will be on the same vein as the Endless BG1 mod, but its main objective will be to allow some of SoD to be completed before moving on to BGII.  It always bothered me that, after finding the information that stated Caelar's intended purpose behind the attempts to capture the protagonist, he/she would still merrily continue toward where he/she should NOT be going.  They give you this info, and you're just supposed to ignore it. 

×
×
  • Create New...