Jump to content

.D Formatting Error


Bill Bisco

Recommended Posts

I have the following code which is giving me a compile error

 

EXTEND_BOTTOM DEREVAIN 0
++ ~Greetings. Have you heard any rumors in your travels?~ + DO ~SetGlobal("Erevain_Met","GLOBAL", 1)~ +9 END

The original Dialogue which I'm extending is below.

IF ~NumTimesTalkedTo(0)~ THEN BEGIN 0 // from:
  SAY ~Well met, friend.  I am awesome!  I am Erevain Blacksheaf of Evereska.  It has been many moons since I have seen friendly faces.  Despite the dreary nature of our current locale, Easthaven is a welcome sight for these elven eyes.~ 
  IF ~~ THEN REPLY ~Hello.  I'm <GABBER>.  Tell me, Erevain, have you seen much in your travels?~  DO ~SetGlobal("Erevain_Met","GLOBAL", 1)~ GOTO 1
  IF ~!Race(Player1, ELF)~ THEN REPLY ~An elf, eh?  What in the Nine Hells are you doing up here?~  DO ~SetGlobal("Erevain_Met","GLOBAL", 1)~ GOTO 2
  IF ~Race(Player1, ELF)~ THEN REPLY ~Well met, brother.  How goes your journey?~  DO ~SetGlobal("Erevain_Met","GLOBAL", 1)~ GOTO 1
  IF ~~ THEN REPLY ~What's wrong with the locale?  There's nothing wrong with a little bit of chilly weather.~  DO ~SetGlobal("Erevain_Met","GLOBAL", 1)~ GOTO 3
  IF ~~ THEN REPLY ~Yeah, she's a beaut, isn't she?  Well, I must be off.  Farewell.~  DO ~SetGlobal("Erevain_Met","GLOBAL", 1)~ EXIT
END

Any help would be appreciated.

Link to comment

In the future, please post the actual error message. I quickly combined two of your scripts and tried to compiled them. WeiDu gives a syntax error. Judging from the materials I found (such as this wonderful tutorial http://gibberlings3.net/forums/index.php?showtopic=13675) short-style operators (++ and +) do not apply when you have actual conditions.

 

This appears to be syntactically correct but will not compile anyway since there's no state with number 9 in your dialogue (at least, in parts that you've presented here).

 

EDIT: correction, it compiles, but with warnings.

EXTEND_BOTTOM DEREVAIN 0
++ ~Greetings. Have you heard any rumors in your travels?~ DO ~SetGlobal("Erevain_Met","GLOBAL", 1)~ GOTO 9 
 
END
Link to comment

EXTEND_BOTTOM DEREVAIN 0
IF~Global("Erevain_Met","GLOBAL",0) ~THEN REPLY~Greetings. Have you heard any rumors in your travels?~ DO ~SetGlobal("Erevain_Met","GLOBAL",1)~ GOTO MyNew1
END

 

APPEND DEREVAN

IF~~THEN BEGIN MyNew1 //Always use your own designators, not numbers in case some other mod has appended already to the dlg. WEIDU will number stuff by itself when compiling (unless 9 is an existing state in the vanilla dialog and you want to go there)

SAY~There is blabla talk about this blabla event....~

IF~~THEN REPLY~Tell me more.~GOTO And_so_on

END
END

Link to comment

Thank you both for your generous replies. I was able to fix the issue above. I will include a screenshot for future cases. Roxanne, in my own particular unique case I am also allowing the base dialogue to be improved a bit. In the original dialogue, you get a only a couple of dialogue opportunities to glean certain information. Once you end the conversation the first time, information is no longer able to be asked.

 

I encountered another issue today. Your help would be appreciated.

 

The below Say line Works

IF ~~ mod_ErevainA6
SAY ~Yes, I am a Mage. I have a variety of spells and special abilities that assist me in going invisible or avoiding detection.~ 
IF ~CheckStatGT(Player1, 8, INT)~ THEN REPLY ~The last thing I want is a helpless mage adding dead weight. Good riddance.~ DO ~SetGlobal("Erevain_Jerk","GLOBAL", 1)~ EXIT
END

This SAY line does not work

IF ~~ mod_ErevainA7
SAY ~Very well. I shall consider traveling with your group another adventure in of itself. Come, let us explore onward!~ DO ~JoinParty()~ EXIT
END

I tried to follow the syntax. What do I need to do differently to get that line to compile?

 

Weidu screenshot is here:

 

ZkXBXq.png

 

Thanks,

 

Bill

Link to comment

That's definitely not the whole .d file...

Where's your THEN BEGIN, THEN REPLY'es ?

 

And then if you use GOTO mod_ErevainA7

 

Then a continuation of that is already started conversation, then you just:

IF ~~ THEN BEGIN mod_ErevainA7
SAY ~Very well. I shall consider traveling with your group another adventure in of itself.~ 
IF ~~ THEN REPLY ~Come, let us explore onward!~ DO ~JoinParty()~ EXIT
END 
Link to comment

 

That's definitely the whole .d file...

Where's your THEN BEGIN, THEN REPLY'es ?

IF ~~ THEN BEGIN mod_ErevainA7
SAY ~Very well. I shall consider traveling with your group another adventure in of itself. Come, let us explore onward!~ DO ~JoinParty()~ EXIT
END

IF ~~ THEN BEGIN mod_ErevainA7

SAY ~Very well. I shall consider traveling with your group another adventure in of itself. Come, let us explore onward!~

IF~~THEN DO ~JoinParty()~ EXIT

END

Link to comment

Archived

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

×
×
  • Create New...