Jump to content

QUESTIONS...


fornarch

Recommended Posts

Ok...well 1st off im a newbie at modding and after reading the tutorial on the main website im still confused on stuff...so my 1st question is...

 

1.) How do you get an NPC to say a specific thing? For like 3 days now Ive been trying to make my NPC say one specific thing but it refuses to work. Lets say Im trying to make him say "Hello, very nice day out." I have it typed up in the dialogue box under conversations/hello. I have Random and Run Immediately checked. In the conditions I have Get Disposition >=20 and also no GetIsID NPC 'BrittonWyatt' ==1. However in the game when I approach my NPC he says one of the other things and the only thing I want him to ever say is "Hello, very nice day out." nothing else. How do I get him to say only that?

 

2.) I am really confused about the GetIsID tag. Can someone clarify it for me? I understand most of the rest but this one...IDK? Not just the tag either though but like what happens if you set the value ==0 or click run on target...or both? Also in some topics they use the GetIsId tag twice for example in the MSO2 quest under conversation/infogeneral it says......yes getisid NPCVelwinBenirus ==0 then it says the same thing with just a no instead? What's up with that shouldnt those just cancel out???

 

3.) um...This question has to do with sound. For my character from question 1 I have my sound file already created and recorded but I dont know how to put it in the game and for my NPC. How do you this...or does anyone know of a tutorial....a good tutorial I can go read and figure it out? thanks

 

Those are pretty much the only questions I can think of for now...I probably have more but just cant think or remember them...If you know the answer to any of these or know of a good tutorial to go to then please reply back...I will be eternally grateful and hopefully in the near future I will be able to work on a quest. Thats my ultimate goal here. I pretty much already have the story written up now just gotta know how to make it happen...and once again Thanks!!!!

Link to comment
Share on other sites

1 -- Might be due to lack of sound-files. The actor might be saying his stuff, but incredibly fast? (Near lightspeed :))

 

2 -- Finally, a scripting question :)

Oblivion has two kinds of "object types" or "variables".

References and IDs.

A reference is a link to an unique instance.

An ID is a type of item. These two looks pretty much like "pointers" and "classes" (Or, RECORDS for you Pascal-coders)

 

A long example:

Tim is a teenager. He goes to school every day.

Bob is another teenager that also goes to school every day.

One day, Akatosh wants to speak to someone. He decides to summon a teenager, so he checks his list of IDs, looking for "Teenagers who goes to school when they should".

He waves with his hand and conjures a third teenager, Michael. When he finishes speaking to Michael, he lets him go to school in the Imperial City.

 

After some weeks, Akatosh wants to speak with him again. A lot of teenagers look the same, so he picks one out. He won't be able to find Michael just like that, so he tries {getisid goodteenager}, and the result is ZERO. The teenager he picked wasn't one of those who went to school every day.

He picks a new one.

{getisid goodteenager} returns 1, but {getself == Michael} returns 0.

 

NPCVelwinBenirus is the prototype.

if (getisid NPCVelwinBenirus == 1)

checks whether the guy in front of you is made of the type "NPCVelwinBenirus". There could be thousands of those.

Link to comment
Share on other sites

Ok..thanks..that helps to makes a little sence for Question 2. But its these 4 conditions that are confusing to me

 

no getisid Velwin Benirus ==1 -This one I think means it checks to make sure Velwin Benirus is the speaker

yes getisid Velwin Benirus ==1 - This one checks to make sure that it isnt Velwin Benirus speaking

no getisid Velwin Benirus ==0 - This one I dont know at all

yes getisid Velwin Benirus ==0 - This one I dont know at all

 

I think the quote confused me more then helped... Im going to try to put it into what I understood it to be

 

 

Basicly what I understood was...In a visual way

 

Akatosh wants to talk to a teenager, So there are a whole bunch of teenagers standing in front of him "the list", He picks one, talks to him, and sends him on his way

Later, Akatosh wants to talk to that same kind, Michael, But because they all look alike he doesnt know which one it was. So he randomly picks a kid again and checks using getisid to see if it was the same kid. It wasnt so

he tries again until Akatosh finally finds Michael again.

 

That is what I understood from the quote....???

 

I STILL NEED HELP WITH ALL THE OTHER 2 QUESTIONS IF ANYONE CAN HELP ME WITH THEM PLEASE! ESPECIALLY NUMBER 1..THANKS

Link to comment
Share on other sites

No, he finds someone who LOOKS like Michael, from the same ID.

But he didn't find "Michael"s reference...

 

Well, Vagrant0 is better at explaining stuff...

I keep typing wrong words (that doesn't exist), put in commas on strange places and ... write very weird.

Link to comment
Share on other sites

A boy has been naughty. So Akatosh wants to have a meteor fall on his head. But, he stands next to another boy. Because the two boys look exactly the same, Akatosh doesn't know which one to throw the meteor on.

 

Luckily, he gave the two boys reference names. You could see them as nicknames. The one is called Micheal , and the other Bob. The reference name makes them unique, so he knows the difference between the two boys. Micheal was naughty, so the boy with the reference name Micheal was hit by a meteor.

Bob lived happily ever after.

 

If you still don't understand, I'm sure Vagrant0 can explain it better. :)

Link to comment
Share on other sites

A boy has been naughty. So Akatosh wants to have a meteor fall on his head. But, he stands next to another boy. Because the two boys look exactly the same, Akatosh doesn't know which one to throw the meteor on.

 

Luckily, he gave the two boys reference names. You could see them as nicknames. The one is called Micheal , and the other Bob. The reference name makes them unique, so he knows the difference between the two boys. Micheal was naughty, so the boy with the reference name Micheal was hit by a meteor.

Bob lived happily ever after.

 

If you still don't understand, I'm sure Vagrant0 can explain it better. :)

 

 

Oh...ok...that makes sence that the reference name was Michael. I get that now...so in my first example Velwin Benirus would be the reference name...tell me Im right...hopefully I am. If not Im screwed lol. But now what would be the ID? Cuz GBHis says their are references and ID's. So if we got the reference what's the ID.. Thanks.

 

O and I finally found DTom's Begginners guide lesson 6 and 7 so I may or may not get the answers from these.

Link to comment
Share on other sites

1.) How do you get an NPC to say a specific thing? For like 3 days now Ive been trying to make my NPC say one specific thing but it refuses to work. Lets say Im trying to make him say "Hello, very nice day out." I have it typed up in the dialogue box under conversations/hello. I have Random and Run Immediately checked. In the conditions I have Get Disposition >=20 and also no GetIsID NPC 'BrittonWyatt' ==1. However in the game when I approach my NPC he says one of the other things and the only thing I want him to ever say is "Hello, very nice day out." nothing else. How do I get him to say only that?

 

Well turn off Random for one thing. That will make it be part of the random selection for greetings. The "Run Immediately" only affects scripts that the dialogue will run. You could add to the conditions "GetIsID player" and select the option "Run on target". I would suggest having "GetIsId" then have the target as your NPC (make sure for this condition that "Run on Target" is off). The dialogue has to be part of a quest the player is on as well. Also if you only want it to be said when you walk up to the NPC you have to have it under the conversation tab as part of the "HELLO" section.

 

Do all of your editing for dialgoue through the Quest window as well. Filtered Dialogue is mainly for finding the dialgoue and perhaps editing it, not creating it.

 

Hope this helps.

Link to comment
Share on other sites

Well turn off Random for one thing. That will make it be part of the random selection for greetings. The "Run Immediately" only affects scripts that the dialogue will run. You could add to the conditions "GetIsID player" and select the option "Run on target". I would suggest having "GetIsId" then have the target as your NPC (make sure for this condition that "Run on Target" is off). The dialogue has to be part of a quest the player is on as well. Also if you only want it to be said when you walk up to the NPC you have to have it under the conversation tab as part of the "HELLO" section.

 

Do all of your editing for dialgoue through the Quest window as well. Filtered Dialogue is mainly for finding the dialgoue and perhaps editing it, not creating it.

 

Hope this helps.

 

Ok thanks! I really thought it was going to work but...ofcourse it didnt..it hates me. I am including a screenshot of what I have so other people can see it and maybe people will be able to help more because of that...

 

 

Ok well anyway....after reading most of the way through the lesson 6 begginner quide by DTom I pretty much understand reference and Id!!!!! yay!!!!! Buttt.....I am typing in this script it says

 

scn Britton Script

ref me

Begin Gamemode

if (player.getdistance <400)

startconversation me Hello

Endif

End

 

I believe everything is right in there but I keep getting this message when I save

 

Missing paramet ObjectReferenceID.

Script not saved

 

What do I have to do do for that?

 

 

 

 

Image.....

Yes I know that all the rows say BrittonWyatt under the NPC column but this was the only way I could get it to work. I had to add the condition yes getisid BrittionWyatt ==1 to all of the other ones or else my NPC would say them. Yes your wondering why if I got it to work then why am I asking to get it to work...well that is because there has got to be a better way to do it.

Link to comment
Share on other sites

Yup. Two errors.

 

1:

{if (player.getdistance <400)}

I think you mean {if (getdistance player <400)}

 

2:

{startconversation me hello}

You want to speak to nobody? Is this a work-around, or an error? Anyway, the ref "me" is declared, but not set anywhere.

Link to comment
Share on other sites

Archived

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

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...