Modding for Beginners
#61
Posted 19 April 2004 - 11:33 PM
1) This isn't Tsu's script so its not finding the LOCAL variable. How from the looks of it, it probably is Tsu's script...
2) Which dialogue file is your conversation in? J or B? Coz using Interject(Player1) will trigger from the B file...
3) You already have something earlier in the script that triggers off of being at Global("TsujathaLoveTalk","LOCALS",51) and maybe calls something else (like the other dialogue file).
#62
Posted 20 April 2004 - 01:39 AM
My LTs continued after this because, apparently not finding that talk, it pulled the class-specific banter for my PC and used that. For some reason, that still kicked up the Locals, and the LTs went on from there. Argh. LT #26 is not the most pivotal LT, but I liked it. It ONLY works outdoors at night, though. Otherwise it makes NO sense. Argh again. Back to the drawing board. (Or should I say coding board?)
Sillara
#63
Posted 26 April 2004 - 05:39 AM
The silent NPC's DV is FLAN. Coded into my NPC's B file is the following:
CHAIN
IF ~See("Flan")
!StateCheck("Flan",STATE_SLEEPING)
Global("TsujathaFlanBrel","GLOBAL",0)~ THEN BTSUJAT TSJ_TsuFlanTorture
~Blah.~
DO ~SetGlobal("TsujathaFlanBrel","GLOBAL",1)~
== BFLAN
~Blah.~
There is a BFLAN.dlg, which is assigned to Flan.cre. That also contains lines for him, but nothing that occurs before this dialogue. In fact, they are coded to occur afterward, like this:
IF ~See(Player1)
!StateCheck(Player1,STATE_SLEEPING)
Global("TsujathaFlanBrel","GLOBAL",1)
Global("SPOILERDELETED","GLOBAL",0)~
THEN BEGIN TSJ_HurryUp
SAY ~Blah.~
IF ~~ THEN EXIT
END
CHAIN
IF ~See(Player1)
!StateCheck(Player1,STATE_SLEEPING)
Global("TsujathaFlanBrel","GLOBAL",1)
Global("SPOILERDELETED","GLOBAL",1)~
THEN BFLAN MoreSpoiler
~Ah. Success. Blah?~
END
++ ~XXX~ GOTO MoreSpoiler1a
++ ~XXX.~ GOTO MoreSpoiler2a
++ ~XXX.~ GOTO MoreSpoiler3a
CHAIN BFLAN MoreSpoiler1a
~Blah.~
== BTSUJAT
~BLAH!~
And it goes on from there. That is all that is in BFLAN, the one short dialogue and the CHAIN. Everything compiles. I checked to make sure that the BTSUJAT was looking for the correct DV, which it is. I do not know what else to check. Is there something I just do not know which I need to do? Or is there some error in this of which I am unaware?
Sillara, nervously hoping that her post has passed muster according to the new ground rules of the Help
#64 -Ashara-
Posted 26 April 2004 - 06:40 AM
NumberofTimesTalkedTo(0) and GT(0) script, assigned as override or one of the secondary scripts to cre and dialogue name w/o suffix/prefix, ie the same combination you do when you create the greeting dialogue for a joinable NPC.
#65
Posted 27 April 2004 - 01:28 AM
Tsujatha: So it is you, non-joinable!
NJ: Yes, it is I! What are you going to do about it?
Tsu: I'm going to beat you up!
PC:
1. That's a great idea!
2. No, don't.
3. Let me get the popcorn!
Obviously that is not the real dialogue, but you see what I mean. The PC responses would then lead to more conversation between the two NPCs, and then more choices. I got it to compile properly using CHAIN, but I had to have two B files for that. I noticed that people like Bodhi have B files, so I figured it was all right to do that--but I am regretting it now. I am utterly lost as to what the problem can be. I have tried to put it together in a non-Bfile way, but can you CHAIN to that? I do not think you can, so I have been trying to work it another way. And I cannot figure out how to do it. Any suggestions are greatly appreciated!
Sillara
#66
Posted 27 April 2004 - 01:31 AM
All you need is a dialogue file that is assigned to non-joinable character and you can do CHAINing with it. Just work it as you would with any banter...
#68
Posted 27 April 2004 - 04:36 AM
BEGIN ~NPCINTS~
IF ~InParty("Shinayne")
See("Shinayne")
Global("cmtraitor","GLOBAL",0)~ THEN CMANDREA AndreaTalk
CMANDREA = ~Hi.~ DO ~SetGlobal("cmtraitor","LOCALS",1)~
CMSHINJ = ~Hi~
CMANDREA = ~blah blah.~
CMSHINJ = ~same here!~
CMANDREA = ~cool.~
END CMANDREA ItsTime
APPEND CMANDREA
IF ~~ ItsTime
SAY ~<CHARNAME> talk.~
IF ~~ THEN REPLY ~ok~
EXIT
END
END
The Frozen North Forums IWD, NWN, KotOR discussion
#70 -Ashara-
Posted 27 April 2004 - 06:19 AM
#71
Posted 27 April 2004 - 06:33 AM
Ermmm... your syntax seems a bit off. Coz if its meant to be a CHAIN then you skipped the word CHAIN from the start of it...Not that hard to do. Here's something I did.
BEGIN ~NPCINTS~
IF ~InParty("Shinayne")
See("Shinayne")
Global("cmtraitor","GLOBAL",0)~ THEN CMANDREA AndreaTalk
CMANDREA = ~Hi.~ DO ~SetGlobal("cmtraitor","LOCALS",1)~
CMSHINJ = ~Hi~
CMANDREA = ~blah blah.~
CMSHINJ = ~same here!~
CMANDREA = ~cool.~
END CMANDREA ItsTime
APPEND CMANDREA
IF ~~ ItsTime
SAY ~<CHARNAME> talk.~
IF ~~ THEN REPLY ~ok~
EXIT
END
END
And btw I'd write that like this:
BEGIN ~NPCINTS~ CHAIN IF ~InParty("Shinayne") See("Shinayne") Global("cmtraitor","GLOBAL",0)~ THEN CMANDREA AndreaTalk ~Hi.~ DO ~SetGlobal("cmtraitor","LOCALS",1)~ == CMSHINJ ~Hi~ == CMANDREA ~blah blah.~ == CMSHINJ ~same here!~ == CMANDREA ~cool.~ == CMANDREA ~<CHARNAME> talk.~ END ++ ~Ok.~ EXIT
#72
Posted 29 April 2004 - 08:47 PM
Of course, I still have that mysterious cutscene problem, and I cannot understand why my second area .baf, identical to the first in coding, does not function. Nor why, when I CLUA in the missing people, they will give their correct dialogues, but the variables will not set. So that is a problem.
Sigh. Still, progress is progress. Beta dangles before my nose like a carrot, if I could only get these enormous bugs out of the alpha!!!
Sillara
#73
Posted 15 May 2004 - 12:39 AM
I am currently working on the TOB portion of the banters/dialogues for my NPC, and I have reached the Imoen ones. I know that in TOB Imoen can initiate dialogues, but I was wondering, is she Imoen or Imoen2? And, actually, in SoA, isn't she Imoen2 after you pick her up from Spellhold? So if my NPC wants to initiate dialogue with her the check for who is InParty should be for Imoen2, not Imoen, right?
Thanks!
Sillara
Edited by Sillara of the Tamari, 15 May 2004 - 12:41 AM.
#74
Posted 15 May 2004 - 08:30 AM
Correct. Post-spellhold you check for Imoen2 and not Imoen - this includes ToB. Even Black Isle cocked up that one!I could have started a new topic, but I thought it seemed close enough to go in here.
I am currently working on the TOB portion of the banters/dialogues for my NPC, and I have reached the Imoen ones. I know that in TOB Imoen can initiate dialogues, but I was wondering, is she Imoen or Imoen2? And, actually, in SoA, isn't she Imoen2 after you pick her up from Spellhold? So if my NPC wants to initiate dialogue with her the check for who is InParty should be for Imoen2, not Imoen, right?
Thanks!
Sillara
Edited by Grim Squeaker, 15 May 2004 - 08:31 AM.
#75
Posted 17 May 2004 - 06:49 AM
My cutscene triggers look like this:
CHAIN BTSUJAT KorganSqueakie1b
~With pleasure, <CHARNAME>.~
DO ~ClearAllActions() StartCutSceneMode() StartCutScene("TSJ_KILLKORGAN")~
EXIT
That is the end of a banter in the B file. It compiles properly, and the cutscene will BEGIN, but then the problem begins.
My .baf looks like this:
IF
True()
THEN
RESPONSE #100
CutSceneId("TSUJATH")
Wait(1)
SmallWait(5)
FaceObject("Korgan")
SmallWait(5)
ActionOverride("Korgan",FaceObject("TSUJATH"))
ForceSpell("Korgan",WIZARD_DISINTEGRATE2_IGNORE_RESISTANCE)
Wait(1)
EndCutSceneMode()
END
That is the entire file. Is there a problem somewhere that I do not know about? It is not only this cutscene, though. They all have this same problem. Any help is appreciated.
Sillara
#76
Posted 17 May 2004 - 08:20 AM
I don't think a .bcs file name can be that long. Try making the cutscene script file name no more than 8 characters.StartCutScene("TSJ_KILLKORGAN")~
#77
Posted 17 May 2004 - 07:21 PM
The only two big problems I have left are:
1. He stutters. After LT 38, wherein I set a variable (TsujathaVirgin) or (TsujathaNotVirgin), he begins to stutter. The only thing I can think is somehow the variable is causing it, as other than that, the LT is the same as all the rest. At another point I set another variable (TsujathaChaste) or (TsujathaNotChaste). I do not think that that is causing a problem, but I cannot be sure, as it occurs after he is already stuttering.
2. My non-joinables in AR 1005 are still not showing up. The others show up fine, but not those!
Does anyone know anything about stuttering bugs being caused by setting variables?
Sillara, the perplexed
#78
Posted 18 May 2004 - 11:12 AM
For number 2, if you start a brand new game and then go to AR1005, do they show up then?
Edited by Rastor, 18 May 2004 - 11:13 AM.
#79
Posted 18 May 2004 - 03:55 PM
Sigh.
I am pretty sure it is not my computer causing the stuttering because other alpha testers have experienced the same thing.
I have a theory about my Anomen conflict dialogue that I will try out. If that fails, I will be back.
Sillara
#80
Posted 18 May 2004 - 04:28 PM