Jump to content

"Roll Your Own Beta Pre-Beta Post-Alpha Pioneers"


cmorgan

Recommended Posts

-Flirts popping up just like before after the talk of fallin' in love. Telling him to stop flirting makes no difference. But, this time Aran's music was playing.
Meaning he keeps flirting over and over? Does changing to non-romanced (breaking up with him) stop them?

 

-In the Copper Coronet, when my PC was flirting with Aran it came up as "The musicians have struck up..." and then the PC flirts same as before. Rotated back and forth between these two while in there. Don't know if you changed something here, so thought I better mention this.

Awesome - then that weighting got set right; I wanted the inn-flirts to play, but there is a continuity problem if you get more than one in there (plus it blocks PID and regular flirts so trying to clear a misfire would result in a stutter).

 

Got banters this game! So that is good thing.
THANK GOODNESS! That was scary. I'm still rechecking triggers to see if I can be less strict on conditions for firing.
Link to comment

Okay, random things I experienced:

 

- Getting Aran drunk (at the Seven Vales, if it matters) crashed my game more than once. Had to be a drink or two beyond his threshold before the crash would happen.

- Teased him with flirts to the point of the stallion speech, gave him the go ahead for sex on next rest, but resting (at the Crooked Crane) resulted in his join dialog popping up. Force talking him after that resulted in his whisper in the ear/wake up for nookie talk.

- Typos:

 

IF ~~ a834 SAY ~[ARAN] (Aran keeps trying to look in your direction, but never quite gets you in plain sight. Just when you are about to have to close whether to break away or risk exposure, he starts laughing uncontrollably and drops the book.)~

close should be choose

 

a220
 SAY ~[ARAN] Right then. Let's be gettin'... ~
 = ~[ARAN] oh, Corellon's Uncertain Chastity

capitalize Oh

 

IF ~~ a1598
 SAY ~[ARAN] Hey, <CHARNAME, are you there? Do you be in any trouble?~

<CHARNAME>

 

- Also, this PC response in block a707:

~[PC] Are you sure you can handle me? After all, when I walk it seems to tie you up in knots and drive you mad with desire.~ + a706

leads to this:

IF ~~ a706 SAY ~[ARAN] Children?! Where be... ooh, you minx. That were a bucket o' cold water right there, an' it hit th' target right proper!~

Does not compute.

 

And just to be a little bit fangirly, I friggin' adore this guy. Can't wait to see all those PLACEHOLDERs replaced. :)

Link to comment

Yes, the PC flirt options are the ones that kept popping up over and over, just like in the other games. Barely had enough time in between them to end the game.

Break up with him!? Funny how that thought never crossed my PC's mind. :)

I can reload the previous save and try that. Do you want me to go ahead and run the troubleshooter also?

 

Don't know if this will help you any on the inn flirt, but here's a partial rundown of the order in game (Everything's on the 15 min timers):

 

-Aye, this be strange...(Appeared outside circus tent)

PC Flirting with him showed up right outside and inside circus tent)

-Perhaps we should hire...

-You know, when I was servin'...

(Inside C. C.)

-Do you be needin'...

PC Flirting with him-The musicians...

2nd attempt brought up PC flirt options

Banter -Oghma's truth...

Text window exchange between Aran and Amomen

PC Flirting with him-The musicians...

2nd attempt brought up PC flirt options

-I know there be some disadvantages...

-You don't blighted stop...

PC Flirting with him-The musicians...

2nd attempt brought up PC flirt options

PC Flirting with him-The musicians...

2nd attempt brought up PC flirt options

(Did the above 4 one right after another)

-Hey, <CHARNAME>, how about...

-(Aran's weather beaten face...

-(Aran is walking close to you...

PC Flirting with him-The musicians...

2nd attempt brought up PC flirt options

-(Aran's weather beaten face...

 

Had to try repeatedly to make sure it was not just a one time thing, right? :D

Link to comment

Breaking up with him stopped the PC's flirt menu from coming up. But, then the following started popping up over and over:

 

-(Aran is beside you watching the surroundings... (His music was playing)

-We got nothin' to say to one another...

PC-Fine. Be that way.

-(Aran is beside you watching...

--(Aran studiously ignores you...

-(Aran is beside you watching...

--(Aran glares at you...

-(Aran is beside you watching...

--(Aran studiously ignores you...

Link to comment

@ Aeryn - Thanks! Adding "check conditions and see what could cause a crash" (I ran through them and didn't get a crash, but I only ran through them in C-AR01, and they triggered right away. Something could be happening elsewhere.)

 

Resting at Crooked Crane = Join Dialog is odd - that might be a weighting issue, but that means somewhere along the line I didn't set the correct global that indicates he is in the party.

 

Fixes logged; will set them up in the files tonight when I get home (that pesky work thing is happening right now :) )

 

a707 - hmmm. I think there are at least two states missing. I am going back through my workloads tonight to see what I have stripped out but then forgotten to integrate.

 

The good thing about Mondays is it is Faculty meeting. And that means plenty of time to daydream about PLACEHOLDERs!

 

 

@ piperb, way cool stuff. We now know some information that will help.

 

When this looping occurs,

1. When the Flirt menu is active, it fires. So the thing it is trying to clear is either never able to be cleared, or it is below the flirts.

2. When the flirt menu is deactivated, the PID fires. So the thing it is trying to clear is either never able to clear, or it is below the PID.

3. There is nothing that evaluates true below the PIDs - they are always last in order and unweighted. Therefore, we are looking for a block that can never clear, either because I forgot to close a global or because the global in the .bcd does not match the one in .dlg.

 

Additional findings - something is not clearing the flirt correctly, because if it was, the SetGlobal at the end of the flirt would have you have one flirt and then the PID would fire. So it is possible that this is a problem with the NPC-initiated flirt block.

 

Luckily, that troubleshooter you downloaded is ideal for this kind of thing. If you could please install it and replicate the stutter, letting me know which block is firing over and over, I'd be very grateful. I am searching through project files again matching Global/SetGlobal pairings to try to find out what is not clearing, but the targeting information will help resolve things faster!

Link to comment

Hey, I'm at work and can't look at the code, but is InParty(Myself) ahead of the CheckStatGT(Myself,40,INTOXICATION) line? Because I'm wondering if this is like the rest banters where AreaCheck() ahead of state checks causes crashing.

 

Edit: Also, if Aran has drunk banters with any characters besides the PC, cmorgan might want to know who else was in your party at the time.

Link to comment

...and, thanks to the troubleshooter and piperb taking the time to log the variables before the stutter and identify the block, we have the following:

 

Block 190 of c-aran.bcs is repeating.

 

in her install,

IF
GlobalLT("c-aranfriendbg2","GLOBAL",32)
RealGlobalTimerExpired("c-aranfriendtimer","GLOBAL")
!Global("Chapter","GLOBAL",5)
OR(13)
Global("c-aranfriendbg2","GLOBAL",2)
Global("c-aranfriendbg2","GLOBAL",4)
Global("c-aranfriendbg2","GLOBAL",6)
Global("c-aranfriendbg2","GLOBAL",8)
Global("c-aranfriendbg2","GLOBAL",10)
Global("c-aranfriendbg2","GLOBAL",12)
Global("c-aranfriendbg2","GLOBAL",14)
Global("c-aranfriendbg2","GLOBAL",16)
Global("c-aranfriendbg2","GLOBAL",18)
Global("c-aranfriendbg2","GLOBAL",20)
Global("c-aranfriendbg2","GLOBAL",22)
Global("c-aranfriendbg2","GLOBAL",24)
Global("c-aranfriendbg2","GLOBAL",26)
THEN
RESPONSE #100
ActionOverride(Player1,DisplayString(Myself,85791)) // ~Running block 189 of c-aran.BCS~
IncrementGlobal("c-aranfriendbg2","GLOBAL",1)
END

IF
GlobalLT("c-aranfriendbg2","GLOBAL",32)
RealGlobalTimerExpired("c-aranfriendtimer","GLOBAL")
!Global("Chapter","GLOBAL",5)
IfValidForPartyDialogue(Myself)
!StateCheck(Myself,CD_STATE_NOTVALID)
!StateCheck(Player1,CD_STATE_NOTVALID)
!ActuallyInCombat()
!See([ENEMY])
OR(14)
Global("c-aranfriendbg2","GLOBAL",1)
Global("c-aranfriendbg2","GLOBAL",3)
Global("c-aranfriendbg2","GLOBAL",5)
Global("c-aranfriendbg2","GLOBAL",7)
Global("c-aranfriendbg2","GLOBAL",9)
Global("c-aranfriendbg2","GLOBAL",11)
Global("c-aranfriendbg2","GLOBAL",13)
Global("c-aranfriendbg2","GLOBAL",15)
Global("c-aranfriendbg2","GLOBAL",17)
Global("c-aranfriendbg2","GLOBAL",19)
Global("c-aranfriendbg2","GLOBAL",21)
Global("c-aranfriendbg2","GLOBAL",23)
Global("c-aranfriendbg2","GLOBAL",25)
Global("c-aranfriendbg2","GLOBAL",27)
THEN
RESPONSE #100
ActionOverride(Player1,DisplayString(Myself,85792)) // ~Running block 190 of c-aran.BCS~
PlaySong(0)
PlaySound("c-arnfth")
StartDialogNoSet(Player1)
END

 

She send along the variables, so we find that before this happens, Global("c-aranfriendbg2","GLOBAL",18) is there... so now we know that it is the firing of c-aranfriendbg2 = 19 that is the one actually being called and not cleared.

 

So, we hit the code, and find out...

 

yep. When I changed the order of the talks, I also split up the friendtalk to be completely class-dependent. I changed the top talk to

 

/* BG2 FriendTalk 10 c-aranfriendbg2 = 19 : "Weapons Practice for Fun and Profit", or, never bet with a Sicilian when death is on the line. */
/* Setup for evening sparring, 1 version for (non-hitting on) males: c-aranspar 4 -> 5 -> 6, one for (hitting on) females: c-aranspar 1 -> 2 -> 3 */
IF ~Global("c-aranfriendbg2","GLOBAL",19) Class(Player1,MAGE)~ THEN BEGIN a198

 

BUT, bonehead here forgot to go back and recheck all of the iterations of this one, and so the next one is

 

IF ~Global("c-aranfriendbg2","GLOBAL",17) Class(Player1,FIGHTER)~ THEN BEGIN a2305

 

which has already fired, so unless you are a single-class Mage, this talk will stutter. And don't you know, I tested with Daria, the Default Test Mage as my checker. Heh.

 

OK, well, we know how to clear it - if someone is running with the current files, try pausing the game and setting

 

CLUAConsole:SetGlobal("c-aranfriendbg2","GLOBAL",20)

 

and I will fix this in the files and upload it this afternoon!

Link to comment

Party was Haer'Dalis, Yoshi, Anomen and Jaheira. Let me try it somewhere other than the Seven Vales... :)

 

IF
 GlobalLT("c-arandrunk","GLOBAL",6) // shuts down sequence when finished
 InParty(Myself)
 CheckStatGT(Myself,50,INTOXICATION) // Whoot - the room is moving about too much
 OR(13)
AreaCheck("AR0313") // Sea's Bounty
AreaCheck("AR0406") // Copper Coronet
AreaCheck("AR0509") // Five Flagons
AreaCheck("AR0522") // Five Flagons (Stronghold)
AreaCheck("AR0704") // Mithrest Inn
AreaCheck("AR1105") // Umar Inn
AreaCheck("AR1602") // The Vulgar Monkey
AreaCheck("AR2010") // Vyatri's Pub, Trademeet
AreaCheck("AR0709") // Den of the Seven Vales 1st Floor
AreaCheck("AR0513") // Calbor's Inn at Bridge District 1st Floor
AreaCheck("AR0021") // Crooked Crane 1st Floor
AreaCheck("AR1602") // Brynnlaw's Inn
AreaCheck("C-AR01") // The Broken Sword (Aran's initial inn )
 OR(3)
Global("c-arandrunk","GLOBAL",0)
Global("c-arandrunk","GLOBAL",2)
Global("c-arandrunk","GLOBAL",4)
 InMyArea(Player1)
 !StateCheck(Player1,CD_STATE_NOTVALID)
 CombatCounter(0)
 !See([ENEMY])
THEN
 RESPONSE #100
IncrementGlobal("c-arandrunk","GLOBAL",1)
END

IF
 GlobalLT("c-arandrunk","GLOBAL",6) // shuts down sequence when finished
 !GlobalTimerNotExpired("c-aransmalltalk","GLOBAL") // Timer (game-time) has never been set or has expired
 InParty(Myself)
 !StateCheck(Myself,CD_STATE_NOTVALID)
 InMyArea(Player1)
 !StateCheck(Player1,CD_STATE_NOTVALID)
 OR(13)
AreaCheck("AR0313") // Sea's Bounty
AreaCheck("AR0406") // Copper Coronet
AreaCheck("AR0509") // Five Flagons
AreaCheck("AR0522") // Five Flagons (Stronghold)
AreaCheck("AR0704") // Mithrest Inn
AreaCheck("AR1105") // Umar Inn
AreaCheck("AR1602") // The Vulgar Monkey
AreaCheck("AR2010") // Vyatri's Pub, Trademeet
AreaCheck("AR0709") // Den of the Seven Vales 1st Floor
AreaCheck("AR0513") // Calbor's Inn at Bridge District 1st Floor
AreaCheck("AR0021") // Crooked Crane 1st Floor
AreaCheck("AR1602") // Brynnlaw's Inn
AreaCheck("C-AR01") // The Broken Sword (Aran's initial inn )
 CombatCounter(0) // Not in combat
 !See([ENEMY]) // Can't see any enemies
 OR(3)
Global("c-arandrunk","GLOBAL",1)
Global("c-arandrunk","GLOBAL",3)
Global("c-arandrunk","GLOBAL",5)
THEN
 RESPONSE #100
PlaySong(0)
PlaySound("c-arandf")
StartDialogueNoSet(Player1)
END

Edit: Because I'm stoopid.

Link to comment

@B - nope - no drunken banters with anyone else but PC. Though if Gavin is around, we should do some!

 

Here's the code:

/* Drunk Talks (incorporates Flirts if gender and romance variables set) */
/* Using GLOBAL here so it can influence friendtalks */
IF
 GlobalLT("c-arandrunk","GLOBAL",6) // shuts down sequence when finished
 InParty(Myself)
 CheckStatGT(Myself,50,INTOXICATION) // Whoot - the room is moving about too much
 OR(13)
AreaCheck("AR0313") // Sea's Bounty
AreaCheck("AR0406") // Copper Coronet
AreaCheck("AR0509") // Five Flagons
AreaCheck("AR0522") // Five Flagons (Stronghold)
AreaCheck("AR0704") // Mithrest Inn
AreaCheck("AR1105") // Umar Inn
AreaCheck("AR1602") // The Vulgar Monkey
AreaCheck("AR2010") // Vyatri's Pub, Trademeet
AreaCheck("AR0709") // Den of the Seven Vales 1st Floor
AreaCheck("AR0513") // Calbor's Inn at Bridge District 1st Floor
AreaCheck("AR0021") // Crooked Crane 1st Floor
AreaCheck("AR1602") // Brynnlaw's Inn
AreaCheck("C-AR01") // The Broken Sword (Aran's initial inn )
 OR(3)
Global("c-arandrunk","GLOBAL",0)
Global("c-arandrunk","GLOBAL",2)
Global("c-arandrunk","GLOBAL",4)
 InMyArea(Player1)
 !StateCheck(Player1,CD_STATE_NOTVALID)
 CombatCounter(0)
 !See([ENEMY])
THEN
 RESPONSE #100
IncrementGlobal("c-arandrunk","GLOBAL",1)
END

IF
 GlobalLT("c-arandrunk","GLOBAL",6) // shuts down sequence when finished
 !GlobalTimerNotExpired("c-aransmalltalk","GLOBAL") // Timer (game-time) has never been set or has expired
 InParty(Myself)
 !StateCheck(Myself,CD_STATE_NOTVALID)
 InMyArea(Player1)
 !StateCheck(Player1,CD_STATE_NOTVALID)
 OR(13)
AreaCheck("AR0313") // Sea's Bounty
AreaCheck("AR0406") // Copper Coronet
AreaCheck("AR0509") // Five Flagons
AreaCheck("AR0522") // Five Flagons (Stronghold)
AreaCheck("AR0704") // Mithrest Inn
AreaCheck("AR1105") // Umar Inn
AreaCheck("AR1602") // The Vulgar Monkey
AreaCheck("AR2010") // Vyatri's Pub, Trademeet
AreaCheck("AR0709") // Den of the Seven Vales 1st Floor
AreaCheck("AR0513") // Calbor's Inn at Bridge District 1st Floor
AreaCheck("AR0021") // Crooked Crane 1st Floor
AreaCheck("AR1602") // Brynnlaw's Inn
AreaCheck("C-AR01") // The Broken Sword (Aran's initial inn )
 CombatCounter(0) // Not in combat
 !See([ENEMY]) // Can't see any enemies
 OR(3)
Global("c-arandrunk","GLOBAL",1)
Global("c-arandrunk","GLOBAL",3)
Global("c-arandrunk","GLOBAL",5)
THEN
 RESPONSE #100
PlaySong(0)
PlaySound("c-arandf")
StartDialogueNoSet(Player1)
END

Link to comment

Okay, it didn't crash when I got him hammered at the Copper Coronet, but I did have to forcetalk him to get see it - didn't pop up on its own. I have to assume it was crashing because the Vales isn't in the script?

Link to comment

Hmmm.... AreaCheck("AR0709") // Den of the Seven Vales 1st Floor is in there - I'll recheck are codes.

 

Hey, Aeryn, what joining talk fired, please? I have materials in the C-ARANP and C-ARAN files, but none that I can find in the C-ARANJ.

 

I should probably check and see if CD_STATE_NOTVALID on player1 includes drunkenness... that would be a hilarious error!!

Link to comment

Good Lord, I need my eyes checked.

 

Let me run through and take some better notes on the join dialog popping up, and I'll get back to you shortly.

 

And piper, you just go into the Rumors section of any barkeep/innkeeper and force Aran to drink to your heart's content. ^_^

Link to comment
I should probably check and see if CD_STATE_NOTVALID on player1 includes drunkenness... that would be a hilarious error!!

Don't bother. It doesn't. The game (almost) completely ignores intoxication except that drunken characters get a penalty to hit. Besides, I used CD_STATE_NOTVALID on all of BG1 Gavin's banters, and I've never heard of anyone getting crashes with them. Which is surprising, considering how Tutu is more likely to crash overall than (lightly modified) BG2.

Link to comment

Okay, the join dialog that's coming up is the first meeting:

 

IF ~NumTimesTalkedTo(0)~ THEN BEGIN a1
 SAY ~[ARAN] Aye then, you showed up at a right good time. Aran Whitehand, Sword an' Pen. Accounts audited, contracts written, foes slain. I heard you might be interested in a sellsword for adventurin'.~ [c-aws081]
END

What I didn't notice before is that it's showing my character as the speaker, not Aran.

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...