Why don't you talk to me.

Started by
8 comments, last by Nazrix 23 years, 9 months ago
No, this isn't a heated debate filled with reports of the wrong-doings of the game industry. It's about people not paying attention to me and not talking to me enough... Okay it's not about that either... I was just curious of ideas for conversation techniques when conversing with NPCs. There's the pick the thing you want to say as in Baulder's Gate and other games. There's the method where the player would type in what you want to say and let some sort of parser figure out what to do w/ your input. Each have obvious advantages. Being able to say what you want is good, but AI is not at the point of understanding the English language. I just wondered if anyone has some alternative methods. Edited by - Nazrix on 6/29/00 11:15:48 PM
Need help? Well, go FAQ yourself. "Just don't look at the hole." -- Unspoken_Magi
Advertisement
When i run into problems like this i try to look a the "Different Types" first and then examine the usefulness. In the case of communication i would start by looking at:
- sign language
- text
- verbal
- body language
- music
- etc

then work out their differences. Are any of them more modular than others. That is, do certain types of communication hold methods of communicating that would be more applicable to a computer game?



WE are their,
"Sons of the Free"
I solved this issue with multiple pick up choices and modulation of the answer.
This still isn''t as good as a real RPG but I can''t do best for now.

First pickup the sentence you want to tell.
Second modulate it in the second pick up ''window'' : nice talk, threatening...

I thought of even modulating it throught character position/expression.
(If you hold your hand on your sword''s guard, it''s different than if you smile...)
But I didn''t do it.

-* So many things to do, so few time to spend *-
-* So many things to do, so little time to spend. *-
LOL Naz, good title

Ok, here''s the deal. You can do a dumbed-down language parser pretty easily. It looks for specific words within the sentance. Words associated with violence would be taken that way, cuss words, too. And certain things could ring the character to speak about them. Like say the character''s on a quest.. and they approach an NPC. They say something like "hi" and the NPC can respond in kind. They say "where is the runestone?" and it could ask what rune etc.. or say something like "i heard it was down in the woods". Simple things like that. punctuation and all that can make it easier to know if the NPC should answer a question or what. It''s something that''s been done. It can''t fully parse, but it can pull out keywords.. which is what our minds do, anyways. How many times can you recall actually hearing someone say the word "the" lol! not many specifically because the word THE holds no meaning, it''s merely a place holder

J
I made a language parser at the time of my CPC6128...
A nightmare.

And their is a BIG drawback to the language parser : international sell of the game !
You''ll have to modify it (and of course the Database) for many countries.

I think this is mostly why no more games are using parsers, while they were used @ the old time of my CPC6128.

Nazrix and Niphty, can you please stpo compacting your text ?
I mean, what about pragraphs, line feed...




-* So many things to do, so few time to spend *-
-* So many things to do, so little time to spend. *-
Niphty, thanks for the compliment on the title

I never thought about the effects of a parser and other languages. Thanks for the info, Ingenu.

One thing I was considering is having flags for all of the important NPCs, places, and items.

And every time the player comes in contact w/ or hears of these things, a flag will be set so that then the player would have an option to ask any NPC about those NPCs, places, and items combined w/ a select what you want to say approach.



Ingenu,

is

this

better

?






Edited by - Nazrix on June 30, 2000 10:21:10 AM
Need help? Well, go FAQ yourself. "Just don't look at the hole." -- Unspoken_Magi
I don't think localisation issues are really a factor, as with any form of advanced parsing techniques, you're getting down into sentence structure, the format of which is fairly constant across most european and western asian languages.

One reason why the old games on the CPC6128 (I had a 464, myself) had fairly impressive parsers and modern games do not, is that the old text adventure games had very limited vocabularies. With perhaps less than 20 verbs and 50 nouns, it was trivial to check the validity of a sentence. Modern games are more likely to have hundreds of nouns, and would most likely want to support more verbs, so the combinations mount up making it much more difficult.

Another benefit of the text adventures were that they nearly all dealt with commands, ie. 'imperative' sentences. These sentences were nearly always of the form 'verb-object[-prepositional object]' which is simple to parse. But to be able to talk to NPCs in the way we would like, we need to be able to understand statements and questions, both of which have different sentence forms. A naive analysis of words in the phrase would not work. Consider this example:

Is it a magical sword
It is a magical sword

The first is a question, the 2nd is a statement, they are identical except for the ordering of the words. Using a question mark helps to make it less ambiguous, but users tend to omit such detail, and when you start adding subordinate clauses in, it becomes even more unmanageable:

Is it a magical sword that can kill dragons?

Parsing these structures is not impossible, but is still something of a nightmare The above sentence is context dependent. Consider the 2 following exchanges:

"Dragons can only be killed by one thing."
"Is it a magical sword that can kill dragons?"
"No, it is the Amulet of BlahBlah."

"What you have there, my son, is DragonBane."
"Is it a magical sword that can kill dragons?"
"Yes, as a matter of fact it is."

2 totally different meanings, for exactly the same sentence. The first is "can dragons be killed by magical swords" and the second is "is this sword a dragon-killing sword". Yet the wording and punctuation is exactly the same. The preceding sentence provides the extra information necessary to impart the semantic meaning. So you must consider conversational context to really understand some sentences.

But my point is this: natural language parsing is easy to do for commands, but very very hard to do for conversations. Although it was a bit limiting, I think the Ultima system where there is a conversation 'tree', with certain NPC sayings revealing new keywords for the player to choose from, is a nice and simple way of encoding a pre-written conversation. It is also non-linear and reduces the amount of wasted conversation if you need to go back and talk again to an NPC to re-hear some important info. I believe Baldur's Gate just has the 'choose the good, evil or neutral response' method, no? Which is even more limiting in my opinion, but perhaps lets you 'play the role' a little better.

I think allowing some limited form of scripting or flag-checking in the conversational engine is a must. At a minimum, the NPC will often need to know if you have completed a quest or something. Other considerations are that NPCs should probably know if you have talked to them before, or if they have seen you around. They could also adjust their conversation based on your reputation, clothing, race/gender/age, etc. Of course, this means that the conversation writer has more work to do, due to more 'branches' on the conversational tree, but that is just another reason to have someone skilled with fiction on your staff, as I'm sure many of you would like to agree with

My MUD will feature fairly advanced (CPC 6128 quality, heh) parsing of the input commands, and an Ultima-like tree system for conversing with NPCs, augmented with an internal markup language to reduce unnecessary branching.

Edited by - Kylotan on July 4, 2000 6:04:57 AM
A fairly simple but cool system was Daggerfall, where

- What you could talk about depended on what you had encountered
- You could choose different tones (vulgar, normal, high-flown)
- Your tone, mixed with your rep, mixed with the class of the other speaker, determined the reaction you''d get.

It worked pretty well.

- me.
Unfortunaly, frensh language is WAYYYYYY more complicated than english.
So a parser is really hard to do.

English language has a few rules to follow while my native language allow to inverse the verb and subject order even for a sentence that isn''t a question...

I do think that a parser is really hard to do since different languages have differents rules...



-* So many things to do, so little time to spend. *-
-* So many things to do, so little time to spend. *-
quote: Original post by Gollum

A fairly simple but cool system was Daggerfall, where

- What you could talk about depended on what you had encountered
- You could choose different tones (vulgar, normal, high-flown)
- Your tone, mixed with your rep, mixed with the class of the other speaker, determined the reaction you'd get.

It worked pretty well.

- me.


Yeah, I agree. Daggerfall's system wasn't too bad. The only complaint I have is more a complaint I have about the game as a whole.

The NPCs have so little individualism. 90% of the time talking to 1 NPC is just like talking to another.

It's like that w/ the whole game though. Everything's very repetitious, and obviously most of the world (even though it's huge) is just constructed from random components.

Okay, I slipped into complaining about Daggerfall's overall design

I started the thread, so I can do that, right?

...but the conversation system was pretty good in itself.





"The road of excess leads to the palace of wisdom." --William Blake

Edited by - Nazrix on July 7, 2000 11:16:41 AM
Need help? Well, go FAQ yourself. "Just don't look at the hole." -- Unspoken_Magi

This topic is closed to new replies.

Advertisement