Jump to content


Noobie with a crisis


  • Please log in to reply
15 replies to this topic

#1 -DBEfly-

-DBEfly-
  • Guest

Posted 12 January 2003 - 02:07 AM

*throws up hands in air to call down a powerfull force* Let the questions of an editing newbie begin! (Who needs answers very badly....)

Noobie Question #1 : I 'think' I've written my .bcs file with the location I want my npc to pop up correctly....but how do you append it by using WeiDU? Or is this done automatically if you put your custom .bcs file into override? (Weidu still = scary program with malignant numbers)

Noobie Question #2 : To create a .dlg file you must convert your .d file to .dlg using WeiDU correct? Or do you have to do it some other way....?

Noobie Question #3 : I've noticed that there are multiple .cre files for the same creature but with different scripts....is there a limit in how many responce strings there can be and that is why there are multiple .cre files for the same ch? Or is it once you've started a new npc conversation (S#NehtS and S#NehtD for example) these new 'conversations' will have to be added to different .cre files of the same npc? Just something I've been wondering.....

*dark clouds start to swirl dangerously overhead*

Any answers/help will be greatly appreciated! I think I'm actually going bald from pulling out my hair while trying to learn NI, ShadowKeepr, IEEP, and InfExp0.75.......oh, can't forget Creature Editor........and who knows how many tutorials.....
:ph34r:
Just have to hope my English makes sense

*pulls out a broken umbrella to stop the watery editing codes from falling on her head*

#2 Tsuru

Tsuru

    Solaufein's Flirt Coordinator/Morgan's Scribe

  • Member
  • 996 posts

Posted 12 January 2003 - 02:12 AM

Welcome to the club. I keep saying my hair is gonna turn gray from it though :)

#1. Read the TP2 information. You tell it to append the AR file from there.

#2. Yes, use Weidu. Pay attention to all those lovely little things that pop up. It took me a long while last night to get a loooong dialogue file to compile, but it was well worth it in the end for a clean compile :)

#3. I have no idea, I'll leave that one for someone more experienced. I'm still trying to decide what color to dye my hair when that first gray comes in ;)

And definitely post with questions. And read here and FWP. You'd be amazed how often I found a question I needed answered already posted :)

Tsuru (who really should go to bed sometime tonight *sigh*)

(If I got anything wrong, blame it on being up far too long and my nerves being shot. My grandmother was hospitilized earlier today and I was going insane for several hours while waiting for my mom to call to tell me she's going to be ok. And I still can't settle enough to sleep.)
Keoiagh i grád la mo sám óin, dá anims a óin.

Dreamweaver, I believe you can get me through the night...
Dreamweaver, I believe we can reach the morning light...

#3 weimer

weimer
  • Member
  • 1569 posts

Posted 12 January 2003 - 07:58 AM

#1. In a TP2 file, add something like:

EXTEND_TOP ~AR0700.BCS~ ~mymod/myscript.bcs~

#2. We recommend the D->DLG method using WeiDU, but in the interest of honesty I should also mention that you can use IDU or IDW (from teambg) to create DLG files from scratch.

#3. "response strings" have nothing to do with creatures and scripts. You can have more than 32 "IF .. THEN REPLY ..." responses in a single dialogue state. The game will give multiple CREs with the same name because some are used in cut-scenes, some are used in chapter 2, some are used in chapter 6, etc. (e.g., Bodhi). Your question is very confusing, which tells me that you're not really sure about what is going on. Here is some information:

Different CRE files may share the same DLG. The DLG associated with a CRE file (and set with NI, say) is the DLG that is used when a player clicks on that CRE to talk to it or when that CRE starts a conversation from a script. Typically you make one CRE file for your NPC at level 10 and one for it at level 12 (say). Both of those CRE files would use the same DLG resource.

#4 -DBEfly-

-DBEfly-
  • Guest

Posted 12 January 2003 - 02:24 PM

Ack, I have more reading to do then...and some rereading. But looking at a glowing screen and pressing down on the scroll button is something I have alot of experience in. :P

Noobie Question #4 : Would it be possible then (similar to the lvl 10 and lvl 12 example you gave Wes) to create a LoveTalk that is 'triggered' once 'X amount of xp is earned' in the game instead of 'X amount of time has passed' ? How would you type something like that?

I apologize before hand if I'm not making much sense (again) :ph34r: , and thankyou Tsuru and Weimer for answering my questions!

*stoppers one of the holes in the broken umbrella, but is causes only bigger editing codes to come through some of the other holes*

(I hope you managed to sleep well Tsuru! As long as things begin to look better, everything will be alright eh?)

#5 Tsuru

Tsuru

    Solaufein's Flirt Coordinator/Morgan's Scribe

  • Member
  • 996 posts

Posted 12 January 2003 - 02:41 PM

Wes is definitely the one to listen to here :) And yes, reading, reading, reading. Sometimes it takes me several times of readthroughs (and whimpers for help as well) to finally understand things but it's not that difficult once your mind is wrapped around it :)



(And yes, I did, thank you. :) )
Keoiagh i grád la mo sám óin, dá anims a óin.

Dreamweaver, I believe you can get me through the night...
Dreamweaver, I believe we can reach the morning light...

#6 -Ghreyfain-

-Ghreyfain-
  • Guest

Posted 12 January 2003 - 09:57 PM

Would it be possible then (similar to the lvl 10 and lvl 12 example you gave Wes) to create a LoveTalk that is 'triggered' once 'X amount of xp is earned' in the game instead of 'X amount of time has passed' ? How would you type something like that?


It is possible, yes. The trigger for that would be XPGT("NameHere",49999).

To find the various triggers, actions, objects, and other things you'll need for scripting, you can look through the .IDS files in BGII. NearInfinity can browse them, but I find it easier to extract them all and use notepad or a text editor (such as ConTEXT or PFE) to view them.

#7 -DBEfly-

-DBEfly-
  • Guest

Posted 13 January 2003 - 01:08 AM

*cheers*

Thankyou Ghreyfain for the information! That's one less bald spot on my head when it comes to the hair yanking! :D

I have just one more thing to figure out before I can get to extensive scripting and reading--well, at least for the time being-- trying to figure out how to make an npc permanently invised or blurry. (The npc I'm creating is a ghost who's been around for while) Just adding the state 'blur' or invis' to the .cre file doesn't seem to work. Creating a permanent, improved invisable spell doesn't work either since once the character is exported the spell no-longer works--or when the npc dies and is brought back to 'life'.

I may end up having to create one of those annoyingly 'cannot remove' items with the modified invisable spell on it and just put the item with the hidden effect on the npc to get it to work.......does anyone know another way to make a npc permanently in a blurred or invisable state without having to create an item that can't be taken off of the npc?

(*sighs* I REALLY need to freshen up on my English. )

#8 -Ghreyfain-

-Ghreyfain-
  • Guest

Posted 13 January 2003 - 01:55 AM

You could try putting a bit in her script that re-casts the custom blur spell when she in unblurred.

!StateCheck() is the trigger you want. Check it in the TRIGGER.IDS file to see how to complete it.

#9 -DBEfly-

-DBEfly-
  • Guest

Posted 13 January 2003 - 11:26 AM

Will do!

*the dark clouds break apart and the sun shines through*

Thankyou again for the help Ghreyfein!

#10 Amazor'dra

Amazor'dra

    The Rogue Drow

  • Member
  • 484 posts

Posted 19 January 2003 - 11:22 PM

Really dumb question, but....

What is the difference between a SetDialog action and a StartDialog action?

If someone can give me answer then I'll be finished with an npc conversation :)
.....and thankyou before hand!

#11 Dyara

Dyara
  • Member
  • 262 posts

Posted 20 January 2003 - 06:10 AM

It´s quite simple. 'SetDialogue' only sets the dialogue (assigns a dialogue file to a NPC). A following StartDialogueNoSet(O:Object*) will use this dialogue file then. 'StartDialogue(S:DialogFile*,O:Target*)' starts a dialogue with 'O:Target*' using dialogue file 'S:DialogFile*'.

You can find a lot of infos about scripting at IESDP. There you can find descriptions for the most IE actions and triggers.

#12 Amazor'dra

Amazor'dra

    The Rogue Drow

  • Member
  • 484 posts

Posted 20 January 2003 - 11:22 AM

It´s quite simple. 'SetDialogue' only sets the dialogue (assigns a dialogue file to a NPC). A following StartDialogueNoSet(O:Object*) will use this dialogue file then. 'StartDialogue(S:DialogFile*,O:Target*)' starts a dialogue with 'O:Target*' using dialogue file 'S:DialogFile*'.


Thankyou, I was trying to figure out a way to change dialogue files after a conversation. I knew it had to be one of those two, but wasn't sure which would work better for what I want.

You can find a lot of infos about scripting at IESDP. There you can find descriptions for the most IE actions and triggers.


Oh, I'm going to have great use for this! Thankyou again. B)

#13 Blucher

Blucher
  • Member
  • 97 posts

Posted 20 January 2003 - 02:56 PM

Just as a note the .dlg set by both SetDialogue() and StartDialogue() is a permanent change. You have to change it back to whatever else was there, if that's you want to do.

Another useful difference between Dialogue() and StartDialogueNoSet() / StartDialogue() is the the first requires the .cre to move toward the player/object while the second allows dialogue from across a map.

#14 Amazor'dra

Amazor'dra

    The Rogue Drow

  • Member
  • 484 posts

Posted 20 January 2003 - 03:31 PM

What I want to do is something along these lines (*apologizes and runs if it doesn't make sense) :

IF
XPGT("NameHere",49999)
THEN
RESPONCE #100
//add conversation here and once it's over switch to another .dlg. Then, begin the conversation in the new .dlg once it reaches another trigger, say XPGT("NameHere",60000)//

I thought that the SetDialogue or StartDialogue would make what it is I want possible. Is there an easier way to do this? Erm, or have I gotten confused with what goes under IF and THEN?

#15 japheth

japheth

    Codewalker

  • Member
  • 317 posts

Posted 20 January 2003 - 04:34 PM

The easiest thing to do would be to set a global or local after X amount of experience has been attained and then use that global as a trigger in your dialogue file.

So, something like this:

IF
XPGT("NameHere",49999)
Global("XpCheck","GLOBAL",0)
THEN
RESPONCE #100
SetGlobal("XpCheck","GLOBAL",1)
StartDialogueNoSet(Player1) //Or with whomever you want to start the dialogue with
END

Then, in your .d file, you would have something like this:

IF ~Global("XpCheck","GLOBAL",1)~ block0
SAY ~Ha, I have over 49999 XP!~
IF ~~ THEN REPLY ~That's great.~ EXIT
END

Then simply repeat the process for XPGT("NameHere",60000) (but make sure to increase the global by one).

You could also weight the states to ensure that they are checked first. That's done by simply adding this to the above dialogue:

IF WEIGHT #0 ~Global("XpCheck","GLOBAL",1)~ block0
SAY ~Ha, I have over 49999 XP!~
IF ~~ THEN REPLY ~That's great.~ EXIT
END
Check out BG1Tutu.

#16 Amazor'dra

Amazor'dra

    The Rogue Drow

  • Member
  • 484 posts

Posted 22 January 2003 - 12:43 AM

Thankyou for you help Japheth.

Just have to hope that all the knowledge will sink in so that my own npc will work correctly. B)