Gabrielle Posted November 18, 2007 Share Posted November 18, 2007 So far none of my interjections are working or working properly. My interjection with Bodhi breaks the game, my npcs comment doesn't show up so Bohdi never finishes what she is suppose to say when you first meet her. My interjections with the street urchins in the Slums, it shows their response to my character but no response from my npc. It shows up in the dialogs as it shows in the decompiled examples. IF WEIGHT #0 ~InParty("cmgmiriam") See("cmgmiriam") !StateCheck("cmgmiriam",STATE_SLEEPING) Global("cmgmiriamslkid3","LOCALS",0) ~ THEN BEGIN 11 // from: SAY #84989 /* ~You sure are pale lady. Are you dead?~ */ IF ~~ THEN DO ~SetGlobal("cmgmiriamslkid3","LOCALS",1) ~ EXTERN ~CMGMIRIJ~ 102 END Reponse IF ~~ THEN BEGIN 102 // from: SAY #84975 /* ~We wonder if little kids taste sweet.~ */ IF ~~ THEN EXTERN ~URCHIN2~ 12 END IF ~~ THEN BEGIN 12 // from: SAY #84990 /* ~Eekkkk!~ */ IF ~~ THEN EXIT END Its obviously there why isn't it showing up? Link to comment
Rabain Posted November 18, 2007 Share Posted November 18, 2007 Are you sure it is "cmgmiriam" as that is 9 letters and for this the limit should be 8. Link to comment
Gabrielle Posted November 18, 2007 Author Share Posted November 18, 2007 The death variable can only be 8 characters long? I thought it could be more than that. OMG I have to go through everything and change it all. Link to comment
Gabrielle Posted November 18, 2007 Author Share Posted November 18, 2007 Still doesn't work. Renamed everything variable related, dlgs, cre file, etc. Intaled on another game, played and still have the same results. Link to comment
Avenger Posted November 18, 2007 Share Posted November 18, 2007 The death variable can be 32-sizeof('spriteisdead') long. Link to comment
jastey Posted November 18, 2007 Share Posted November 18, 2007 I am not sure I understand the exact problem. If talked to the game character, your weighted dialogue fires but your NPC doesn't respond? In this case, is "CMGMIRIJ" the correct dialogue file of your NPC, and is the response assigned to it? Is it correctly assigned via tp2 to your NPC? Link to comment
devSin Posted November 18, 2007 Share Posted November 18, 2007 Sounds like the join dialogue ("cmgmirij") isn't being correctly assigned. If you speak to the urchin and see the continue button when the "You sure are pale, lady..." dialogue runs but pressing it just ends dialogue, this almost always means that the EXTERN dialogue isn't loaded (your character is using some other dialogue or none at all). "cmgmiriam" is fine as a script name. Link to comment
berelinde Posted November 18, 2007 Share Posted November 18, 2007 It looks like it was a couple things, but the biggest was a DV mismatch between the 2da and the creature files. Gabrielle, check your PMs at CoM. Oh, and by the way, I tested it, and the PID now works, but the interjections won't because she hides in shadows and uses See("DV") as a trigger. InMyArea("DV") might be better. Link to comment
Gabrielle Posted November 19, 2007 Author Share Posted November 19, 2007 Thanks all. Berelinde solved my problems. Link to comment
Gabrielle Posted November 20, 2007 Author Share Posted November 20, 2007 I wonder if this block of code is broken? It works fine when you talk to him, all of the dialogs for this shows up. But after talking to Salvanas and if I have my character go and talk to Miriam to issue commands the Salavanas dialog shows right back up again. Other interjections work fine. APPEND SALVANAS IF ~!InPartySlot(LastTalkedToBy,0) Name("cmgmiriam",LastTalkedToBy)~ THEN BEGIN MiriamSalvanas SAY ~Well, hello there, pale seductive one. I like my women exotic, seductive, and controlling.~ = ~Let me show you pleasure like you never experienced before.~ IF ~~ THEN DO ~SetGlobal("MiriamUselessGlobal","LOCALS",1)~ EXTERN CMGMIRIJ MiriamSalvanas1 END END APPEND CMGMIRIJ IF ~Global("MiriamUselessGlobal","LOCALS",1)~ THEN BEGIN MiriamSalvanas1 SAY ~Pleasure you say? Tell us more. (Miriam moves closer to Salvanas.)~ IF ~~ THEN DO ~SetGlobal("MiriamUselessGlobal","LOCALS",1)~ EXTERN SALVANAS MiriamSalvanas2 END END APPEND SALVANAS IF ~~ THEN BEGIN MiriamSalvanas2 SAY ~Oh I would please you the whole night and you would come back for seconds in the morning.~ IF ~~ THEN DO ~SetGlobal("MiriamUselessGlobal","LOCALS",1)~ EXTERN CMGMIRIJ MiriamSalvanas3 END END APPEND CMGMIRIJ IF ~~ THEN BEGIN MiriamSalvanas3 SAY ~Do you know what we are?~ IF ~~ THEN DO ~SetGlobal("MiriamUselessGlobal","LOCALS",1)~ EXTERN SALVANAS MiriamSalvanas4 END END APPEND SALVANAS IF ~~ THEN BEGIN MiriamSalvanas4 SAY ~A beautiful pale lady who avoids the sun?~ IF ~~ THEN DO ~SetGlobal("MiriamUselessGlobal","LOCALS",1)~ EXTERN CMGMIRIJ MiriamSalvanas5 END END APPEND CMGMIRIJ IF ~~ THEN BEGIN MiriamSalvanas5 SAY ~Partly. You should know, we like to bite when we get intimate.~ IF ~~ THEN DO ~SetGlobal("MiriamUselessGlobal","LOCALS",1)~ EXTERN SALVANAS MiriamSalvanas6 END END APPEND SALVANAS IF ~~ THEN BEGIN MiriamSalvanas6 SAY ~A little bit of biting never hurts in the act of love making.~ IF ~~ THEN DO ~SetGlobal("MiriamUselessGlobal","LOCALS",1)~ EXTERN CMGMIRIJ MiriamSalvanas7 END END APPEND CMGMIRIJ IF ~~ THEN BEGIN MiriamSalvanas7 SAY ~(Miriam shows him her teeth.) Are you sure about that? We like blood and we have found from experience that the neck is not the only source to get blood from.~ IF ~~ THEN DO ~SetGlobal("MiriamUselessGlobal","LOCALS",1)~ EXTERN SALVANAS MiriamSalvanas8 END END APPEND SALVANAS IF ~~ THEN BEGIN MiriamSalvanas8 SAY ~(Salvanas looks into his ale mug.) Oh my! Would you look at that! It's time for a refill.~ IF ~~ THEN DO ~SetGlobal("MiriamUselessGlobal","LOCALS",1)~ EXTERN CMGMIRIJ MiriamSalvanas9 END END APPEND CMGMIRIJ IF ~~ THEN BEGIN MiriamSalvanas9 SAY ~(Miriam stand behind him, runs her hand down his chest than stops at his midsection, he trembles in fear. She licks his neck and works her way up to his ear.) *In a low voice.* Coward. (Miriam walks away.)~ IF ~~ THEN EXIT END END Link to comment
Ascension64 Posted November 20, 2007 Share Posted November 20, 2007 Whoa, isn't it better if you used a CHAIN? And I think variables don't set until the end of dialogue, unless the dialogue is non-pausing. Your first transition from Salvanas to Miriam might not work, thus. What's the reason for having SetGlobal("MiriamUselessGlobal","LOCALS",1) after every state? Oh, and you should probably put in Global("MiriamUselessGlobal","LOCALS",0) as a trigger right at the top, else he probably will say the same thing again based upon your state weights. Link to comment
Mike1072 Posted November 20, 2007 Share Posted November 20, 2007 Ascension64 beat me to most of it while, but I'll post my thoughts anyways. APPEND SALVANAS IF ~!InPartySlot(LastTalkedToBy,0) Name("cmgmiriam",LastTalkedToBy)~ Add a variable = 0 condition here so the talk doesn't fire multiple times when talking to Salvanas. THEN BEGIN MiriamSalvanas SAY ~Well, hello there, pale seductive one. I like my women exotic, seductive, and controlling.~ = ~Let me show you pleasure like you never experienced before.~ IF ~~ THEN DO ~SetGlobal("MiriamUselessGlobal","LOCALS",1)~ EXTERN CMGMIRIJ MiriamSalvanas1 END END Rename the UselessGlobal to be the non-repeating variable here. APPEND CMGMIRIJ IF ~Global("MiriamUselessGlobal","LOCALS",1)~ THEN BEGIN MiriamSalvanas1 Remove the global check to prevent the talk firing in other situations. SAY ~Pleasure you say? Tell us more. (Miriam moves closer to Salvanas.)~ IF ~~ THEN DO ~SetGlobal("MiriamUselessGlobal","LOCALS",1)~ I don't think you need to set any variables in this line. Aside from this, the rest of the states look good. Link to comment
jastey Posted November 20, 2007 Share Posted November 20, 2007 As the others already said: Put a "0" condition here: APPEND SALVANAS IF ~!InPartySlot(LastTalkedToBy,0) Name("cmgmiriam",LastTalkedToBy) Global("MiriamUselessGlobal","LOCALS",0)~ THEN BEGIN MiriamSalvanas SAY ~Well, hello there, pale seductive one. I like my women exotic, seductive, and controlling.~ = ~Let me show you pleasure like you never experienced before.~ IF ~~ THEN DO ~SetGlobal("MiriamUselessGlobal","LOCALS",1)~ EXTERN CMGMIRIJ MiriamSalvanas1 END and take out all the other DO ~SetGlobal("MiriamUselessGlobal","LOCALS",1)~ (the way it is now, the global gets set nine times. Further, as Mike1072 said, the "responses" would be triggered the next time the engine is looking for a valid dialogue block, as the variale is still at "1"). I would recommend putting a check for Miriam's state, too (!StateCheck("cmgmiriam",CD_STATENOTVALID), with tp2-tweaking for the custom state). The CHAIN Ascension64 is talking about would indeed be easier (and is made for cases like this). It would be: CHAIN IF ~!InPartySlot(LastTalkedToBy,0) Name("cmgmiriam",LastTalkedToBy) !StateCheck("cmgmiriam",CD_STATENOTVALID) Global("MiriamUselessGlobal","LOCALS",0)~ THEN BEGIN SALVANAS MiriamSalvanas ~Well, hello there, pale seductive one. I like my women exotic, seductive, and controlling.~ = ~Let me show you pleasure like you never experienced before.~ DO ~SetGlobal("MiriamUselessGlobal","LOCALS",1)~ EXTERN CMGMIRIJ == CMGMIRIJ ~Pleasure you say? Tell us more. (Miriam moves closer to Salvanas.)~ == SALVANAS ~Oh I would please you the whole night and you would come back for seconds in the morning.~ == CMGMIRIJ ~Do you know what we are?~ == SALVANAS ~A beautiful pale lady who avoids the sun?~ == CMGMIRIJ ~Partly. You should know, we like to bite when we get intimate.~ == SALVANAS ~A little bit of biting never hurts in the act of love making.~ == CMGMIRIJ ~(Miriam shows him her teeth.) Are you sure about that? We like blood and we have found from experience that the neck is not the only source to get blood from.~ == SALVANAS ~(Salvanas looks into his ale mug.) Oh my! Would you look at that! It's time for a refill.~ == CMGMIRIJ ~(Miriam stand behind him, runs her hand down his chest than stops at his midsection, he trembles in fear. She licks his neck and works her way up to his ear.) *In a low voice.* Coward. (Miriam walks away.)~ EXIT EDIT: corrections.. Link to comment
berelinde Posted November 20, 2007 Share Posted November 20, 2007 Shouldn't it be this? I think there's too many ENDs, and if it's CHAIN, you don't need to APPEND it. But if the state above it is not CHAIN, too, you need to END the APPEND above it in the D, and if the states that follow aren't CHAIN, you need to APPEND them. CHAIN IF ~!InPartySlot(LastTalkedToBy,0) Name("cmgmiriam",LastTalkedToBy) !StateCheck("cmgmiriam",CD_STATE_NOTVALID) Global("MiriamUselessGlobal","LOCALS",0)~ THEN SALVANAS MiriamSalvanas ~Well, hello there, pale seductive one. I like my women exotic, seductive, and controlling.~ = ~Let me show you pleasure like you never experienced before.~ DO ~SetGlobal("MiriamUselessGlobal","LOCALS",1)~ EXTERN CMGMIRIJ == CMGMIRIJ ~Pleasure you say? Tell us more. (Miriam moves closer to Salvanas.)~ == SALVANAS ~Oh I would please you the whole night and you would come back for seconds in the morning.~ == CMGMIRIJ ~Do you know what we are?~ == SALVANAS ~A beautiful pale lady who avoids the sun?~ == CMGMIRIJ ~Partly. You should know, we like to bite when we get intimate.~ == SALVANAS ~A little bit of biting never hurts in the act of love making.~ == CMGMIRIJ ~(Miriam shows him her teeth.) Are you sure about that? We like blood and we have found from experience that the neck is not the only source to get blood from.~ == SALVANAS ~(Salvanas looks into his ale mug.) Oh my! Would you look at that! It's time for a refill.~ == CMGMIRIJ ~(Miriam stand behind him, runs her hand down his chest than stops at his midsection, he trembles in fear. She licks his neck and works her way up to his ear.) *In a low voice.* Coward. (Miriam walks away.)~ EXIT Link to comment
jastey Posted November 20, 2007 Share Posted November 20, 2007 Of course. Forgot to delete the ENDs. And, obvously, I changed the above example to the CHAIN, not the below one that I wanted. This is not the first time this happens to me. I will edit the post. EDIT: corrected. Link to comment
Recommended Posts
Archived
This topic is now archived and is closed to further replies.