
Talking NPCs in a Virtual Game World Tina Kluwer,¨ Peter Adolphs, Feiyu Xu, Hans Uszkoreit, Xiwen Cheng Deutsches Forschungszentrum fur¨ Kunstliche¨ Intelligenz (DFKI) Projektburo¨ Berlin Alt-Moabit 91c 10559 Berlin Germany tina.kluewer,peter.adolphs,feiyu,uszkoreit,xiwen.cheng @dfki.de { } Abstract Metaversum1. The KomParse NPCs offer vari- ous services through conversation with game users This paper describes the KomParse sys- using question-answering and dialog functional- tem, a natural-language dialog system ity. The utilization of Semantic Web technology in the three-dimensional virtual world with RDF-encoded generic and domain-specific Twinity. In order to fulfill the various ontologies furthermore enables semantic search communication demands between non- and inference. player characters (NPCs) and users in This paper is organized as follows: Section 2 such an online virtual world, the system presents the NPC modelling and explains the ap- realizes a flexible and hybrid approach plication scenarios. Section 3 details the knowl- combining knowledge-intensive domain- edge representation and semantic inference in our specific question answering, task-specific system. Section 4 explains the system architecture and domain-specific dialog with robust and its key components. Section 5 describes the chatbot-like chitchat. KomParse dialog system. Section 7 gives a con- clusion and closes off with our future work. 1 Introduction 2 Application Scenario and NPC In recent years multi-user online games in virtual Modelling worlds such as Second Life or World of Warcraft The online game Twinity extends the Second Life have attracted large user communities. Such vir- idea by mirroring an urban part of the real world. tual online game worlds provide new social and At the time of this writing, the simulated section of economic platforms for people to work and inter- reality already contains 3D models of the cities of act in. Furthermore, virtual worlds open new per- Berlin, Singapore and London and it keeps grow- spectives for research in the social, behavioral, and ing. Users can log into the virtual world, where economic sciences, as well as in human-centered they can meet other users and communicate with computer science (Bainbridge, 2007). Depending them using the integrated chat function or talk on the game type, non-player characters (NPCs) to each other via Voice-over-IP. They can style are often essential for supporting the game plot, their virtual appearance, can rent or buy their own for making the artificial world more vivid and ulti- flats and decorate them as to their preferences and mately for making it more immersive. In addition, tastes. NPCs are useful to populate new worlds by carry- Out of many types of NPCs useful for this appli- ing out jobs the user-led characters come in touch cation such as pedestrians, city guides and person- with. The range of functions to be filled by NPCs nel in stores, restaurants and bars, we start with is currently still strongly restricted by their limited two specific characters: a female furniture sales capabilities in autonomous acting and communi- agent and a male bartender. The furniture seller cation. This shortcoming creates a strong need for is designed for helping users furnish their virtual progress in areas such as AI and NLP, especially apartments. Users can buy pieces of furniture and their planning and dialog systems. room decoration from the NPC by describing their The KomParse system, described in this paper, demands and wishes in a text chat. During the di- provides NPCs for a virtual online world named Twinity, a product of the Berlin startup company 1http://www.metaversum.com/ 36 Proceedings of the ACL 2010 System Demonstrations, pages 36–41, Uppsala, Sweden, 13 July 2010. c 2010 Association for Computational Linguistics Figure 1: The furniture sales NPC selling a sofa Figure 2: Our bartender NPC in his bar in Twinity 3 Knowledge Representation and alog with the NPC, the preferred objects are then Semantic Inference selected and directly put into a location in the apartment, which can be further refined with the Semantic Web technology is employed for mod- user interfaces that Twinity provides. elling the knowledge of the NPCs. The Resource Description Format (RDF) serves as the base for In the second scenario, the bartender sells vir- the actual encoding. An RDF statement is a binary tual drinks. He can talk about cocktails with users, relation instance between two individuals, that is a but moreover, he can also entertain his guests by triple of a predicate and two arguments, called the providing trivia-type information about popular subject and the object, and written as subj pred obj celebrities and various relations among them. (e.g. f:Sofa Alatea f:hasMainColour We chose these two characters not only because f:Burgundy). of their value for the Twinity application but also All objects and properties the NPC can talk for our research goals. They differ in many in- about are modelled in this way. Therefore the teresting aspects. First of all, the furniture sales knowledge base has to reflect the physical prop- agent is controlled by a complex task model in- erties of the virtual objects in Twinity as faithfully cluding ontology-driven and data-driven compo- as possible. For instance, specific pieces of furni- nents to guide the conversation. This agent also ture are described by their main color, material or possesses a much more fine-grained action model, style, whereas cocktails are characterized by their which allows several different actions to cover ingredients, color, consistence and taste. Further- the potential conversation situations for the sell- more, references to the 3D models of the objects ing task. The bartender agent on the other hand is are stored in order to create, find and remove such designed not to fulfill one strict task because his objects in the virtual world. clients do not follow a specific goal except order- The concepts and individuals of the particular ing drinks. Our bartender has the role of a conver- domain are structured and organized in domain- sation companion and is able to entertain clients specific ontologies. These ontologies are mod- with his broad knowledge. Thus, he is allowed to elled in the Web Ontology Language (OWL). access to several knowledge bases and is able to OWL allows us to define concept hierarchies, re- handle questions (and later conversations) about lations between concepts, domains and ranges of a much larger domain called the “gossip domain” these relations, as well as specific relation in- which enables conversation about pop stars, movie stances between instances of a concept. Our on- actors and other celebrities as well as the relations tologies are defined by the freely available ontol- 2 between these people. In order to achieve a high ogy editor Proteg´ e´ 4.0 . The advantage of using an robustness, we integrate a chatbot into the bar- ontology for structuring the domain knowledge is tender agent to catch chitchat utterances we cannot 2http://protege.stanford.edu/, as accessed handle. 27 Oct 2009 37 Twinity Conversational Twinity Twinity KomParse Conversational ClientTwinity Agent Server Client Server ConversationalAgent Client Agent Figure 3: Overall System Architecture – Server/Client Architecture for NPC Control the modular non-redundant encoding. When com- 4 Overall System Architecture bined with a reasoner, only a few statements about an individual have to be asserted explicitely, while Figure 3 shows the overall system architecture. the rest can be inferred from the ontology. We em- Twinity is a server/client application, in which the ploy several ontologies, among which the follow- server hosts the virtual world and coordinates the ing are relevant for modelling the specific domains user interactions. In order to use Twinity, users of our NPCs: have to download the Twinity client. The client allows the user to control the physical represen- An extensive furniture ontology, created by tation of the user’s character in the virtual world, • our project partner ZAS Berlin, defining also called the “avatar”. Thus the client is respon- kinds of furniture, room parts, colors and sible for displaying the graphics, calculating the styles as well as the specific instances of fur- effects of physical interactions, handling the user’s niture in Twinity. This knowledge base con- input and synchronizing the 3D data and user ac- tains 95,258 triples, 123 furniture classes, 20 tions with the Twinity server. color classes, 243 color instances and various Each NPC comprises two major parts: whereas classes defining styles and similar concepts. its avatar is the physical appearance of the NPC in A cocktail ontology, defining 13 cocktail the virtual world, the “conversational agent” pro- • classes with ingredients and tastes in 21,880 vides the actual control logic which controls the triples. avatar autonomously. It is in particular able to hold A biographical ontology, the “gossip on- a conversation with Twinity users in that it reacts • tology”, defining biographical and career- to a user’s presence, interprets user’s utterances in specific concepts for people. This ontology is dialog context and generates adequate responses. accompanied by a huge database of celebri- The KomParse server is a multi-client, multi- ties, which has been automatically acquired threaded server written in Java that hosts the con- from the Web and covers nearly 600,000 per- versational agents for the NPCs (section 5). The sons and relations between these people like NPC’s avatar, on the other hand, is realized by a family relationships, marriages and profes- modified Twinity client. We utilize the Python in- sional relations. (Adolphs et al., 2010) terface provided by the Twinity client to call our own plugin which opens a bidirectional socket The furniture ontology is the only knowledge connection to the KomParse server. The plugin is base for the furniture sales agent, whereas the bar- started together with the Twinity client and serves tender NPC has access to both the cocktail as well as a mediator between the Twinity server and the as the gossip knowledge base.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages6 Page
-
File Size-