The content of this part can seem obvious but yet it is altogether essential. We distinguish two communication modes which are dialog and monologue, which will be used to different ends in the game.
What we call monologue is when a creature sends a self-supporting message and hence does not wait for an answer.
This message can be intended for a creature in particular, but most of the time it is not specifically aimed.
Example 17. A guard attacks Janselmeer
Guard: Now you die, Janselmeer! A guard attacks Janselmeer.
This message is aimed merely to Janselmeer, but all creatures passing by can hear it.
Example 18. A caravan arrives to the market place
The caravan: The caravan has arrived! Look at my beautiful vegetables!
This message is intended for all creatures passing by.
Example 19. Janselmeer has just bought something
Janselmeer: That was my last silver...
The message is aimed to no one but can be heard by all present creatures (who will wonder about Janselmeer's health :).
The dialog is an information exchange by means of messages between two or more creatures.
It is carried out in connected mode, with a connection phase, a conversation phase and a disconnection phase.
Let us see an instance of dialog: a tourist who asks his way to a passer-by.
-connection phase: tourist: Please, sir... The passer-by stops passer-by: Yes? -conversation phase: tourist: I'm looking for the local camp site. passer-by: You turn to the left 500m from here, then go straight ahead to the fountain and then turn to the right. -disconnection phase: tourist: Thank you, have a nice day! passer-by: You're welcome.
It's this kind of dialog which we will attempt to reproduce. A dialog unfolds in the following way:
The C1 creature wants to talk to creatures C2, C3, ..., Cn. 1- C1 asks to talk to C2, C3, ..., Cn. 2- Some Ci accept the request, others decline it. 3- C1 talks with the ones who have accepted. 4- Those taking part in the conversation withdraw gradually. The last but one leave will put an end to the conversation.
The advantage of a connected mode is to make the control of bots easier. For example, if one speaks to a bot which is moving, this bot will stop during the conversation (hence during the connection).
The dialog should then be the privileged communication mode with bots. As soon as a dialog is opened, some actions are forbidden (as going away for instance). These actions automatically break the conversation.
A dialog can be interrupted by an external event only if this one requires a mandatory reaction from a creature involved in the conversation. Such an event can be a fight for example.
Tourist | Passer-by ----------------------------------------------------------------------- >talk passer-by | Tourist: Please sir... | Tourist: Please sir... | A tourist wants to talk with you. | Do you accept? (Y/N) | >Y passer-by: Yes?... | passer-by: Yes?... >tell passer-by "I'm looking | for the local camp site." | tourist: I'm looking for the local | camp site. | >tell tourist "You turn to the left | 500m from here, then go straight | ahead to the fountain and then turn | to the right." passer-by: You turn to the left | 500m from here, then go on | straight ahead to the | fountain and then turn to the | right. | tell passer-by bye | Tourist: Thank you, have a nice | day! | tourist: Thank you, have a nice day!
This is worth noting that the command 'talk' allows dialog opening and that the keyword 'bye' puts an end to the conversation.
Note too, that an UI can provide some shortcuts in the dialog. for example, it is not needed to ask the players if they want to answer. It is possible just let them answer if yes and do something else if no. In a similar fashion, to break the dialog, it should be enough just to do something else and not to have to type bye.
In order to open a dialog with more than one creature, one adds the names of the desired creatures in the parameters to 'talk', or one uses 'talk~all' in order to talk to all present creatures.
Example 20. Hiring in a tavern
Recruiter> talk all Recruiter: "I beg your attention, please." [To this stage, some listen, some others don't.] Recruiter: "I've got a job to offer, dangerous and underpaid." [Two or three creatures are still listening...] Recruiter: "3 silvers to go kill Skarkash." [Huge silence in the room] Recruiter: "Well, never mind!" Recruiter> bye Recruiter: "Thanks for your attention."
Example 21. Identity control in the street
The guard is searching for an escaped elf prisoner.
Guard> talk elf1 elf2 Guard: "Hey you, and you!" Guard: "Give me your names!" Elf1: "Celeborn" Elf2: "Galadriel" Guard> bye Guard: "All right, move along."
this example shows the underlying coding difficulties. The sentence associated to a keyword depends on the language level of the one who speaks (politeness, elocution, etc), on its work, on the number of persons to which one speaks to, on the sex of these persons, etc. |
The dialog system depends on perceptions. A message is indeed nothing but a special stimulus which holds a lot of information. A message is associated to one or several stimuli, which makes it possible to choose the medium (sound, telepathy, etc) and the intensity of the message. So it is possible to choose one's means to communicate.