Jump to content

Shar-Teel's romance not starts


Guest Remi

Recommended Posts

I met the requirements, but LT0 isn't happening when I rest - what's the problem?

 

Variables are:

X#SHARINTERESTTIME 97879

X#SHARMATCH 1

X#SHARPCTALKS 100483

X#SHARPCTIMERSTARTED 1

 

X#SHARINTEREST isn't there at all.. is that normal?

Link to comment

Okay, I'll try to help. Rest in the forest with low reputation; save beforehand and be careful with your replies. Then X#SharInterest will be set to 1, and the romance will slowly start progressing, unless your reputation goes above 10.

Link to comment

In the forest? Try the area where you find her.

 

(GetGlobal("X#ShMale","GLOBAL") - this variable controls this talk. In this talk, X#SharInterest, which is Shar-Teel's RomanceActive variable, sets to 1 or 3, depending on your choice. Then the romance starts.)

 

It should work, unless you had another talk at rest with someone else. Then, wait for about three or four minutes.

Link to comment

??

 

I was looking for a way of making sure both things could happen. Of course I support the DreamTimer - if we need to support both Montaron and SharTeel, perhaps we can manipulate the usage here and allow both to proceed at separate times (if SharTeel is gettng skipped completely, and the LT never fires, this is a Bad Thing )

Link to comment

Dream Timer cannot completely get the talk skipped. It delays it till the next rest. Unless there is a problem with Montaron's talk that prevents it from firing each and every time the party rests, occupying the Dream Slot. It might be worthwhile to look into Montaron's talk variables resetting properly.

Link to comment

Don't see how this can be blamed on Montaron. The code is pretty straightforward.

 

From p#montad.baf:

/* Montaron on the art of poison */
IF %BGT_VAR%
Global("X#MOPC1","GLOBAL",0)
RealGlobalTimerExpired("X#DreamTalk","GLOBAL")
InParty(Myself)
!StateCheck(Myself,CD_STATE_NOTVALID)
InMyArea(Player1)
!StateCheck(Player1,CD_STATE_NOTVALID)
CombatCounter(0)
!See([ENEMY])
AreaType(OUTDOOR)
THEN
RESPONSE #100
SetGlobal("X#MOPC1","GLOBAL",1)
RealSetGlobalTimer("X#MoBackUpTimer","GLOBAL",18)
RealSetGlobalTimer("X#DreamTalk","GLOBAL",180)
StartDialogueNoSet(Player1)
END

From x#montaron.d

/* Dream Script */
/* Montaron on the art of poison */
IF WEIGHT #-2 ~%BGT_VAR% Global("X#MOPC1","GLOBAL",1)~ THEN BEGIN MOPC1
SAY @0 
IF ~~ THEN REPLY @1 DO ~SetGlobal("X#MOPC1","GLOBAL",2)~ GOTO MOPC1.1
IF ~~ THEN REPLY @2 DO ~SetGlobal("X#MOPC1","GLOBAL",2)~ GOTO MOPC1.2
IF ~~ THEN REPLY @3 DO ~SetGlobal("X#MOPC1","GLOBAL",2)~ GOTO MOPC1.3
END

IF ~~ THEN BEGIN MOPC1.1
SAY @4
IF ~~ THEN REPLY @3 GOTO MOPC1.3
IF ~~ THEN REPLY @5 GOTO MOPC1.2
END

IF ~~ THEN BEGIN MOPC1.2
SAY @6
IF ~~ THEN REPLY @7 GOTO MOPC1.4
IF ~~ THEN REPLY @8 GOTO MOPC1.5
IF ~~ THEN REPLY @3 GOTO MOPC1.3
END

IF ~~ THEN BEGIN MOPC1.3
SAY @9
IF ~~ THEN DO ~RestParty()~
EXIT
END

IF ~~ THEN BEGIN MOPC1.4
SAY @10
IF ~~ THEN REPLY @11 GOTO MOPC1.6
IF ~~ THEN REPLY @3 GOTO MOPC1.3
END

IF ~~ THEN BEGIN MOPC1.5
SAY @12
IF ~~ THEN REPLY @11 GOTO MOPC1.6
IF ~~ THEN REPLY @3 GOTO MOPC1.3
END

IF ~~ THEN BEGIN MOPC1.6
SAY @13
IF ~~ THEN REPLY @14 GOTO MOPC1.7
IF ~~ THEN REPLY @3 GOTO MOPC1.3
END

IF ~~ THEN BEGIN MOPC1.7
SAY @15
IF ~~ THEN DO ~RestParty()~
EXIT
END

The part where the backup timer gets set can be dropped, since backup timers, in general, seem to have been dropped, but that can run and expire with nothing being the worse for it, since it doesn't seem to be associated with anything.

Link to comment

And just to rule out Shar-Teel, this is from x#shrom.baf. Is it possible that you chose the wrong dialogue choice?

/* Interest talks */
IF %BGT_VAR%
Global("X#SharMatch","GLOBAL",0)
CheckStatGT(Player1,10,CHR)
CheckStatGT(Player1,10,STR)
Gender(Player1,MALE)
!Alignment(Player1,MASK_GOOD)
!Alignment(Player1,LAWFUL_NEUTRAL)
!Race(Player1,HALFLING)
ReputationLT(Player1,10)
THEN
RESPONSE #100
RealSetGlobalTimer("X#SharInterestTime","GLOBAL",100)
SetGlobal("X#SharMatch","GLOBAL",1)
END

This is from x#shromd.baf:

IF %BGT_VAR%
RealGlobalTimerExpired("X#SharInterestTime","GLOBAL")
RealGlobalTimerExpired("X#DreamTalk","GLOBAL")
InParty(Myself)
!StateCheck(Player1,CD_STATE_NOTVALID)
!StateCheck(Myself,CD_STATE_NOTVALID)
HPPercentGT(Player1,95)
HPPercentGT("sharteel",95)
Global("X#SharInterestTalk","GLOBAL",1)
Global("X#SharInterest","GLOBAL",1)
ReputationLT(Player1,11)
THEN
RESPONSE #100
RealSetGlobalTimer("X#DreamTalk","GLOBAL",180)
PlaySong(0)
PlaySound("shrar")
SetGlobal("X#SharInterestTalk","GLOBAL",2)
StartDialogueNoSet(Player1)
END

And this is from x#shrom.d:

/* Shar-Teel Interest Talks */
APPEND ~%SHARTEEL_JOINED%~

IF WEIGHT #-2 ~%BGT_VAR% Global("X#SharInterestTalk","GLOBAL",2)~ THEN BEGIN SHRO1
SAY @0 
++ @1 DO ~IncrementGlobal("X#SharInterestTalk","GLOBAL",1) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",SHROM_TIMER)
~ + SHRO1.1
++ @2 DO ~IncrementGlobal("X#SharInterestTalk","GLOBAL",1) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",SHROM_TIMER)
~ + SHRO1.2
++ @3 DO ~IncrementGlobal("X#SharInterestTalk","GLOBAL",1) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",SHROM_TIMER)
~ + SHRO1.2
++ @4 DO ~IncrementGlobal("X#SharInterestTalk","GLOBAL",1) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",SHROM_TIMER)
~ + SHRO1.3
END

X#SharInterestTalk is set to 1 here:

///* male PClow rep *//* Interest Talk */
IF WEIGHT #-2 ~%BGT_VAR% Global("X#ShMale","GLOBAL",1)~ THEN BEGIN SHPC4
SAY @52
IF ~ CheckStatGT(Player1,13,CHR) ~ THEN REPLY @53 DO ~SetGlobal("X#ShMale","GLOBAL",2) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",3600) SetGlobal("X#SharInterestTalk","GLOBAL",1)~ GOTO SHPC4.1HIGHCHAR
IF ~ !CheckStatGT(Player1,13,CHR) ~ THEN REPLY @53 DO ~SetGlobal("X#ShMale","GLOBAL",2) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",3600) SetGlobal("X#SharInterestTalk","GLOBAL",1)~ GOTO SHPC4.1LOWCHAR
IF ~ CheckStatGT(Player1,13,CHR) ~ THEN REPLY @54 DO ~SetGlobal("X#ShMale","GLOBAL",2) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",3600) SetGlobal("X#SharInterestTalk","GLOBAL",1)~ GOTO SHPC4.1HIGHCHAR
IF ~ !CheckStatGT(Player1,13,CHR) ~ THEN REPLY @54 DO ~SetGlobal("X#ShMale","GLOBAL",2) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",3600) SetGlobal("X#SharInterestTalk","GLOBAL",1)~ GOTO SHPC4.1LOWCHAR
IF ~~ THEN REPLY @55 DO ~SetGlobal("X#ShMale","GLOBAL",2) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",3600) SetGlobal("X#SharInterestTalk","GLOBAL",1)~ GOTO SHPC4.2
IF ~~ THEN REPLY @56 DO ~SetGlobal("X#ShMale","GLOBAL",2) RealSetGlobalTimer("X#SharInterestTime","GLOBAL",3600) SetGlobal("X#SharInterestTalk","GLOBAL",1)~ GOTO SHPC4.3
END

And X#SharInterest is set to 1 here, and in other places in the same dialogue:

IF ~~ THEN BEGIN SHPC4.3
SAY @64
IF ~~ THEN DO ~RestParty() SetGlobal("X#SharInterest","GLOBAL",3)~
EXIT
END

Here is the block that triggers that dialogue:

/* Interest Talk */
IF %BGT_VAR%
ReputationLT(Player1,13)
Gender(Player1,MALE)
Global("X#ShMale","GLOBAL",0)
RealGlobalTimerExpired("X#DreamTalk","GLOBAL")
InParty(Myself)
!StateCheck(Myself,CD_STATE_NOTVALID)
InMyArea(Player1)
!StateCheck(Player1,CD_STATE_NOTVALID)
CombatCounter(0)
!See([ENEMY])
AreaType(FOREST)
THEN
RESPONSE #100
SetGlobal("X#ShMale","GLOBAL",1)
RealSetGlobalTimer("X#DreamTalk","GLOBAL",180)
StartDialogueNoSet(Player1)
END

Link to comment

Archived

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

×
×
  • Create New...