Jump to content


Kismet's Content

There have been 112 items by Kismet (Search limited from 17-June 23)


By content type

See this member's


Sort by                Order  

#92941 Journal entry problem

Posted by Kismet on 15 February 2004 - 02:13 PM in IE Help

A couple of comments. Using numbers for state lables can lead to confustion. It's better to use some sort of text and just let WeiDU convert it to numbers. The JOURNAL and UNSOLVED_JOURNAL should go on the same lines as the REPLYs. I think with adding journal entries in .d files you have to use a .tra file.

So your .d file would look like:

IF ~~ THEN BEGIN NPCWantsToJoin
SAY ~I am in need of able men, but I am not desperate for them.~
IF ~~ THEN REPLY ~Yeah, yeah, yeah, let's just get to it.~ DO ~SetGlobal("fighterJoined","LOCALS",1) JoinParty~ UNSOLVED_JOURNAL @0 EXIT
IF ~~ THEN REPLY ~Bah! I have no for you.~ JOURNAL @1 EXIT
END

And your .tra file would look like:

@0 = ~Looks like I'm stuck with the fighter.~
@1 = ~I told the fighter go sod off. Bah!~

And your .tp2 file would use:

COMPILE ~mymod\npcdialog.d~
USING ~mymod\npcdialog.tra~



#93039 Romance Specific coding questions

Posted by Kismet on 16 February 2004 - 05:16 AM in IE Help

And now for another question!    :rolleyes:  How do I code a flirt pack-type thing?  I do not know how to code up the force-talk part.  I assume that the rest is just like a banter with random responses, but how do I get the flirt-pack force-talk part to happen?

Also, umm, where do I PUT the flirt-pack?  Does it go in the B file?  the J?  Some other mysterious file?  <_<

Thanks!

Sillara

*Kismet points back to her example on page 1.



#93147 Journal entry problem

Posted by Kismet on 16 February 2004 - 03:59 PM in IE Help

Unless you have a whole ton of journal entries already done, I'd just do it manually. By that I mean make a text file put your journal entries in it like I posted before and save it as mynpcdialog.tra and replace the journal entries with the appropriate @#.

If you wanted to --traify the file you would use: weidu --traify mymod\dialog.d --dout dialog-new.d.

That would put dialog-new.d and dialog-new.tra in your BG2 main directory.

This is the appropriate part of the readme for converting a hardcoded .d file. http://www.weidu.org...iDU.html#htoc15



#93174 Dialogue Problems

Posted by Kismet on 16 February 2004 - 06:49 PM in IE Help

Try weighting the banter lower than the store dialog. For the storekeep to start the dialog from where he's standing use StartDialogNoSet() rather than Dialog().

If you're going to use that script for the storekeep to start the dialog upon seeing Aerie then the trigger in the .d file should be Global("AerieChat","GLOBAL",1).



#93236 Romance Specific coding questions

Posted by Kismet on 17 February 2004 - 04:24 AM in IE Help

What did I tell you?  Here I am again with another question.   :rolleyes:

What is the code or command or what-have-you to make sure my Lovetalk is triggered in a specific area, say outdoors, or at a specific time, say night.

I have read earlier in this thread about rest-triggered dialogues, of which I have several, but I need this, too.  :unsure:

Thank you!
Sillara

AreaCheck()
AreaType()
Time()
Timoday()

IESDP is your friend: http://dragonlance.t...esdp/index.html



#93319 Dialogue Problems

Posted by Kismet on 17 February 2004 - 05:55 PM in IE Help

A dialog file could have any number of true states but it will only return the first one it comes to. Assuming this is an existing dialog file you would do something like:

IF WEIGHT #-1 ~Some conditions here~ THEN BEGIN Blah
SAY ~Something~
IF ~~ THEN REPLY ~Something else~ EXIT
END

If it's your own dialog file then just put that higher in the dialog stack than the standard store conversation and you wouldn't have to worry about WEIGHTs.

For starting a conversation after a battle I'd do something like:

IF
InParty(Myself)
Global("BattleTalk","GLOBAL",0)
Dead("somecreature")
THEN
RESPONSE #100
SetGlobal("BattleTalk","GLOBAL",1)
Dialog(Player1) or if you want to use th Bxxx.dlg file you'd use Interact(Player1)
END

Then have your dialog check for BattleTalk to be 1 and go from there.



#93420 Modding for Beginners

Posted by Kismet on 18 February 2004 - 08:08 AM in IE Help

kit.ids is also broken so you'll have to distribute a fixed one with your mod or work around it.



#93545 Converting .CHR to .CRE

Posted by Kismet on 19 February 2004 - 05:13 AM in IE Help

I'm pretty sure when you CreateCreature() you use the .cre file name and not the death variable.

A death variable is a unique identifier (ok, it doesn't *have* to be unique, but for a joinable NPC it should be). It's used in scripting/dialog triggers and actions and is generally some form of the NPC's name (although, again, it doesn't *have* to be).

If you're using Near Infinity, you'd open up your .cre file and click on the edit tab to input those variables/names.

Your .cre file will eventually need to end up in the override, but if you're planning on making a distributable mod it's better to set up a mod directory in your BG2 main directory and have stuff copied over via the .tp2 file.



#93801 Romance Specific coding questions

Posted by Kismet on 20 February 2004 - 03:08 PM in IE Help

What is the unit of time used for the real timers?

That would be seconds.



#93803 Romance Specific coding questions

Posted by Kismet on 20 February 2004 - 03:13 PM in IE Help

Ahh, more annotation would help.

I assme that in:
SetGlobal("CheckGabberMatch","GLOBAL",1)
SetGlobal("GabberMatch","GLOBAL",1)

That "Gabber" is the name of the NPC?

Global variables can be any unique string up to, I believe, 32 characters. It is good practice, however, to have the variable reflect what you're tracking so that anybody looking at your code (yourself included) will have some idea of what you're trying to do.



#98623 Interjections

Posted by Kismet on 02 March 2004 - 04:19 AM in IE Help

What you're looking for is the .dlg file attached to the appropriate .cre. Quite often they're the same or similar to the creature's name, but not always. For example, Hendak's dialog file is HENDAK but Valen's is BOANASTE. Near Infinity is good for searching for the dialog file name when all you know is the creature's name.



#99561 Romance Specific coding questions

Posted by Kismet on 03 March 2004 - 10:30 AM in IE Help

The timers get set (and checked) in the NPC's script generally. You could set them in the dialog file, but it's probably neater to set them in the script. The only delay I can see in Anomen's romance timer is if the timer expires and you've just finished resting (maybe to give the rest movie a chance to finish). Is that what you mean by delay?



#101906 WAVC files

Posted by Kismet on 07 March 2004 - 02:21 PM in IE Help

I believe that DLTCEP will do this.



#102353 DREAM scripts: group insomnia

Posted by Kismet on 08 March 2004 - 05:11 AM in IE Help

Did you have any luck? I see no one has posted any replies, but I was wondering what you had done. I am working on my dream scripts, too, you see. ;) And, please forgive this stupid question, but for a separate mod (similar to the Valygar dream scripts I have seen show up) did you have to create a new PDIALOG.2DA? Could I name it something else? PTSUJAT.2DA for instance?

Thanks!

Sillara

For adding in a new NPC to BG2 you wouldn't overwrite the pdialog.2da file, you would just append to it. Check the WeiDU/examples directory for mymod.tp2 to see how it's done. I believe Domi is probably asking about her BG1 banter project so the NPCs are already existing in game so that's why she would have to overwrite the pdialog.2da file.



#102637 Modding for Beginners

Posted by Kismet on 08 March 2004 - 03:40 PM in IE Help

I'm not sure why you need 2 script blocks.  I did this with Cailean:

His script:
//Cailean complains about the Docks
IF
    InParty(Myself)
    AreaCheck("AR0300")
    Global("FWCaileanQuestCompleted","GLOBAL",0)
    Global("FWCaileanDocksWarning","GLOBAL",0)
THEN
    RESPONSE #100
        SetGlobal("FWCaileanDocksWarning","GLOBAL",1)
        StartDialogNoSet(Player1)
END

His xxJ.dlg file:
//Cailean comments on entering the docks.
IF ~AreaCheck("AR0300") Global("FWCaileanQuestCompleted","GLOBAL",0) Global("FWCaileanDocksWarning","GLOBAL",1)~ THEN BEGIN CaileanDocksWarning
  SAY ~Docks! Thieves! Blah!~ // he doesn't really say this
  IF ~~ THEN DO ~SetGlobal("FWCaileanDocksWarning","GLOBAL",2)~ EXIT
END



#102818 Modding for Beginners

Posted by Kismet on 09 March 2004 - 05:20 AM in IE Help

What kind of errors did you get?  I had no problems using CHAIN in a xxJ.d file.



#103201 DREAM scripts: group insomnia

Posted by Kismet on 10 March 2004 - 05:18 AM in IE Help

You'd want your IncrementGlobal to be "TsujathaLoveTalk" rather than "LoveTalk". If you want this to happen only when you rest outside then you'd put that in the conditions too.



#103235 Modding for Beginners

Posted by Kismet on 10 March 2004 - 07:04 AM in IE Help

As far as compiling CHAINs is concerned, I'm pretty sure a .d file is a .d file is a .d file (meaning it doesn't matter if you call it btsuj.d or fstuj.d or mydia.d you just need to get your syntax straight.)



#103458 Modding for Beginners

Posted by Kismet on 10 March 2004 - 02:54 PM in IE Help

You don't want CHAIN, you want multisay. :)

SAY ~Something~
= ~I'm still saying something~
= ~This is a really long something that I'm saying.~
IF ~~ THEN REPLY ~Done yet?~
etc.

Which, by the way, is covered in the weidu readme.  http://www.weidu.org...eiDU.html#htoc8



#105414 Syntax errors?

Posted by Kismet on 21 March 2004 - 08:18 PM in IE Help

It should be:

IF ~~ THEN EXTERN MULGORE 0 (although you really shouldn't use numbers for statelabels but should use some descriptive text instead)



#105534 Syntax errors?

Posted by Kismet on 22 March 2004 - 05:31 PM in IE Help

Did you start off the .d file with:

BEGIN ~xavia~



#105542 Syntax errors?

Posted by Kismet on 22 March 2004 - 06:26 PM in IE Help

Check the blocks before that one to make sure you're not missing any ending ~



#105783 Syntax errors?

Posted by Kismet on 24 March 2004 - 05:34 PM in IE Help

Since BG1tutu uses the BG2 game engine I wouldn't think you would need to use the ADD_GAME_NPC command (since that is for BG1 only).



#105829 Interjections

Posted by Kismet on 25 March 2004 - 07:09 AM in IE Help

You also wouldn't want to increment the global twice.



#105830 P files

Posted by Kismet on 25 March 2004 - 07:12 AM in IE Help

Make sure the proper dialog files were appended to your pdialog.2da. Also, in your .cre file, make sure the flags are set to 'none'.