Jump to content


Photo

BG1 Incorrect NPC voice trigger


  • Please log in to reply
15 replies to this topic

#1 keika_d

keika_d
  • Member
  • 8 posts

Posted 19 October 2015 - 05:51 PM

First of all hello.

 

I've recently reinstalled Baldur's Gate and thought this time I'd give BGT a spin (I already played through both games with TuTu by the past), and I appear to have encountered a strange bug, that is small but is really bothering me.

 

The thing is that NPC voice clip don't trigger like they are supposed too. There's those 4-or-so funny lines that usually happen when you click a portrait too many time in a row, well they don't happen when I click the portrait/character, instead they randomly trigger when I'm issuing an order to said NPC (clicking on an item/enemy), and as much as one might like the infamous Imoen "plug tail" line it really gets on my nerves when I hear it for the 3rd time in a combat.

 

I've tried to uninstall/clean install, it didn't change anything, in fact in my third re-install, it became clear that this wasn't because of any mod conflict, since I tried to run BGT with the bare minimum and the problem still occured. (I tried to run BG1+ToSC alone and there is no problem on that end so the problem happens after the BGT install.)

 

Also I can't seem to find anyone who experienced the same problem (mostly because I struggle to put it plainly), if that question has already been asked and answered somewhere please do not judge me harshly, I've been looking for an answer for hours and it's almost 4 in the morning here.

 

I use the 4 DVD pack retail (EU) version, with everything installed in english, I patched ToSC with the 5512 patch, then patched ToB with the 26498 patch, then applied the BG2 fixpack and then the BGT install.

 

Here is my WeiDU log:

 

Spoiler

 

Please note that the problem occured before I applied the BGTMUSIC patch.

 

I hope I'm making sense.



#2 Fiann of the Silver Hand

Fiann of the Silver Hand
  • Member
  • 286 posts

Posted 19 October 2015 - 06:55 PM

BGT doesn't respect the 4th wall breaks common throughout BG1.

#3 keika_d

keika_d
  • Member
  • 8 posts

Posted 20 October 2015 - 03:22 AM

BGT doesn't respect the 4th wall breaks common throughout BG1.

I'm sorry, what?

 

Maybe I didn't made myself clear, in my defense it was 4AM, but I don't see how it has to do with the 4th wall. Most of these voice clip adress the player directly, yes, I get that, but it's not the problem I'm having here.

 

A voice sample that should happen when I click on a character instead happens when I order this character around.



#4 The Imp

The Imp

    Not good, see EVIL is better. You'll LIVE.

  • Member
  • 5150 posts

Posted 20 October 2015 - 03:41 AM

Well, what you can do is to open the .cre file with Near Infinity or DLTCEP and reorder the voice lines in the file, or extract the voice files themselves and rename them so the ones you prefer are mostly used. The BG2 uses the less used lines in BG1 more... so this can happen.


Yep, Jarno Mikkola. my Mega Mod FAQ. Use of the BWS, and how to use it(scroll down that post a bit). 
OK, desert dweller, welcome to the sanity, you are free to search for the limit, it's out there, we drew it in the sand. Ouh, actually it was still snow then.. but anyways.


#5 keika_d

keika_d
  • Member
  • 8 posts

Posted 20 October 2015 - 04:58 AM

Okay... So the install indeed messed up the SELECT_ACTION and SELECT_COMMON for every BG1 NPC.

The good news is that BG2 NPC seems unnafected by this.

It still looks like a lot of work to fix.

 

[EDIT]

So I looked up a bit in BG1 Chitin.key, the voice clips were SELECT_RARE and the 3 following nameless attributes.

BG2 only has 2 SELECT_RARE, but 2 additional SELECT_COMMON (SELECT_COMMON5 and 6 namely). The strange thing is that none of the BG1 SELECT_RARE made it in those attributes, but were rather put in SELECT_ACTION 5 through 7.


Edited by keika_d, 20 October 2015 - 07:14 AM.


#6 The Imp

The Imp

    Not good, see EVIL is better. You'll LIVE.

  • Member
  • 5150 posts

Posted 20 October 2015 - 06:35 AM

Calls for Lol's to investigate. :lol: Yep, that's an actual person.

There was similar but way different issue with ToBEx and one of the sound files, you could use one of the many proposed codes of it's secondary solution* to fix the affected creatures( .cre file in the game, sounds start at off set 0x00a4, and progress in the 4 byte off sets dictated by the sndslot.ids in BG2, and in soundoff.ids in BG1)... you of course have to edit the code to point to the right sound files. That's a long thread and all that, but you could read or skip large chunks if you are just interested in how to code the fix in weidu.

 

The primary fix was to not make the ToBEx install "it's fix" by default, that made the mess.


Yep, Jarno Mikkola. my Mega Mod FAQ. Use of the BWS, and how to use it(scroll down that post a bit). 
OK, desert dweller, welcome to the sanity, you are free to search for the limit, it's out there, we drew it in the sand. Ouh, actually it was still snow then.. but anyways.


#7 keika_d

keika_d
  • Member
  • 8 posts

Posted 20 October 2015 - 07:20 AM

Now that you mention it I had the same problem with the chanters, but since the sound file was playing I did not really pay attention to it.

It seems I have quite a read ahead of me now.

 

[EDIT]

The main problem is that I'm going to have to identify which .cre file to patch, while it might not be so bad with BG1 characters, it might get a litte bit more complicated with characters that are also in 2 (I'm looking at you Imoen).

 

At least I know what to do, now I just have to gather patience and time to do it.

 

We all know that modding only gets fun when you have to put come code in it yourself after all. :P


Edited by keika_d, 20 October 2015 - 07:41 AM.


#8 Lollorian

Lollorian

    smiley addict

  • Member
  • 4150 posts

Posted 20 October 2015 - 07:38 AM

Ah very cool :D I'll try to investigate before the weekend :cheers:


"I am the smiley addict, yellow and round, this is my grin :D when I'm usually around :P.
When there's trouble brewing, see me post, cuz it's usually a wall o' yellow and your eyes are toast!!!"

BWP GUIDE - BWP FIXES - impFAQ - NPC LIST - KIT LIST - AREA LIST

GitHub Links : BWP Fixpack | Lolfixer | BWP Trimpack | RezMod


#9 K4thos

K4thos
  • Modder
  • 315 posts

Posted 20 October 2015 - 08:39 AM

In BG1, the rare selection sounds were at the select_action slots 4 through 7, and could be triggered by clicking on the NPC 9 times in a row. In BG2 they are no longer used as (rare) select_common slots, so they need to be rearranged to select_rare slots. As far as I remember Ascenion64 made a decision to not change it, as this has been known for several years and discussed both here and on G3 forums. Anyway you can fix this issue by installing Miloch's optional component called "Extended NPC Soundsets" from DSotSC for BGT (you don't have to install main component)

Edited by K4thos, 20 October 2015 - 09:00 AM.


#10 keika_d

keika_d
  • Member
  • 8 posts

Posted 20 October 2015 - 09:44 AM

 Anyway you can fix this issue by installing Miloch's optional component called "Extended NPC Soundsets" from DSotSC for BGT (you don't have to install main component)

 

First of all thank you for your answer.

 

It indeed is an improvement over the default installation, but there are still some inconsistencies with Imoen's voice where she switches to her BG2 voice. I guess it makes it simpler for me to fix my problem though, since the other NPC don't undergo a drastic change over the games I'll only have to focus on her.



#11 K4thos

K4thos
  • Modder
  • 315 posts

Posted 20 October 2015 - 10:28 AM

uninstall that component and try this code:
It's modified Miloch's code that I'm using in EET. It doesn't add new sounds from BG2. I've changed cre names to use BGT naming convention here but didn't test it on BGT, so let me know if I missed something.

/////                                                  \\\\\
///// NPC soundsets                                    \\\\\
/////                                                  \\\\\

//In BG1, the rare selection sounds were at the select_action slots 4 through 7, and could (apparently) be triggered by clicking on the NPC 9 times in a row
//In BG2 select_action slots 4 through 7 are no longer used as (rare) select_common slots, so they need to be rearranged to select_rare slots
//These changes tries to make EET more close to BG1 and fix some misplaced sounds to different slots.
//code based on Miloch's code available in DSotSC (without additions from BG2 and changes to INNTEREACT.2DA - these can be added via optional EET tweak component)
//more information: http://forums.gibber...showtopic=15178

DEFINE_ACTION_MACRO ~write_soundset~ BEGIN //Workaround for regexp glitch in Gort's WRITE_SOUNDSET
    COPY_EXISTING ~%npc%~ ~override~
        PATCH_IF SOURCE_SIZE > 0x2d3 BEGIN
            FOR (j1 = 0; j1 < 100; j1 += 1) BEGIN
                READ_LONG (0xa4 + j1 * 4) srf
                SET nsrf = EVAL ~%soundset%_%j1%~
                PATCH_IF (overwrite = 0) AND (srf = (0 - 1)) BEGIN //Soft writing
                    WRITE_LONG (0xa4 + j1 * 4) nsrf
                END ELSE PATCH_IF (overwrite = 1) AND NOT (nsrf = (0 - 1)) BEGIN //Forced writing
                    WRITE_LONG (0xa4 + j1 * 4) nsrf
                END ELSE PATCH_IF overwrite = 2 BEGIN //Overwrite regardless
                    WRITE_LONG (0xa4 + j1 * 4) nsrf
                END
            END
        END
    BUT_ONLY
END

//BG1 Edwin
COPY_EXISTING ~EDWIN.CRE~ ~override~
    ~EDWIN2.CRE~ ~override~
    ~EDWIN4.CRE~ ~override~
    ~EDWIN6.CRE~ ~override~

    READ_LONG (0xa4 + 27 * 4) insult3 //SELECT_COMMON2: You are so irritating.
    READ_LONG (0xa4 + 46 * 4) rinsult2 //INSULT3: Typical response; I wonder if they will prove useful at all
    WRITE_LONG (0xa4 + 46 * 4) insult3
    WRITE_LONG (0xa4 + 59 * 4) rinsult2

    READ_LONG (0xa4 + 36 * 4) rare1 //SELECT_ACTION5: Elminster this, Elminster that...
    READ_LONG (0xa4 + 37 * 4) rare2 //SELECT_ACTION6: Please don't disturb me...
    READ_LONG (0xa4 + 38 * 4) rinsult3 //SELECT_ACTION7: They continue under the delusion...
    WRITE_LONG (0xa4 + 60 * 4) rinsult3
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    READ_LONG (0xa4 + 42 * 4) rcomp2 //INTERACTION4: 'Tis welcome you find no fault with one such as I.
    READ_LONG (0xa4 + 43 * 4) rcomp3 //INTERACTION5: Her company is refreshing but I am surprised I find it so.
    WRITE_LONG (0xa4 + 56 * 4) rcomp2
    WRITE_LONG (0xa4 + 57 * 4) rcomp3

    PATCH_FOR_EACH nm IN 10 11 12 13 21 22 23 24 25 29 30 31 35 36 37 38 62 69 72 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//BG1 Imoen
OUTER_SPRINT npc ~IMOEN2.CRE~ //BG1 Imoen (fix soundset inconsistencies)
OUTER_SPRINT soundset ~bg1imoen~
LAM READ_SOUNDSET
OUTER_SET overwrite = 2
ACTION_FOR_EACH npc IN ~IMOEN.CRE~ ~IMOEN1.CRE~ BEGIN
    LAM ~write_soundset~
END

COPY_EXISTING ~IMOEN.CRE~ ~override~
    ~IMOEN1.CRE~ ~override~
    ~IMOEN2.CRE~ ~override~
    ~IMOEN4.CRE~ ~override~
    ~IMOEN61.CRE~ ~override~

    READ_LONG (0xa4 + 9 * 4) bcry4 //BATTLE_CRY1: My blade will cut you down to size!
    READ_LONG (0xa4 + 29 * 4) insult2 //SELECT_COMMON4: Yer a queer fellow.
    WRITE_LONG (0xa4 + 12 * 4) bcry4
    WRITE_LONG (0xa4 + 45 * 4) insult2

    READ_LONG (0xa4 + 35 * 4) rare1 //SELECT_ACTION4: Do ya wanna tell me a story...
    READ_LONG (0xa4 + 36 * 4) inter1 //SELECT_ACTION5: I know nothing more, so leave me to go.
    READ_LONG (0xa4 + 37 * 4) special1 //SELECT_ACTION6: Good on you if you save the day.
    READ_LONG (0xa4 + 38 * 4) rare2 //SELECT_ACTION7: Back home, Puff-Guts would always tell me a story.
    WRITE_LONG (0xa4 + 39 * 4) inter1
    WRITE_LONG (0xa4 + 50 * 4) special1
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    READ_LONG (0xa4 + 3 * 4) insult1 //UNHAPPY_ANNOYED: Mutton-mongerin' riff-raff.
    READ_LONG (0xa4 + 3 * 4) rinsult1 //UNHAPPY_ANNOYED: Mutton-mongerin' riff-raff.
    READ_LONG (0xa4 + 6 * 4) rcomp1 //LEADER: Yer all buffle-headed.
    READ_LONG (0xa4 + 26 * 4) rinsult2 //SELECT_COMMON1: I care not.
    WRITE_LONG (0xa4 + 44 * 4) insult1
    WRITE_LONG (0xa4 + 58 * 4) rinsult1
    WRITE_LONG (0xa4 + 55 * 4) rcomp1
    WRITE_LONG (0xa4 + 59 * 4) rinsult2

    PATCH_FOR_EACH nm IN 9 10 11 13 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//BG1 Jaheira
COPY_EXISTING ~JAHEIR.CRE~ ~override~
    ~JAHEIR2.CRE~ ~override~
    ~JAHEIR4.CRE~ ~override~
    ~JAHEIR6.CRE~ ~override~

    READ_LONG (0xa4 + 27 * 4) rare1 //SELECT_COMMON2: Yes, oh omnipresent authority figure?
    WRITE_LONG (0xa4 + 63 * 4) rare1

    READ_LONG (0xa4 + 35 * 4) rcomp2 //SELECT_ACTION4: What now? Need your pantaloons pressed?!
    READ_LONG (0xa4 + 36 * 4) common2 //SELECT_ACTION5: By your command.
    READ_LONG (0xa4 + 37 * 4) day //SELECT_ACTION6: This would be a good place for a henge!
    READ_LONG (0xa4 + 37 * 4) rare2 //SELECT_ACTION7: If a tree falls in the forest...
    WRITE_LONG (0xa4 + 24 * 4) day
    WRITE_LONG (0xa4 + 27 * 4) common2
    WRITE_LONG (0xa4 + 56 * 4) rcomp2
    WRITE_LONG (0xa4 + 64 * 4) rare2

    READ_LONG (0xa4 + 42 * 4) insult3 //INTERACTION4: Do you claim to fight evil while you are diabolic yourself?
    READ_LONG (0xa4 + 47 * 4) rcomp1 //COMPLIMENT1: Seldom do I find so little fault with someone. I hope it lasts.
    WRITE_LONG (0xa4 + 46 * 4) insult3
    WRITE_LONG (0xa4 + 55 * 4) rcomp1

    PATCH_FOR_EACH nm IN 10 11 12 13 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//BG1 Minsc
COPY_EXISTING ~MINSC.CRE~ ~override~
    ~MINSC2.CRE~ ~override~
    ~MINSC4.CRE~ ~override~
    ~MINSC6.CRE~ ~override~

    READ_LONG (0xa4 + 35 * 4) rare1 //SELECT_ACTION4: Fool me once, shame on you...
    READ_LONG (0xa4 + 36 * 4) bcry4 //SELECT_ACTION5: When the going gets tough...
    READ_LONG (0xa4 + 37 * 4) rare2 //SELECT_ACTION6: There be safety in numbers...
    READ_LONG (0xa4 + 38 * 4) bcry5 //SELECT_ACTION7: Make way evil! I'm armed...
    WRITE_LONG (0xa4 + 12 * 4) bcry4
    WRITE_LONG (0xa4 + 13 * 4) bcry5
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    READ_LONG (0xa4 + 41 * 4) insult3 //INTERACTION3: Lay a finger on what I protect and forevermore ye will answer nature's call with a hook!
    READ_LONG (0xa4 + 43 * 4) special1 //INTERACTION5: Play on, bard! 'Tis sweet music to my furry friend.
    WRITE_LONG (0xa4 + 46 * 4) insult3
    WRITE_LONG (0xa4 + 50 * 4) special1

    PATCH_FOR_EACH nm IN 10 11 22 24 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//BG1 Viconia
COPY_EXISTING ~VICONI.CRE~ ~override~
    ~VICONI4.CRE~ ~override~
    ~VICONI61.CRE~ ~override~

    READ_LONG (0xa4 + 35 * 4) special2 //SELECT_ACTION4: I pity you for your short life span.
    READ_LONG (0xa4 + 36 * 4) rare1 //SELECT_ACTION5: I am born of a noble race.
    READ_LONG (0xa4 + 37 * 4) special3 //SELECT_ACTION6: Shar is a goddess of conviction and purpose.
    READ_LONG (0xa4 + 38 * 4) rare2 //SELECT_ACTION7: I'll go where you wish...
    WRITE_LONG (0xa4 + 51 * 4) special2
    WRITE_LONG (0xa4 + 52 * 4) special3
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    READ_LONG (0xa4 + 43 * 4) insult2 //INTERACTION5: If you wish to die, I am pleased to assist.
    WRITE_LONG (0xa4 + 45 * 4) insult2

    PATCH_FOR_EACH nm IN 10 11 12 13 22 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Ajantis
COPY_EXISTING ~AJANTI.CRE~ ~override~
    ~AJANTI4.CRE~ ~override~
    ~AJANTI6.CRE~ ~override~

    READ_LONG (0xa4 + 39 * 4) insult2 //INTERACTION1: Your actions fly in the face of everything Helm holds sacred.
    READ_LONG (0xa4 + 40 * 4) insult3 //INTERACTION2: There is not but good and evil. I suspect you are of the latter.
    READ_LONG (0xa4 + 41 * 4) rinsult3 //INTERACTION3: Evil must be purged wherever it is found, even among companions.
    WRITE_LONG (0xa4 + 45 * 4) insult2
    WRITE_LONG (0xa4 + 46 * 4) insult3
    WRITE_LONG (0xa4 + 60 * 4) rinsult3

    READ_LONG (0xa4 + 35 * 4) rare1 //SELECT_ACTION4: We must always strive to be role models to the meek.
    READ_LONG (0xa4 + 36 * 4) rare2 //SELECT_ACTION5: Duty to one's cause outweighs all.
    READ_LONG (0xa4 + 37 * 4) bcry2 //SELECT_ACTION6: Evil will always fail against courage and honor.
    READ_LONG (0xa4 + 38 * 4) bcry3 //SELECT_ACTION7: Evil must be purged without mercy.
    WRITE_LONG (0xa4 + 10 * 4) bcry2
    WRITE_LONG (0xa4 + 11 * 4) bcry3
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    PATCH_FOR_EACH nm IN 12 13 24 25 29 30 31 35 36 37 38 61 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Alora
COPY_EXISTING ~ALORA.CRE~ ~override~
    ~ALORA6.CRE~ ~override~

    READ_LONG (0xa4 + 34 * 4) rcomp1 //SELECT_ACTION3: Happy to help!
    READ_LONG (0xa4 + 41 * 4) rcomp2 //INTERACTION3: Everyone is basically decent, once you get them to unwrinkle their faces.
    READ_LONG (0xa4 + 55 * 4) rinsult3 //RESPONSE_TO_COMPLIMENT1: Oh, someone needs a tickle. Someone needs a tickle! Smile already! Yeesh!
    WRITE_LONG (0xa4 + 55 * 4) rcomp1
    WRITE_LONG (0xa4 + 56 * 4) rcomp2
    WRITE_LONG (0xa4 + 60 * 4) rinsult3

    READ_LONG (0xa4 + 35 * 4) rcomp3 //SELECT_ACTION4: I'm so sweet I've got rotting teeth and gums!
    READ_LONG (0xa4 + 36 * 4) rare1 //SELECT_ACTION5: C'mon people now, smile on your brother. Everybody get together, try to love one another right now.
    READ_LONG (0xa4 + 37 * 4) bcry2 //SELECT_ACTION6: I don't think you're happy enough! I'll teach you to be happy!
    READ_LONG (0xa4 + 38 * 4) rare2 //SELECT_ACTION7: Happy happy joy joy, happy happy joy joy
    WRITE_LONG (0xa4 + 10 * 4) bcry2
    WRITE_LONG (0xa4 + 57 * 4) rcomp3
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    PATCH_FOR_EACH nm IN 11 12 13 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Branwen
COPY_EXISTING ~BRANWE.CRE~ ~override~
    ~BRANWE5.CRE~ ~override~

    READ_LONG (0xa4 + 41 * 4) insult3 //INTERACTION3: Stay well clear of me, you foul speakin' heretic!
    READ_LONG (0xa4 + 42 * 4) comp2 //INTERACTION4: Tempus would guide your wayward soul, if you let him.
    READ_LONG (0xa4 + 43 * 4) rinsult3 //INTERACTION5: May Tempus someday show you the error of your ways.
    WRITE_LONG (0xa4 + 46 * 4) insult3
    WRITE_LONG (0xa4 + 48 * 4) comp2
    WRITE_LONG (0xa4 + 60 * 4) rinsult3

    READ_LONG (0xa4 + 35 * 4) bcry2 //SELECT_ACTION4: 'Tis better to die on your feet, than live on your knees.
    READ_LONG (0xa4 + 36 * 4) bcry3 //SELECT_ACTION5: May Auril bestow the frost kiss upon our enemies.
    READ_LONG (0xa4 + 37 * 4) rare1 //SELECT_ACTION6: By Valkur's strapping buttocks.
    READ_LONG (0xa4 + 38 * 4) rare2 //SELECT_ACTION7: A god's favor is fickle, at best.
    WRITE_LONG (0xa4 + 10 * 4) bcry2
    WRITE_LONG (0xa4 + 11 * 4) bcry3
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    PATCH_FOR_EACH nm IN 12 13 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Coran
COPY_EXISTING ~CORAN.CRE~ ~override~
    ~CORAN5.CRE~ ~override~

    READ_LONG (0xa4 + 42 * 4) insult1 //INTERACTION4: If you weren't such a self serving wench... don't think I'd find you half as attractive.
    WRITE_LONG (0xa4 + 44 * 4) insult1

    READ_LONG (0xa4 + 35 * 4) bcry2 //SELECT_ACTION4: The storm is always preferable to the calm.
    READ_LONG (0xa4 + 36 * 4) rare1 //SELECT_ACTION5: The essence of pleasure is spontaneity.
    READ_LONG (0xa4 + 37 * 4) bcry3 //SELECT_ACTION6: You can't live without a little adventure.
    READ_LONG (0xa4 + 38 * 4) rare2 //SELECT_ACTION7: Luck is always on the side of the romantic.
    WRITE_LONG (0xa4 + 10 * 4) bcry2
    WRITE_LONG (0xa4 + 11 * 4) bcry3
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    PATCH_FOR_EACH nm IN 12 13 21 22 23 24 25 29 30 31 35 36 37 38 61 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Dynaheir
COPY_EXISTING ~DYNAHE.CRE~ ~override~
    ~DYNAHE2.CRE~ ~override~
    ~DYNAHE4.CRE~ ~override~
    ~DYNAHE6.CRE~ ~override~

    READ_LONG (0xa4 + 35 * 4) rare1 //SELECT_ACTION4: Go here! Do that! What about MY needs?
    READ_LONG (0xa4 + 36 * 4) rinsult2 //SELECT_ACTION5: These boots were made for walking...
    READ_LONG (0xa4 + 37 * 4) insult2 //SELECT_ACTION6: Who art thou to touch me like you know me?!
    READ_LONG (0xa4 + 38 * 4) rare2 //SELECT_ACTION7: Watch thee where thy place that pointer!
    WRITE_LONG (0xa4 + 45 * 4) insult2
    WRITE_LONG (0xa4 + 59 * 4) rinsult2
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    PATCH_FOR_EACH nm IN 10 11 12 13 21 23 24 25 29 30 31 35 36 37 38 49 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Eldoth
COPY_EXISTING ~ELDOTH.CRE~ ~override~
    ~ELDOTH5.CRE~ ~override~

    READ_LONG (0xa4 + 26 * 4) insult3 //SELECT_COMMON1: You're so dull.
    WRITE_LONG (0xa4 + 46 * 4) insult3
    READ_LONG (0xa4 + 43 * 4) rinsult3 //INTERACTION5: Stop your whining wench.
    WRITE_LONG (0xa4 + 46 * 4) rinsult3

    READ_LONG (0xa4 + 35 * 4) special1 //SELECT_ACTION4: There is no evil but stupidity.
    READ_LONG (0xa4 + 36 * 4) rare1 //SELECT_ACTION5: There is no good or evil...
    READ_LONG (0xa4 + 37 * 4) special2 //SELECT_ACTION6: Only shallow people don't judge by appearance.
    READ_LONG (0xa4 + 38 * 4) rare2 //SELECT_ACTION7: The first duty in life...
    WRITE_LONG (0xa4 + 50 * 4) special1
    WRITE_LONG (0xa4 + 51 * 4) special2
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    PATCH_FOR_EACH nm IN 10 11 12 13 21 22 23 24 25 29 30 31 35 36 37 38 61 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Faldorn
COPY_EXISTING ~FALDOR.CRE~ ~override~
    ~FALDOR5.CRE~ ~override~

    READ_LONG (0xa4 + 35 * 4) rare1 //SELECT_ACTION4: Why must man always despoil...
    READ_LONG (0xa4 + 36 * 4) rare2 //SELECT_ACTION5: Man is the least grateful...
    READ_LONG (0xa4 + 37 * 4) insult2 //SELECT_ACTION6: Oak Father, please forgive your wayward brood.
    READ_LONG (0xa4 + 38 * 4) rinsult3 //SELECT_ACTION7: I am angry, don't talk to me now.
    WRITE_LONG (0xa4 + 45 * 4) insult2
    WRITE_LONG (0xa4 + 60 * 4) rinsult3
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    PATCH_FOR_EACH nm IN 10 11 12 13 23 24 25 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Garrick
COPY_EXISTING ~GARRIC.CRE~ ~override~
    ~GARRIC2.CRE~ ~override~
    ~GARRIC4.CRE~ ~override~
    ~GARRIC6.CRE~ ~override~

    READ_LONG (0xa4 + 43 * 4) special2 //INTERACTION5: A girl of beauty is a joy forever.
    WRITE_LONG (0xa4 + 51 * 4) special2

    READ_LONG (0xa4 + 35 * 4) insult2 //SELECT_ACTION4: Give and spend, and the Gods will send.
    READ_LONG (0xa4 + 36 * 4) rare1 //SELECT_ACTION5: Make short the miles with talk and smiles.
    READ_LONG (0xa4 + 37 * 4) special3 //SELECT_ACTION6: Love makes the world go round.
    READ_LONG (0xa4 + 38 * 4) rare2 //SELECT_ACTION7: Music has charms to soothe the savage breast.
    WRITE_LONG (0xa4 + 45 * 4) insult2
    WRITE_LONG (0xa4 + 52 * 4) special3
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    PATCH_FOR_EACH nm IN 10 11 12 13 23 24 25 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Kagain
COPY_EXISTING ~KAGAIN.CRE~ ~override~
    ~KAGAIN2.CRE~ ~override~
    ~KAGAIN4.CRE~ ~override~
    ~KAGAIN6.CRE~ ~override~

    READ_LONG (0xa4 + 35 * 4) rare1 //SELECT_ACTION4: The only thing better than gold...
    READ_LONG (0xa4 + 36 * 4) insult3 //SELECT_ACTION5: You pugs are starting to piss me off.
    READ_LONG (0xa4 + 37 * 4) rare2 //SELECT_ACTION6: Gold runs the world kid...
    READ_LONG (0xa4 + 38 * 4) special3 //SELECT_ACTION7: If I had a copper for every moron...
    WRITE_LONG (0xa4 + 46 * 4) insult3
    WRITE_LONG (0xa4 + 52 * 4) special3
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    PATCH_FOR_EACH nm IN 2 10 11 12 13 22 24 25 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Khalid
COPY_EXISTING ~KHALID.CRE~ ~override~
    ~KHALID2.CRE~ ~override~
    ~KHALID4.CRE~ ~override~
    ~KHALID6.CRE~ ~override~

    READ_LONG (0xa4 + 42 * 4) insult2 //INTERACTION4: Usually everyone proves themselves, but there is something... disturbing about you.
    READ_LONG (0xa4 + 43 * 4) insult3 //INTERACTION5: I had thought none could be so beyond the bounds of goodness. Certainly you need h-help.
    READ_LONG (0xa4 + 50 * 4) rcomp2 //SPECIAL1: Your honesty is refreshing, but lace it well with tact.
    WRITE_LONG (0xa4 + 45 * 4) insult2
    WRITE_LONG (0xa4 + 46 * 4) insult3
    WRITE_LONG (0xa4 + 56 * 4) rcomp2

    READ_LONG (0xa4 + 35 * 4) special1 //SELECT_ACTION4: If at first I don't succeed...
    READ_LONG (0xa4 + 36 * 4) special2 //SELECT_ACTION5: Th-Th-That's all, Folks!
    READ_LONG (0xa4 + 37 * 4) rare1 //SELECT_ACTION6: Ch-ch-ch-... ch-ch-ch-chia
    READ_LONG (0xa4 + 38 * 4) rare2 //SELECT_ACTION7: Click on someone your own size!
    WRITE_LONG (0xa4 + 46 * 4) insult3
    WRITE_LONG (0xa4 + 52 * 4) special3
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    PATCH_FOR_EACH nm IN 10 11 12 13 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Kivan
COPY_EXISTING ~KIVAN.CRE~ ~override~
    ~KIVAN4.CRE~ ~override~
    ~KIVAN6.CRE~ ~override~

    READ_LONG (0xa4 + 35 * 4) rcomp3 //SELECT_ACTION4: There is a time for talk...
    READ_LONG (0xa4 + 36 * 4) special2 //SELECT_ACTION5: My soul aches for my lost Deheriana.
    READ_LONG (0xa4 + 37 * 4) rcomp2 //SELECT_ACTION6: We must not waste time on idle chatter.
    READ_LONG (0xa4 + 38 * 4) special1 //SELECT_ACTION7: My need for revenge gives me strength to go on.
    WRITE_LONG (0xa4 + 50 * 4) special1
    WRITE_LONG (0xa4 + 51 * 4) special2
    WRITE_LONG (0xa4 + 56 * 4) rcomp2
    WRITE_LONG (0xa4 + 57 * 4) rcomp3
    WRITE_LONG (0xa4 + 63 * 4) rcomp2
    WRITE_LONG (0xa4 + 64 * 4) rcomp3
    PATCH_FOR_EACH nm IN 10 11 12 13 21 24 25 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Montaron
COPY_EXISTING ~MONTAR.CRE~ ~override~
    ~MONTAR2.CRE~ ~override~
    ~MONTAR4.CRE~ ~override~
    ~MONTAR6.CRE~ ~override~

    READ_LONG (0xa4 + 41 * 4) rinsult3 //INTERACTION3: Do ye truly want yer last words to be so stupid?
    WRITE_LONG (0xa4 + 60 * 4) rinsult3

    READ_LONG (0xa4 + 35 * 4) rare1 //SELECT_ACTION4: I warrant your attention?!...
    READ_LONG (0xa4 + 36 * 4) bcry2 //SELECT_ACTION5: Arrrr!
    READ_LONG (0xa4 + 37 * 4) rare2 //SELECT_ACTION6: Leave me be, lest your head leave yer neck.
    READ_LONG (0xa4 + 38 * 4) rcomp2 //SELECT_ACTION7: What part of "I'm a loner" do ye not understand?!
    WRITE_LONG (0xa4 + 10 * 4) bcry2
    WRITE_LONG (0xa4 + 56 * 4) rcomp2
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    PATCH_FOR_EACH nm IN 11 12 13 22 25 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Quayle
COPY_EXISTING ~BGQUAYLE.CRE~ ~override~
    ~QUAYLE4.CRE~ ~override~
    ~QUAYLE6.CRE~ ~override~

    READ_LONG (0xa4 + 32 * 4) bcry1 //SELECT_ACTION1: I'm too smart for this.
    WRITE_LONG (0xa4 + 9 * 4) bcry1

    READ_LONG (0xa4 + 35 * 4) rare1 //SELECT_ACTION4: I am so smart!...
    READ_LONG (0xa4 + 36 * 4) bcry2 //SELECT_ACTION5: Shake a paw! C'mon, shake a paw!
    READ_LONG (0xa4 + 37 * 4) insult3 //SELECT_ACTION6: Feel my amazing brain! Go on, touch it!
    READ_LONG (0xa4 + 38 * 4) rare2 //SELECT_ACTION7: I wile away the hours...
    WRITE_LONG (0xa4 + 10 * 4) bcry2
    WRITE_LONG (0xa4 + 46 * 4) insult3
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    PATCH_FOR_EACH nm IN 11 12 13 22 24 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Safana
COPY_EXISTING ~SAFANA.CRE~ ~override~
    ~SAFANA4.CRE~ ~override~
    ~SAFANA6.CRE~ ~override~

    READ_LONG (0xa4 + 40 * 4) rinsult3 //INTERACTION2: You have about as much appeal as a rutting owlbear.
    READ_LONG (0xa4 + 41 * 4) rcomp3 //INTERACTION3: You think I'd surrender myself to the likes of you, that's a laugh.
    READ_LONG (0xa4 + 33 * 4) bcry1 //SELECT_ACTION2: With pleasure.
    WRITE_LONG (0xa4 + 9 * 4) bcry1
    WRITE_LONG (0xa4 + 57 * 4) rcomp3
    WRITE_LONG (0xa4 + 60 * 4) rinsult3

    READ_LONG (0xa4 + 35 * 4) rare1 //SELECT_ACTION4: Between two evils I always choose the one I haven't tried.
    READ_LONG (0xa4 + 36 * 4) rcomp2 //SELECT_ACTION5: I love it when you speak to me that way.
    READ_LONG (0xa4 + 37 * 4) rare2 //SELECT_ACTION6: When I'm good I'm very very good...
    READ_LONG (0xa4 + 38 * 4) special1 //SELECT_ACTION7: Everyone in this party is entitled to my opinion.
    WRITE_LONG (0xa4 + 50 * 4) special1
    WRITE_LONG (0xa4 + 56 * 4) rcomp2
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    PATCH_FOR_EACH nm IN 10 11 12 13 21 23 24 25 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Shar-Teel
COPY_EXISTING ~SHARTE.CRE~ ~override~
    ~SHARTE4.CRE~ ~override~
    ~SHARTE6.CRE~ ~override~

    READ_LONG (0xa4 + 35 * 4) rare1 //SELECT_ACTION4: Life is made fun by crushing your enemies.
    READ_LONG (0xa4 + 36 * 4) insult3 //SELECT_ACTION5: Sometimes the smell of a man makes me sick to my stomach.
    READ_LONG (0xa4 + 37 * 4) comp2 //SELECT_ACTION6: Steel is the only thing that a woman can depend upon.
    READ_LONG (0xa4 + 38 * 4) rare2 //SELECT_ACTION7: Men never think with their minds.
    WRITE_LONG (0xa4 + 46 * 4) insult3
    WRITE_LONG (0xa4 + 48 * 4) comp2
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    PATCH_FOR_EACH nm IN 10 11 12 13 21 22 23 24 25 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Skie
COPY_EXISTING ~SKIE.CRE~ ~override~
    ~SKIE6.CRE~ ~override~

    READ_LONG (0xa4 + 41 * 4) rinsult3 //INTERACTION3: Why do you always have to make fun of me! I hate you! Get away from me!
    READ_LONG (0xa4 + 48 * 4) happy //COMPLIMENT2: I feel safe with you in the party.
    WRITE_LONG (0xa4 + 2 * 4) happy
    WRITE_LONG (0xa4 + 60 * 4) rinsult3

    READ_LONG (0xa4 + 35 * 4) rare1 //SELECT_ACTION4: Do you like my perfume.
    READ_LONG (0xa4 + 36 * 4) rare2 //SELECT_ACTION5: It's been so long since I've had a hot meal.
    READ_LONG (0xa4 + 37 * 4) bcry1 //SELECT_ACTION6: Lets go shopping!
    READ_LONG (0xa4 + 38 * 4) special1 //SELECT_ACTION7: I want to go home.
    WRITE_LONG (0xa4 + 9 * 4) bcry1
    WRITE_LONG (0xa4 + 50 * 4) special1
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    PATCH_FOR_EACH nm IN 10 11 12 13 21 22 23 24 25 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Tiax
COPY_EXISTING ~TIAX.CRE~ ~override~
    ~TIAX4.CRE~ ~override~
    ~TIAX6.CRE~ ~override~

    READ_LONG (0xa4 + 43 * 4) insult2 //INTERACTION5: Tiax and his greatness shall squash you as a bug, you... you... insolent BUG!
    WRITE_LONG (0xa4 + 45 * 4) insult2

    READ_LONG (0xa4 + 35 * 4) insult3 //SELECT_ACTION4: Ya lil' monkey-spanker.
    READ_LONG (0xa4 + 36 * 4) special3 //SELECT_ACTION5: When Tiax rules, breeches shall not ride up so wedge-like!
    READ_LONG (0xa4 + 37 * 4) rare1 //SELECT_ACTION6: Tiax does as ye will, but one day BOOM! He rules!
    READ_LONG (0xa4 + 38 * 4) rare2 //SELECT_ACTION7: The day comes when TIAX will point and click!
    WRITE_LONG (0xa4 + 46 * 4) insult3
    WRITE_LONG (0xa4 + 52 * 4) special3
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    PATCH_FOR_EACH nm IN 10 11 12 13 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Xan
COPY_EXISTING ~BGXAN.CRE~ ~override~
    ~XAN4.CRE~ ~override~
    ~XAN6.CRE~ ~override~

    READ_LONG (0xa4 + 32 * 4) rinsult3 //SELECT_ACTION1: Whatever.
    READ_LONG (0xa4 + 60 * 4) rcomp1 //RESPONSE_TO_INSULT3: I hope what you say was well intentioned.
    WRITE_LONG (0xa4 + 55 * 4) rcomp1
    WRITE_LONG (0xa4 + 60 * 4) rinsult3

    READ_LONG (0xa4 + 35 * 4) bcry2 //SELECT_ACTION4: It is hardly worth the effort of trying.
    READ_LONG (0xa4 + 36 * 4) rare1 //SELECT_ACTION5: We delude ourselves to think our pitiable band...
    READ_LONG (0xa4 + 37 * 4) rare2 //SELECT_ACTION6: Let us save our effort and just lie down and die.
    READ_LONG (0xa4 + 38 * 4) bcry3 //SELECT_ACTION7: I'll do what I can, but expect very little.
    WRITE_LONG (0xa4 + 10 * 4) bcry2
    WRITE_LONG (0xa4 + 11 * 4) bcry3
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    PATCH_FOR_EACH nm IN 12 13 23 25 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Xzar
COPY_EXISTING ~BGXZAR.CRE~ ~override~
    ~XZAR2.CRE~ ~override~
    ~XZAR4.CRE~ ~override~
    ~XZAR6.CRE~ ~override~

    READ_LONG (0xa4 + 35 * 4) rcomp2 //SELECT_ACTION4: Tell me 'bout the rabbits.
    READ_LONG (0xa4 + 36 * 4) rare1 //SELECT_ACTION5: Those the gods wish to destroy, they first make mad!
    READ_LONG (0xa4 + 37 * 4) rare2 //SELECT_ACTION6: I ate his liver with a nice Chianti and some fava beans.
    READ_LONG (0xa4 + 38 * 4) bcry2 //SELECT_ACTION7: I'll teach yer grandmother to suck eggs!
    WRITE_LONG (0xa4 + 10 * 4) bcry2
    WRITE_LONG (0xa4 + 56 * 4) rcomp2
    WRITE_LONG (0xa4 + 63 * 4) rare1
    WRITE_LONG (0xa4 + 64 * 4) rare2

    PATCH_FOR_EACH nm IN 11 12 13 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

//Yeslick
COPY_EXISTING ~YESLIC.CRE~ ~override~

    READ_LONG (0xa4 + 40 * 4) insult2 //INTERACTION2: 'Twould be good if you tithed a few coins now and then. The favor of gods is worth a few gold.
    READ_LONG (0xa4 + 42 * 4) rinsult3 //INTERACTION4: Friendships last when gold is long gone. Perhaps you should be a little nicer to the group.
    READ_LONG (0xa4 + 43 * 4) insult3 //INTERACTION5: I've been through enough without suffering you as well. Begone.
    READ_LONG (0xa4 + 59 * 4) special2 //RESPONSE_TO_INSULT2: We fight for what's right, but you needn't take such pleasure in it.
    WRITE_LONG (0xa4 + 45 * 4) insult2
    WRITE_LONG (0xa4 + 46 * 4) insult3
    WRITE_LONG (0xa4 + 51 * 4) special2
    WRITE_LONG (0xa4 + 60 * 4) rinsult3

    READ_LONG (0xa4 + 35 * 4) special3 //SELECT_ACTION4: My father was a miner. And my mother was a miner before him.
    READ_LONG (0xa4 + 36 * 4) rinsult2 //SELECT_ACTION5: Keep yer straw and sticks! Only Stone protects the pigs!
    READ_LONG (0xa4 + 37 * 4) rare2 //SELECT_ACTION6: You load sixteen tons, what do ya get?...
    WRITE_LONG (0xa4 + 52 * 4) special3
    WRITE_LONG (0xa4 + 59 * 4) rinsult2
    WRITE_LONG (0xa4 + 63 * 4) special3
    WRITE_LONG (0xa4 + 64 * 4) rare2

    PATCH_FOR_EACH nm IN 10 11 12 13 21 22 25 29 30 31 35 36 37 38 62 BEGIN
        WRITE_LONG (0xa4 + nm * 4) (0 - 1)
    END
BUT_ONLY

 

 


Edited by K4thos, 20 October 2015 - 10:38 AM.


#12 keika_d

keika_d
  • Member
  • 8 posts

Posted 20 October 2015 - 11:14 AM

This is what I get after trying to run this code:

 

[C:\Games\Black Isle\Baldurs Gate Trilogy\setup-bg1npcvfix.exe] WeiDU version 23600
In state 172, I expected one of these tokens:
[247] BACKUP
Parse error <state 172> at DEFINE_ACTION_MACRO

[SETUP-BG1NPCVFIX.TP2] PARSE ERROR at line 1 column 0-18
Near Text: DEFINE_ACTION_MACRO
GLR parse error

[SETUP-BG1NPCVFIX.TP2] ERROR at line 1 column 0-18
Near Text: DEFINE_ACTION_MACRO
Parsing.Parse_error
ERROR: parsing  [SETUP-BG1NPCVFIX.TP2]: Parse_error
ERROR: problem with parsing TP file [SETUP-BG1NPCVFIX.TP2]: Parsing.Parse_error

FATAL ERROR: Parsing.Parse_error

Press ENTER to exit.




#13 Roxanne

Roxanne

    Modder

  • Member
  • 3564 posts

Posted 20 October 2015 - 11:28 AM

This is what I get after trying to run this code:

 

[C:\Games\Black Isle\Baldurs Gate Trilogy\setup-bg1npcvfix.exe] WeiDU version 23600
In state 172, I expected one of these tokens:
[247] BACKUP
Parse error <state 172> at DEFINE_ACTION_MACRO

[SETUP-BG1NPCVFIX.TP2] PARSE ERROR at line 1 column 0-18
Near Text: DEFINE_ACTION_MACRO
GLR parse error

[SETUP-BG1NPCVFIX.TP2] ERROR at line 1 column 0-18
Near Text: DEFINE_ACTION_MACRO
Parsing.Parse_error
ERROR: parsing  [SETUP-BG1NPCVFIX.TP2]: Parse_error
ERROR: problem with parsing TP file [SETUP-BG1NPCVFIX.TP2]: Parsing.Parse_error

FATAL ERROR: Parsing.Parse_error

Press ENTER to exit.


It simply needs a tp2 header, something like this //A Folder named Sounfix needs to exist in the game directory

BACKUP ~Soundfix/backup~
AUTHOR ~keika_d~
VERSION ~v01~

BEGIN ~NPC sound Fixer~

 

DEFINE_ACTION_MACRO 

Edited by Roxanne, 20 October 2015 - 11:29 AM.

The Sandrah Saga

another piece of *buggy, cheesy, unbalanced junk*

 


#14 keika_d

keika_d
  • Member
  • 8 posts

Posted 20 October 2015 - 11:56 AM

Of course it does...  -_-

Well, thank you very much for your help, it seems things are back in order now.



#15 skellytz

skellytz
  • Staff
  • 477 posts

Posted 18 February 2016 - 11:22 AM

BGT doesn't respect the 4th wall breaks common throughout BG1.

I've just finished writing a patch which brings back all these right-click rare sounds to BGT for all the non-joinables, too. It was a lot of work -- including the removal of invalid SELECT_RARE from BG2 creatures. :doh:

The only way to get these rare selection sounds to work in BGT, short of an engine hack, is to move them from SELECT_RARE slots to the end of SELECT_COMMON pool. Yes -- you don't have to click 10 times anymore; at the same time, you must still click through the standard responses first. No breaking of the 4th wall, unless you want to. So you better develop a habit of right-clicking them all!

 

It's not perfect, but the patch restores an important part of the BG1 experience. To be included in the next incarnation of Infinity Sounds, along with some other goodies.



#16 keika_d

keika_d
  • Member
  • 8 posts

Posted 18 February 2016 - 12:13 PM

BGT doesn't respect the 4th wall breaks common throughout BG1.

I've just finished writing a patch which brings back all these right-click rare sounds to BGT for all the non-joinables, too. It was a lot of work -- including the removal of invalid SELECT_RARE from BG2 creatures. :doh:

The only way to get these rare selection sounds to work in BGT, short of an engine hack, is to move them from SELECT_RARE slots to the end of SELECT_COMMON pool. Yes -- you don't have to click 10 times anymore; at the same time, you must still click through the standard responses first. No breaking of the 4th wall, unless you want to. So you better develop a habit of right-clicking them all!

 

It's not perfect, but the patch restores an important part of the BG1 experience. To be included in the next incarnation of Infinity Sounds, along with some other goodies.

You sir are doing Gond's work!

I'll look into that when life gives me a long enough break to come back to my current run.