TL;DR: It is sought to outline how various game-based elements can improve the role of bots in a way to increase their utility so they become non-player characters (NPC), increasing the utility of virtual worlds even further in education.
Abstract: Research in virtual worlds has sought to distance itself from the perception that it is about games and appears to have achieved this distinction. However, in the process, valuable contributions and concepts from game-based research have been incorporated into virtual world research. We seek to outline how various game-based elements can improve the role of bots in a way to increase their utility so they become non-player characters (NPC), increasing the utility of virtual worlds even further in education. Bots are a valuable addition within virtual worlds and distinguish these simulations from other simulated environments. However, their use is still limited, allowing them only a small role to play within the educational use of virtual worlds. We link this to the technology and lack of game-based elements within virtual worlds in education and highlight how bots may be better incorporated in the future. We discuss the use of bots and examine some of their key characteristics and how they have been employed. Next, we examine the literature on game-based design and attempt to overlay these concepts on a virtual world framework. This allows us to extrapolate the changing role of bots and the requirement of more non-player characters in virtual worlds. We propose a framework for the incorporation of advanced NPC in virtual worlds in a way that can support educational processes. Our review of the role of bots and NPC and the advances in technology indicate that this is an important step forward. We present a five-stage model of different phases of bots and NPC development, allowing instructional designers to appropriately engineer bots and NPC to support their needs. Low-level bots may be appropriate for certain uses, allowing resources to be invested; the different categorisation allows sensible allocation of resources to achieve desired system-wide outcomes.
TL;DR: The Virtual World Framework is presented, a software framework for creating 3D multiuser web applications that didn't require installing a browser plugin and is being used for team training and collaboration.
Abstract: Software distribution and installation is a logistical issue for large enterprises. Web applications are often a good solution because users can instantly receive application updates on any device without needing special permissions to install them on their hardware. Until recently, it was not possible to create 3D multiuser virtual environment-based web applications that didn't require installing a browser plugin. However, recent web standards have made it possible. We present the Virtual World Framework (VWF), a software framework for creating 3D multiuser web applications. We are using VWF to create applications for team training and collaboration. VWF can be downloaded at http://virtual.wf.
TL;DR: The paper introduces the prototype of integration of object-oriented language for pattern matching OMeta onto Virtual World Framework on JavaScript, and explores the possibilities of a conformal scaling of live coding in the case of augmented reality systems and Internet of things.
Abstract: The self-explorative, collaborative environments and virtual worlds are setting up the new standards in software engineering for today. In this, live coding is also required in reviewing as for programmers and as for artists too. The most popular live coding frameworks, even being built by using highly dynamic, reflective languages, still suffer on tight bindings to single-node or client-server architecture, language or platform dependence and third-party tools. That leads to inability nor to develop nor scale to the Internet of things the new created works using live coding. In the paper we introduce the prototype of integration of object-oriented language for pattern matching OMeta onto Virtual World Framework on JavaScript. That integration will allow using the live coding in virtual worlds with user-defined languages. Also we explore the possibilities of a conformal scaling of live coding in the case of augmented reality systems and Internet of things. In summary, the paper describes the efforts being done for involving virtual worlds architecture in live coding process. All prototypes that are described in the paper are available for experimenting with on Krestianstvo SDK open source project: http://www.krestianstvo.org 1. FROM CODER TOOLS TO SELF EXPLORATIVE, COLLABORATIVE ENVIRONMENTS Fundamentally, live coding is about highly dynamic programming languages, reflectivity, homoiconicity and Meta properties. For example, families of functional languages like Lisp, Scheme, Clojure or pure objectoriented Smalltalk, etc. could be considered as "ready” for live coding. And adding to that languages some rich library of functions for working with network, multimedia (audio, video) and integrated program development environment (IDE) based on the debugger, makes them a complete environment for live coding. The most popular live coding frameworks still share this tools-centric approach, but the current developments in virtual & augmented reality, Internet of Things, robotics etc. shows, that this approach requires some review. The revival and emergence of the self explorative environments and virtual worlds, like Self language environment, Etoys, Scratch, OpenCroquet, LivelyKernel, Virtual World Framework is observed now. This will change the role of the programmer and artist in the process of live coding and also will change the process of live coding itself. See Figure 1 for the prototype of controlling several instances of SuperCollider using self explorative, collaborative Open Croquet based virtual world: Krestianstvo SDK. Figure 1. Installation Man’J (Soshenina 2010) 2. LIVE CODING IN VIRTUAL WORLDS WITH USER DEFINED LANGUAGES We want to introduce the prototype of integration of object-oriented language for pattern matching OMeta on to Virtual World Framework. The integration will allow to define on any VWF component it's own language grammar and replicate it through the application instances, then have a running scripts based on that shared grammar for that component. For example, one could have all the languages down from Logo (Turtle graphics) to Lisp, Smalltalk, even SuperCollider, available for scripting the virtual world just in the Web browser in real-time, see Figure 2. The Virtual World Framework (VWF) provides a synchronized collaborative 3D environment for the web browser. Continuing the Open Croquet research effort, VWF allows easy application creation, and provides a simple interface to allow multiple users to interact with the state of the application that is synchronized across clients, using the notion of virtual time. A VWF application is made up of prototype components, which are programmed in JavaScript, which allows a shared code and behaviors used in distributed computation, to be modified at runtime (Virtual World Framework 2015). OMeta is a new object-oriented language for pattern matching. It is based on a variant of Parsing Expression Grammars (PEGs), which have been extended to handle arbitrary data types. OMeta's general-purpose pattern matching facilities provide a natural and convenient way for programmers to implement tokenizers, parsers, visitors, and tree transformers (Warth 2007). We use ADL Sandbox project as a real-world application, which is built on top of VWF. Figure 2. Integration of OMeta onto Virtual World Framework To realize that integration we implemented the OMeta driver for VWF. The drivers in VWF define the autonomic actions that happen within a system, dividing responsibility and delegating work for each action of the system. These actions include things such as creating or deleting a node, getting or setting a property, calling methods, and firing events. To load the driver we were needed to include it in the files, that respond for VWF booting process. As an example, see Figure 3 for a simple L-system parser-generator and Turtle-Sphere for drawing it (Suslov 2014). The virtual world holds two objects, one for drawing and another for parsing and generating Lsystem strings. For that purposes, the last one has two grammars, one for parsing user-defined input string and another for parsing the generated structure. The rule of the generator is defined recursively in OMeta (Warth 2009). We used an enhanced Script editor inside the virtual world framework for editing the source of the grammar. Figure 3. Editing L-system grammar in virtual world That Script editor is working as Smalltalk browser in self-exploratory environment Squeak (Ingalls 1997). It allows to inspect the properties, methods, and events of the selected VWF component visually and to modify it. Here is the source code of OMeta parsers of L-System in VWF and sample expression, which is defined by one of the live coding session participant in real time:
TL;DR: A natural selection inspire Cell Based Evolutionary Virtual World (CEVW) framework is proposed which guides the change of the virtual world to be continuous and spontaneous.
Abstract: Virtual world has been developed rapidly in the last decade. Immersive is an important indicator of the virtual world. Moreover, with the VR technology advanced these years, the immersive become more and more important. The realistic experience is a crucial aspect of the immersive of the virtual world. We have identified two problems made the virtual world less immersive nowadays: Discontinuity of the Virtual World Change and Nonspontaneous of the Virtual World Change. To solve these two problems, we proposed a natural selection inspire Cell Based Evolutionary Virtual World (CEVW) framework which guides the change of the virtual world to be continuous and spontaneous.
TL;DR: The VWF architecture is described in detail and how the design decisions support the goal of wider access to immersive simulation, including allowing immersive experiences on computers with strict security that prohibits many traditional solutions.
Abstract: The Virtual World Framework (VWF) is a browser-based collaborative simulation system designed with the goal of creating content in a shared immersive space. For the Modeling & Simulation community, the VWF represents an evolution of the traditional online learning model by allowing the integration of three dimensional environments with other, more typical, content. Traditionally, offering learners an experience in such an environment required the instructional designer to craft content in some external system, often requiring specialty plug-ins and equipment. Many of these systems (i.e. Second Life, or OpenSim) require authors to learn new programming languages and methods that are not typically taught to instructional designers. By leveraging the web as a platform, the VWF makes it possible for a much wider range of authors to create immersive environments. Additionally, the VWF makes deploying this content to the end user much simpler than traditional immersive training packages. While other simulation environments require desktop software installation or browser plugins, the VWF uses cutting edge HTML5 capabilities to deliver its content to a variety of devices like desktops, tablets, and even phones, without any effort by the end user. Users simply type in a URL as they would for any website, and they can access the environment seamlessly. This has powerful benefits; including allowing immersive experiences on computers with strict security that prohibits many traditional solutions. Finally, the VWF architecture makes hosting a server simple. The VWF builds the simulated environment on each client, allowing the server to manage only synchronization. This allows a server to host many users while utilizing little bandwidth and computational power. This paper will describe the VWF architecture in detail and explain how the design decisions support the goal of wider access to immersive simulation.