I would like to propose the use of
chatterbots to improve NPC dialog. Chatterbots could completely eliminate NPCs non-recognition of simple phrases. For example, if I approached a random NPC and ask "about quest" they will respond. If I ask an NPC "Do you have a quest?" they will respond, but if I ask an NPC "Do you have any quests?" they will not know what I am talking about. All the NPC really needs to know is that you are asking a question about quests/tasks/jobs, a chatterbot could be easily taught to respond to just about any different way of asking "Do you have a quest?".
Chatterbots can be taught by asking them a question and if you are unhappy with the response then you correct them, the next time they are asked that question they will give the corrected answer. Leaving the bots open to be taught by players would probably lead to pollution of the NPCs dialog so it should be closed to the settings team or players who have been given permission to teach NPCs. Either way, players chat logs should be logged by the server (are they already?) so that the most common questions (and methods of delivery) can be entered into a template bot that could then be used for all NPCs. This method has the added advantage of allowing the settings team to test the dialog as they are programming it.
Another place where I think this could be very beneficial is in a virtual adviser, a very knowledgeable NPC (Jayose perhaps) could act as an adviser on OOC issues. Instead of GMs and advisers having to repeat answers to common questions over and over, such as, "What do glyphs do?", etc. Again, the answers could be based on questions logged questions from players.
I think the best way to go about assessing this idea would be to weigh up the positives and negatives:
Pros
------
- Much more realistic interaction with NPCs.
- Innovative; could attract new developers and players.
- Decrease workload on GMs and Advisers.
- It would be a good way to introduce new information about Yliakum or rumours, etc.
- Could make PS a personalised experience via NPCs "getting to know" the player.
- Quite a few actively developed open source chatterbots are already available, see:
*
Program D (Java, J2EE)
*
RebeccaAIML (C++)
*
ChatterBean (Java)
*
Program R (Ruby)
*
Program Q (C++, Qt)
*
AIMLbot (Program #) (.NET/C#)
*
Program W (Java)
Cons
-------
- Difficult/time-consuming to implement. (?)
- If it is open to players to teach NPCs then they might teach them spoilers or OOCness. (Solution: Let only team members teach NPCs.)
Could I please get some opinions on this?