Vienna University of Technology
Documenting Virtual Worlds
|[Home] [People] [Publications]|
This webpage presents approaches to the challenges of archiving virtual worlds, approaches that focus on a natural documentation technique to produce information that is similar to modern TV and picture documentary products. Two different solutions are proposed, which allow us to gather information the same way regular users perceive the world around them. One of the solutions is specific to Second Life. We create and manipulate an object within the engine of Second Life to have it move through the virtual world and detect points of interest based on user activity and we perform a visual recording of such points of interest. As this method is intrusive and relies on specific features offered by Second Life, we also present an approach that is independent from the observed virtual world. The character is moved using an external helper program, which also grabs the presentation on screen and uses histograms to detect if the player gets stuck.
The original goal of the experiment was to build a camera drone inside the Second Life world, using the tools for content creation provided by the regular SL Viewer, and to automate the drone to traverse the world and record still images or video footage while it does so.
The screenshot below illustrates how our system captures SL visuals. The only difference to a regular SL viewport is the red circle in the upper right corner, which is the placeholder object that we scripted and anchored to the HUD. This way, the information that will be recorded will be as close to what a SL user would be perceiving in a first-person perspective as possible.
Camera Scriptcamera_control.txt [txt, 7kb]
The following videos were taken using an external screen recording tool. They show the activation and basic functions of the implemented script.
binding script to Avatar's HUD [avi, 6.5mb]
Activating camera and moving it independent from avatar. [avi, 12.9mb]
Recording other users using the flying camera. [avi, 62.1mb]
For future work, we propose to use an array of fixed sensors positioned in a grid across the SL area that shall be archived. The sensors will be positioned inside phantom objects that the SL viewer will not render, thus being invisible to the users, and will continuously monitor user activity around them. The sensors will then communicate their findings to the HUD attached camera, and the camera will evaluate the results and navigate towards the one hotspot that it computes as the most interesting based on metrics such as avatar numbers in the proximity. Using such a phantom sensor array requires set-up in advance and visible information to the area visitors about the archival project, of course. Assuming we want to cover a regular SL 'sim', which is a land area of 65.536m2 contained within a square with a 256m edge, an exemplary archiving setup could look like the one depicted in the figure below.
As the presented solution for Second Life depends on features offered by the virtual world a virtual-world independent approach for moving the avatar was suggested. This approach should meet the following requirements:
The virtual world client needs to be running and the avatar should be positioned in an area of interest. Next the PlanesWalker application is started and the parameters are adjusted according to the virtual world (e.g. histogram sensitivity) and the required level of documentation (screenshots, text log). A 3rd party screen recording program can be used to record the virtual tour as a movie. After clicking the Start-Button a 5 seconds countdown is shown that allows the user to bring your virtual world client back into focus.
PlanesWalker is then controlling the avatar and recording in the selected documentation mode until the walk duration is reached (a red countdown of the remaining time is shown on the Start-Button), or until the Stop-Button is pushed.
Walk Duration determines how long the program should control the avatar.
Turn Direction changes the turn behavior once a possible obstacle was detected, possible options are: left, right or random.
Turn Duration lets the user set how long the avatar should turn, before walking straight again.
Frequency sets the interval, how often a histogram comparison for possible obstacle detection should be done (while walking straight).
Sensitivity is a treshold value. If the difference between two successive histograms falls below this value, the turn behavior is triggered.
Canvas Points 1 & 2 allow to adjust the screenshot area that is used for histogram creation, by setting two opposite corners of a rectangle.
Documentation mode offers the option to enable textbased and/or screenshot documentation of the avatars behavior. If this option is enabled the program will create a subdirectory with the current date and time as name to save the documentation files in.
Example VideosThe following example videos were taken using an external screen capture program, PlanesWalker was used to control the avatar's movement in the virtual world.
Bree-Town in Lord of the Rings Online - 2010-01-20
Getting in and out of a dead-end corner with a chicken in it, walking past the Prancing Pony Inn, and showing at 1:39 how a too low Frequency, or a too high high Sensitivity value can cause some unexpected turning when then landscape doesn't really change.
PlanesWalker 1.1 in Lord of the Rings Online [avi, 8.8mb]
Northshire Valley in World of Warcraft - 2010-01-20
Getting away from a city wall and a bush blocking the path, walking over some small hills and back into the civilization.
PlanesWalker 1.1 in World of Warcraft [avi, 8.2mb]
DownloadsPlanesWalker 1.1 (2010-01-20)
executable jar file [zip, 13kb]
java source code [zip, 10kb]
A paper on the subject of Second Life preservation was presented at the 9th International Web Archiving Workshop (IWAW 2009):
Documenting a Virtual World - A Case Study in Preserving Scenes from Second Life (Mircea-Dan Antonescu, Mark Guttenbrunner, Andreas Rauber).