
 
greatest exponent in the Second Life tool 
(Bainbridge 2007). 
1.2  Community-driven Experience and 
Learning in Second Life 
Although the concept of Second Life
 
is not entirely 
new, but a modernized version of multi-user text-
based virtual environments developed decades ago 
(e.g., MUDs, MOOs), the new 3D worlds can re-
create traditional classrooms where users (instructors 
and students in our case), can simulate educational 
applications rich in learning opportunities. 
Users in Second Life are represented by avatars 
(characters designed at will) which can interact with 
each other and the world itself, constituting what is 
called "a metaverse". 
It offers a totally customizable virtual space in 
both design and programming, which has led to its 
use by the education community. The multimedia 
capabilities of this tool make it perfect for engaging 
in eminently practical activities from a remote 
location as well as being an interesting alternative to 
face to face oral meetings or even implementing 
practical protocols in almost real environments 
(Zhao & Wu 2009). 
In addition, Second Life is a tool that encourages 
communication between users and groups, 
facilitating the development of collective and 
collaborative activities. In this sense this virtual 
world is already accepted as a more than useful tool 
to prepare our students to work together to achieve 
objectives. 
1.3  Bots in Second Life: I Spy with My 
Virtual Eyes 
We can define a bot as a software application that 
performs a specific set of tasks automatically. 
Traditional examples of bots are standalone content 
moderators in chat room service or web analyzers 
(crawlers or spiders).  
Second Life has an inworld banning policy on 
bots that don’t contribute to the user community. 
The so-called traffic or camping bots have been 
massively used to enhance the visitor statistics for a 
particular area and thereby increase their popularity 
improperly.  
Some useful and accepted applications for a bot 
are gathering information about visitors to your 
parcel or even a world traveler that stores and 
processes the information it gathers, including the 
communication and behavior of other users 
(Pelachaud et al. 2007).  
Finally, we can create bots that, apart from 
retrieving data, could offer useful information to the 
user. These are the most appropriate bots to provide 
functionality to an educational project by interacting 
with the user.  
In this article we refer to a bot as a Second Life 
avatar who, instead of being handled by a real 
person, acts independently as a result of a previously 
implemented computer code. Thus, like any other 
type of avatars, bots can move about the virtual 
world, interactions and role-play can vary according 
to situations and contexts and can help to facilitate 
learner engagement during computer-mediated 
communication. 
2  PROGRAMMING BOTS IN 
SECOND LIFE 
We are going to differentiate between two kinds of 
bots. On the one hand there are bots created by 
appending LSL (Linden Scripting Language) code to 
a Second Life prim (a simple object) or set of prims 
composing a human form, and on the other hand, it 
is possible to implement a piece of software that 
actually handles a real avatar, connecting it to the SL 
grid with your username and password and 
managing it at will. The code used with the second 
option gives us more programming liberty than LSL 
(strongly focused on events and states) while 
building our automation. The disadvantages are that 
we can produce some latency derived from the 
communication of entities, although very little with 
a regular high speed Internet connection. 
We will choose the second option for our 
developments because of the ease of integrating 
external services to our implemented code in a .NET 
platform. In addition, we will have no limit on the 
size of the code to compile and its complexity will 
not affect virtual world stability in a negative way 
because the program will run on our own server. The 
communication with Second Life will be limited to 
the avatar automatic handle according to the specific 
situations we have implemented. 
2.1  Technical Resources 
To create a Linden Scripting Language bot we just 
need to design the 3D appearance of the wearer and 
create the associated code to be added, but, if we 
intend to use the second kind of bot, the so-called 
“Automated avatar”, we will need some additional 
resources. 
CSEDU 2010 - 2nd International Conference on Computer Supported Education
354