<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>An Overview of the AMUSE Social Gaming Platform</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Federico Bergenti</string-name>
          <email>federico.bergenti@unipr.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Giovanni Caire and Danilo Gotta</string-name>
          <email>danilo.gottag@telecomitalia.it</email>
          <email>fgiovanni.caire, danilo.gottag@telecomitalia.it</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Dipartimento di Matematica e Informatica, Universita` degli Studi di Parma, Parco Area delle Scienze 53/A</institution>
          ,
          <addr-line>43124 Parma</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Telecom Italia S.p.A.</institution>
          ,
          <addr-line>Via Reiss Romoli 274, 10148 Torino</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>-This paper presents an overview of the novel platform AMUSE (Agent-based Multi-User Social Environment), an agent-based social gaming platform that leverages the power of industrial-strength agent technologies. The core need that motivated the initial work on AMUSE was to provide game developers with a solid tool targeting common horizontal issues in social gaming, like user management and game state management, for games with synchronous and asynchronous interactions. AMUSE fulfills such a need by means of industrial-strength agent technology. Actually, AMUSE is not only a development framework that can be effectively used to implement prototypes and small-scale games with just a few concurrent players. Rather, it is thought as a PaaS (Platform as a Service) tool that enables service provides, like game portals and community portals, to relief game factories from the burden of implementing horizontal functionality that are common to a large set of games. This paper is a first presentation of the work on AMUSE and it starts framing AMUSE into the scope of social gaming. Then, the paper describes the architecture of the multi-agent system that represents the core of AMUSE and it relates the presented agent types with the functionality that AMUSE provides. Finally, the paper outlines some directions of future development.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>I. INTRODUCTION</title>
      <p>This paper describes a recent work in the important
industrial sector of online social games: an agent-based innovative
platform that leverages the power of industrial-strength agent
technologies to provide game developers with horizontal
features that are common to most, if not all, online social games.</p>
      <sec id="sec-1-1">
        <title>Such a platform, namely AMUSE (Agent-based Multi-User</title>
        <p>Social Environment), gives developers a set of functionality
that free them from the burden of implementing, and possibly
reimplementing over and over again, common features like
user management and game state management. The approach
that AMUSE fosters lets developers concentrating their effort
on game-specific features, it ensures solidity, and it ultimately
reduces time-to-market and increases product quality.</p>
        <p>
          AMUSE is designed to meet the requirements of
largescale service providers and it is intended for a PaaS (Platform
as a Service) usage in large-scale scenarios. This, combined
with the expected scalability of underlying agent technology,
makes AMUSE an ideal tool for experimental prototypes
intended can scale up to large-scale services. In fact, AMUSE
is developed on top of WADE (Workflows and Agents
Development Environment) [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ], [
          <xref ref-type="bibr" rid="ref24">24</xref>
          ], the popular open-source platform
for agent-based BPM (Business Process Management). One
of the key characteristics of WADE is that it can be easily
deployed on commodity computers and networks, and it can
also be smoothly scaled up to huge services. We use WADE
every day in our laboratories, and it is worth noting that the
same software has been in daily use over the last 5 years [
          <xref ref-type="bibr" rid="ref23">23</xref>
          ]
for large-scale network and service management in Telecom
Italia for more than 8:95 million broadband connections for
retail and business customers over a network of 114 million
km of copper lines and 5:7 million km of optical fibers [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ].
This is the reason why we say that the choice of implementing
AMUSE on top of WADE ensure low-budget game
development, giving the possibility to deploy the platform, and then
smoothly scale up the service to a large number of users and
to hosted deployment, if needed.
        </p>
        <p>
          WADE is essentially the main evolution of JADE (Java
Agent and DEvelopment framework) [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ], [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ], [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ], [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ], [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ],
the open-source framework that facilitates the development
of interoperable multi-agent systems. JADE has been used
in many research and industrial systems at an international
scale since its initial development back in 1998 and today it
is a reference for industrial-strength agent technology. WADE
mainly adds to JADE the support for the execution of tasks
defined according to the workflow metaphor, and it also
provides a number of mechanisms that help managing the
inherent complexity of a (distributed) multi-agent system both
in terms of administration and fault tolerance.
        </p>
        <p>
          While we measure a decline in investments in social
gaming [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ], social gaming, and mobile gaming in particular,
is still on the rise from a game count perspective, with the
industry seeing a 105% [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ] increase in the number of mobile
and social games on the market since 2000. Moreover, the
industry experienced its biggest boom just last year, in 2012,
when total games reached from 90 million to more than
211 million total [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ]. This is sufficient to justify a research
investment in this industrial sector as it is one of the driving
forces of IT today.
        </p>
        <p>This paper is not only intended to provide an overview
of AMUSE, rather it is also meant to frame the work on
AMUSE in the broad scope of social gaming in order to
motivate, identify and justify the core design decisions. In the
following section we frame AMUSE into the broad research on
social gaming by giving essential definitions and terminology.
Then, in Section III we outline the coarse-grained architecture
of AMUSE and we detail the roles of single agents and
their responsibilities. Finally, we conclude the paper with a
brief summary of the work and with some insight on future
developments of AMUSE.</p>
        <p>WHAT IS SOCIAL GAMING?</p>
        <p>The industry of video games, and online video games in
particular, plays a significant role in our society that has been
recently boosted by the pervasive diffusion of games for mobile
appliances. Actually, the peculiar combination of novel game
dynamics with the functionality of modern mobile appliances,
like undisrupted connectivity, advanced graphics and sound
capabilities, and on-board sensors, ensures a prolific and long
lasting synergy between the industries of mobile appliances
and video games.</p>
      </sec>
      <sec id="sec-1-2">
        <title>A. Basic Terminology</title>
        <p>Scientists and philosophers from diverse background have
been discussing the notion of play and game for a long
time, and they have already established agreed results and
terminology.</p>
        <p>
          One of the most cited attempts to characterize the play
activity dates back to mid-50’s to Huizinga’s Play Theory.
In his seminal book, best known as Homo Ludens, Huizinga
characterizes the play activity as:
: : : a free activity standing quite consciously outside
“ordinary” life as being “not serious” but at the same
time absorbing the player intensely and utterly. It
is an activity connected with no material interest,
and no profit can be gained by it. It proceeds
within its own proper boundaries of time and space
according to fixed rules and in an orderly manner. It
promotes the formation of social groupings that tend
to surround themselves with secrecy and to stress
the difference from the common world by disguise
or other means. [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ]
        </p>
        <p>Even if this characterization of the play activity has
undergone very reasonable critiques over the years, it is worth
noting that the act of playing is always associated with a social
nature, and we can broadly say that the play activity is social
per se.</p>
        <p>Unfortunately a characterization of the play activity is
not enough because we generally differentiate games from
play. The Huizinga’s characterization includes rules in the
play activity, but such rules are always flexible and subject
to change, with no real need for rules to be agreed or adopted
beforehand. On the contrary, games are based on rules that are,
often implicitly, adopted and that are not subject to frequent
or unjustified change. Rules structure games, and make them
repeatable.</p>
        <p>
          One of the most cited definitions of game, which has been
recently developed in the scope of video games by Juul, defines
a game as a:
: : : rule-based formal system with a variable and
quantifiable outcome, where different outcomes are
assigned different values, the player exerts effort
in order to influence the outcome, the player feels
attached to the outcome, and the consequences of
the activity are optional and negotiable. [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ]
        </p>
        <p>Games inherit much from the play activity and all games
are social in some sense, if nothing else, because players often
retell their experiences.</p>
        <p>Finally, to better understand the landscape of social
gaming, we should remember that gameplay is the specific way
in which players interact with a game and, in particular,
with a video game. We can adopt one of the many available
definitions of gameplay as follows:</p>
      </sec>
    </sec>
    <sec id="sec-2">
      <title>Gameplay is the formalized interaction that occurs</title>
      <p>
        when players follow the rules of a game and
experience its system though play. [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]
      </p>
      <p>Once we are happy with the fact that the play activity and
games are social in nature, we need to discuss how so called
social online games, or social games for short, differentiates
from other forms of games. This discussion has lead us to
identifying salient characteristics of social games that any
social gaming platform like AMUSE is demanded to provide.</p>
      <sec id="sec-2-1">
        <title>B. A Characterization of Social Gaming</title>
        <p>A primitive approach is to take the platform perspective
and mark as social any game that use a social network
platform. These are the so called social network games and the
pervasiveness of online social networks in our society makes
them one of the most important examples of social games.
Any game delivered via, e.g., Facebook, is a social network
game but unfortunately this is by far not enough to allow us to
descend any salient characteristic of a social gaming platform.</p>
        <p>
          A less primitive approach leads to a notable body of
literature that identifies many dimensions of social gaming.
Here we restrict to a threefold characterization that relates
to the timing of social interactions and to the type of social
relationship [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ]. Together, these characteristics encapsulate
the social interactions of most online games, including the two
extremes of the range, namely, MMOs (Massive Multi-player
Online games), that group hardcore players in large and
longlasting games, and casual games, targeted at and used by a
mass audience of casual players for short burst. A real-world
social gaming platform should be able to provide support for
the whole, or at least for a large part, of this spectrum, and
the scalable design of AMUSE ensures this.
        </p>
        <p>
          In summary, the three characteristics of social gaming that
we consider here, and that we detail below, are [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ]:
        </p>
      </sec>
      <sec id="sec-2-2">
        <title>Synchronous vs. asynchronous player interaction. Do</title>
        <p>interactions occur simultaneously in real time or at
different times as in a turn-based game?</p>
      </sec>
      <sec id="sec-2-3">
        <title>Symmetrical vs. asymmetrical relationship formation.</title>
        <p>Does forming a relationship require input from both
parties or can they be formed unilaterally by a single
party?</p>
      </sec>
      <sec id="sec-2-4">
        <title>Strong tie vs. loose tie relationship evolution. Do</title>
        <p>relationships tend to become deep and long lasting
or are they more likely to be light and transitory?
The remaining of this section is devoted to analyzing
such characteristics and providing example of how they are
concretely adopted in social games.</p>
        <p>Synchronous vs. Asynchronous Interaction. The superficial
understanding is that MMO games feature synchronous,
realtime play while casual social games are asynchronous with
interaction occurring at disconnected times. However, all MMOs
also feature important asynchronous features like in-game
messages, and some Facebook game employs synchronous
features such as a chat. Rather than an absolute position,
current social games tend to offer a mix of synchronous and
asynchronous interactions. Some games may highlight one or
the other, but there are many that use both to establish a richer
layer of engagement and retention.</p>
        <p>The idea of synchronous gameplay is intuitively easy:
players interact in real time rather than taking turns. Examples
of synchronous social interactions include text chat, voice
chat, video chat, and game elements like battles. Synchronous
interactions can scale from two players to large groups.</p>
        <p>The term asynchronous game might at first remind images
of something slower and less intriguing, but asynchronous
games can be just as engaging as synchronous ones, e.g., think
of playing chess with a remote friend. Asynchronous social
games come in different basic flavors, with some of the more
common being:</p>
      </sec>
      <sec id="sec-2-5">
        <title>Turn-based shared games. They work well socially</title>
        <p>because each move is a mini game and there is
social pressure to come back and complete the next
turn. Moreover, bite-sized gameplay is easy to fit into
schedules and players can play multiple games at once.</p>
      </sec>
      <sec id="sec-2-6">
        <title>Turn-based challenge games. Essentially, one of such</title>
        <p>games quickly becomes a set of two separate matches.
Player 1 challenges and then player 2 responds;
aggregate score determines the winner. They work socially
because of the social pressure to return challenge
and there is less waiting than shared turn-based since
each player can complete his/her entire game
independently.</p>
      </sec>
      <sec id="sec-2-7">
        <title>Score-based challenge games. These are the traditional</title>
        <p>beat my high score format. These games work socially
because of the social pressure to return challenge
and there is less waiting than turn-based options
since players can try for their high scores anytime.
Obviously, these types of games can be less interactive
than other types.</p>
      </sec>
      <sec id="sec-2-8">
        <title>Open-world asynchronous games. In many ways, this</title>
        <p>is the most common Facebook game model. It works
socially because the model supports a variety of game
modes, including single-player and multi-player. It
can variably approximate MMO experience without
incurring into the technical issues of real-time play.
Moreover, it still offers convenience of more casual
games, i.e., players can play at different times and for
short bursts.</p>
        <p>Having said this, it is worth noting that chats are a powerful
synchronous tool for player engagement and retention in
both casual games and MMOs that deserves special attention,
especially from the platform point of view. The chat, as a part
of the game experience, always has a similar effect: boosting
player engagement and facilitating long-term retention. When
there is a real, vibrant support community present, players
come back to a game more often and are less likely in search
for other games.</p>
        <p>Symmetrical vs. Asymmetrical Relationship. Perhaps the
clearer example for understanding this characteristic of social
gaming is the formation of social connections in Facebook
versus Twitter. Facebook social relationships are symmetric:
a member of the community asks to be a friend of another
member and the latter must agree in turn for the relationship to
exist. This approach as the advantage of making the
acknowledgment mutual between parties and thus allowing for deeper
sharing. On the contrary, the interaction is often limited to
confirmed friends and friend relationships require (sometimes
complex) management tools.</p>
        <p>Examples of symmetric social interactions in online
gaming include friending, gifting, trading, and private chatting on
an individual scale, and parties, alliances, and manual
multiplayer matchmaking on a group scale.</p>
        <p>Twitter social relationships are asymmetric: a member of
the community can follow anyone, without their reciprocation.
This approach enables a widespread broadcasting and
facilitates rapid dissemination of information. On the contrary, it
requires less investment in social relationship and can be more
prone to unsolicited interactions because communication filters
are necessarily less sophisticated.</p>
        <p>Examples of asymmetric social interactions include
following, broadcasting, tweeting, and blogging on an individual
scale, and public quests, factions, and random matchmaking
on a group scale.</p>
        <p>Although Facebook games are less known for such
symmetric relationships, they do exist in many games. The
neighbor approach prevalent in many games is a symmetrical social
relationship. Even players who are in the same game and that
are already Facebook friends still need to become neighbors.</p>
        <p>Facebook games also feature numerous asymmetric social
interactions. Instead of the neighbor approach, many games
simply add a player’s Facebook social graph directly to his/her
game without requiring the permission of friends. These types
of relationships are shallower than the ones originating from
the neighbor approach but, because they are so broad, they
lower the barriers to interaction and they create a high-density
of ties among players.</p>
        <p>Asymmetric relationships also exist in MMOs. A great
example of this is the public quest. For example, if a public
enemy is attacking the area, anyone who comes within a
certain range is automatically considered to be participating in
the public quest to capture him/her. Players can quickly and
easily get a taste of group play and then go their own ways
afterwards. The low social barrier allows for more frequent
cooperation.</p>
        <p>Strong Tie vs. Loose Tie. The former symmetry characteristic
describes how relationships form but it does not necessarily
dictate how they evolve. Ultimately, the relationship depends
on what happens after the relationship itself has just been
established. This characteristic is a simple measures of the
evolution of a social relationship with a focus on the depth of
interaction.</p>
        <p>Examples of strong-tie gaming relationships range from
the smallest scale, i.e., two players co-operatively play, to the
group scale. Examples of loose-tie relationships also range
from the smallest scale, e.g., game neighbors, to the group
scale.</p>
        <p>THE AMUSE PLATFORM</p>
      </sec>
      <sec id="sec-2-9">
        <title>AMUSE (Agent-based Multi-User Social Environment) is</title>
        <p>
          an open-source development platform that can be downloaded
from JADE Web site [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ] and that is intended to tackle specific
issues of social games, as discussed previously in this paper.
The platform can be easily deployed in an in house setting,
but it is designed to give service providers a tool to implement
a PaaS with specific features of social games.
        </p>
      </sec>
      <sec id="sec-2-10">
        <title>A. The Architecture of AMUSE</title>
        <p>
          The characterization of social games sketched in Section II
does not provide any means to concretely implement the
desired features in a platform. In other words, we can classify
a part of a game as employing symmetrical or asymmetrical
relationships, but we have no best-practice tool to offer to
developers to implement either symmetrical of asymmetrical
relationships. Gameplay design patterns [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ] are a pattern
language that summarizes best practices in video game
development and they are good reference for a list of features
that a social gaming platform should provide.
        </p>
        <p>
          Not all the over 700 gameplay design patterns identified in
the literature and collected by the Gameplay Design Pattern
Project [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] are interesting from the point of view of AMUSE.
Some pattern is not related to the social aspect of games, while
others are intended to provide specific features to games and
they do not identify platform-level abstractions. We restrict
here only to the best known gameplay design pattern that can
contribute to the identification of the features that a social
gaming platform like AMUSE should provide.
        </p>
        <p>Before going into the details of the gameplay design pattern
that AMUSE adopted, we need to clarify some underlying
design decisions. First, we always assume the availability of
a lower-level infrastructure for managing social relationships
between users. This can be either a third-party infrastructure,
like Facebook, providing a rich user profile and counting a
large number of relationships between users; or it can be
a private infrastructure accessible only from within AMUSE
games, and normally providing a restricted user profile and
a restricted set of relationships. AMUSE provides a generic
interface that hides to the developers whether the infrastructure
is third-party or private, thus ensuring scalability and allowing
for the right infrastructure to be adopted for each game.</p>
        <p>
          Another early decision that was taken is that AMUSE
should provide a very flexible and highly scalable environment
capable of scaling up with the success of a game. This enables
early prototypes and low-cost experiments that can scale up to
huge phenomena. WADE (Workflows and Agents Development
Environment) [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ], [
          <xref ref-type="bibr" rid="ref24">24</xref>
          ], the open-source platform for
agentbased BPM (Business Process Management), is the ideal tool
for ensuring such a high level of scalability and flexibility
because one of its key characteristics is that it can be easily
deployed on commodity computers and networks, and it can
also be smoothly scaled up to huge services like nationwide
network and service management [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ].
        </p>
        <p>Having said this, we simply decided to follow the best
practices of WADE development and identified a set of
backend agents running on the server-side platform that
communicate with front-end agents in charge of managing the actual
interaction with the user.</p>
        <p>Back-end and front-end agents implement the social
gaming features of the platform depending on the centralization
required by each and every single feature. For example,
involving players in a mobile game does not always require a
centralized authority: the agent on the user’s mobile device
contacts the respective agents of other users by means the
users’ profile stored locally in the device. AMUSE provides
such a feature by assigning specific responsibilities to
frontend agents. On the contrary, the management of a table in a
room to let players engage in synchronous card game implies
some centralized management of tables and rooms, as AMUSE
actually provides.</p>
        <p>In summary, the design of AMUSE comprises the
following types of back-end agents that cooperatively deliver the
functionality of the platform together with front-end agents:
UMA (User Manager Agent). A socially inclined
evolution of user manager agents of many other
agentbased systems that manages the profile of single users
and his/her relationships with other users. It relies
on the underlying social network infrastructure for
the concrete storage and discovery of profiles and
relationships.</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>GRA (Games Room Agent). It is an agent in charge</title>
      <p>of managing the shared game space in games with
synchronous interaction. It can be effectively used to
deliver asynchronous interaction if a back-end support
is needed.</p>
      <sec id="sec-3-1">
        <title>AMA (Application Manager Agent). Taking the PaaS</title>
        <p>perspective, it is the agent in charge of managing the
provided games and their lifecycle.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>MTA (Match Tracer Agent). It serves the needs of</title>
      <p>games that require a persistent game state and that
needs restart options.</p>
      <p>Finally, AMUSE provides a generic MMA (Match Manager
Agent) in charge of interfacing the client application with
backend agents and to deliver the features that do not require a
back-end support. For the current design, it is the only
frontend agent that AMUSE provides.</p>
      <sec id="sec-4-1">
        <title>B. Adopted Gameplay Design Patterns</title>
        <p>After this brief sketch of the architecture of the
multiagent system that implements AMUSE functionality, we can
briefly enumerate the gameplay design pattern that AMUSE
uses internally, and that implement the features for game
developers. Not all the following gameplay design pattern are
currently implemented in AMUSE, but they are all important
to grasp where AMUSE intends to go in the long term.</p>
        <p>Some of the gameplay design patterns adopted in the design
of AMUSE deal with the state of the game and with its
evolution over time. These are implemented by the GRA, and
the GRA itself provides an abstract view of the game state:</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Private game spaces. The game has parts of the game world that only a single player can manipulate directly.</title>
      <sec id="sec-5-1">
        <title>Massively single-player online games. These are</title>
        <p>games that make use of other players’ games instances
to provide input to the game state.</p>
        <p>Together with the MTA, the GRA also implement the
persistent game world design pattern, intended to make the
game state independent from individual players’ game and
play session. The game state is available continuously and in
continuous evolution.</p>
        <p>Other gameplay design patterns that the GRA implements
regard the management of how time is correlated with the
evolution of the game, as follows:</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>Tick-based games. The game progresses according to real-time, but in discrete steps.</title>
      <sec id="sec-6-1">
        <title>Events timed to real world. Gameplay events are</title>
        <p>initiated by specific real-time events occurring.</p>
        <p>The UMA implements with no specific cooperation with
other agents the extra-game events broadcasting, that allows
game events to be broadcast in a medium where others can
perceive them. This pattern is implemented by the UMA because
it is the only agent that can interact with the underlying online
social network infrastructure and its notification services.</p>
        <p>Moreover, the UMA together with the GRA implement the
following design patterns:</p>
      </sec>
    </sec>
    <sec id="sec-7">
      <title>Drop-in/Drop-out. Players entering and leaving ongoing game sessions are welcome.</title>
      <sec id="sec-7-1">
        <title>Public player statistics. The platform provides a</title>
        <p>means to publicize the player statistics inside and
outside the game to users. The underlying online
social network infrastructure is used to access the
users’ relationships and to publicize the statistics.</p>
      </sec>
    </sec>
    <sec id="sec-8">
      <title>Visits. Under the application of UMA policies, the GRA can provide temporary access to other players’ private game spaces.</title>
    </sec>
    <sec id="sec-9">
      <title>Invites. Under the application of UMA policies, and taking into account the logics of the underlying social network infrastructure, the GRA allows inviting new players to a game as game actions.</title>
      <p>Finally, only the non-player help design pattern request the
cooperation of the UMA, the GRA and the MMA to ensure that
players can receive help in the games by actions from those
not playing.</p>
      <sec id="sec-9-1">
        <title>C. The Implementation of AMUSE So Far</title>
        <p>The current implementation of AMUSE does not yet
provides all features described in the previous section, even if a
clear plan is drawn to achieve full functionality briefly.</p>
        <p>At the time of writing AMUSE provides a UMA with
restricted functionality that manages a private online social
network infrastructure. It is also able to manage various possible
game involvement schemes and it is the final responsible for
stored user profiles, which also include public game statistics.</p>
        <p>Prototype GRA and MMA are provided to implement
games with synchronous or asynchronous interactions. For the
moment, the type of interaction that characterize the game is
statically assigned and a game cannot have diverse parts with
diverse types of interactions, nor it can dynamically change
the type of interaction.</p>
        <p>The available MMA is also in charge of providing a text
channel that players can use for social interactions parallel to
the actual play activity.</p>
        <p>The current GRA prototype provides a game state
representation that has proven valid for a wide range of games and
it is based on the abstractions of rooms and tables, that players
share and that provide the principal means of interaction during
the game.</p>
        <p>Taking the PaaS perspective, AMUSE now provides a
prototype AMA that manages the interaction with the
underlying WADE platform and that enables developers to choose
between decentralized (or client-only) and server-based types
of deployment. For the case of server-based deployment, the
AMA already provides the features needed to leverage the
flexible deployment schemes of WADE, which ensures that
the server would not become a system bottleneck.</p>
        <p>Moreover, the available AMA provides all needed
administration services to quickly set up a private gaming
infrastructure that, thanks to WADE, can scale up far over the initial
deployment.</p>
        <p>Finally, AMUSE includes a prototype MTA that is in charge
of using WADE persistency support to implement persistent
and restartable game state.</p>
        <p>Front-end agents are now restricted to Android agents or
desktop agents because, at the moment, no porting of JADE
is available for other platforms. All in all, the flexible and
somehow standardized agent communication protocol makes
the interface between back-end and front-end agents fully
device agnostic, and we see no problems is accommodating
new and unexpected user devices in the architecture.</p>
        <p>It is worth noting that current AMUSE prototype already
includes Web games because we assume that such games can
be structured into a lightweight client module connected to a
heavyweight server module. We can already have server-side
agents, running inside JADE/WADE containers, that
communicate with the lightweight-client user interface via one of the
available Web communication protocols, e.g., WebSockets.</p>
        <p>IV.</p>
      </sec>
    </sec>
    <sec id="sec-10">
      <title>CONCLUSIONS</title>
      <p>
        This paper presents the basic ideas that guided the
development of AMUSE, a novel agent-based social gaming platform.
The initial motivation for this work is that we felt the urge
for a sharable tool capable of providing horizontal features
of social gaming and we thought that agent technology, and
WADE in particular, would have been ideal for this. Agent
technology has already been applied to foster collaboration
(see, e.g., [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]) and, more recently, it was used to address
large-scale social networks (see, e.g., [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]), thus providing a
solid base for the coordination of large communities. The
initial vague idea that stimulated this work eventually turned
into a complex architecture that encompasses back-end agents
and front-end agents cooperatively providing social gaming
features to developers.
      </p>
      <p>AMUSE leverages the power of WADE to provide game
developers and social gaming service providers with a scalable
architecture with applicability ranging from initial prototypes
to large-scale deployment. We think that this is a very
important feature of AMUSE because it restricts the time-to-market
and it extends the range of possible AMUSE developers to the
open-source community, which is provided with fully
opensource tools.</p>
      <p>At present AMUSE uses WADE only for its proven features
of flexibility and scalability in deployment. It does not really
take advantage of the other major feature of WADE, namely
its workflow-based development approach. This ensures that
no game developers needs to understand and appreciate the
flexibility of workflow-based development, but it also allows
advanced developers to make an effective use of workflows to
implement very dynamic games where parts of the game can
be visually programmed, possibly by players.</p>
      <p>
        At the moment we are investigating the possibility of
providing a generic lightweight Web client using the GWT
(Google Web Toolkit) [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] to give Web developers a
minimalistic JADE implementation to adopt for their games. All
in all, this is like using the Web browser as a single-agent
JADE/WADE container using a proprietary protocol that is
bridged to the common agent communication protocols by
the Web server. A very similar approach has been available
in JADE for more than a decade under the name of split
container.
      </p>
      <p>At the time of writing, AMUSE has been tested and
validated by means of four mobile games and at least two
of them will be released open-source together with AMUSE.
Such games have been chosen to put in practical usage most
of the functionality that AMUSE provides and to testbed the
usability of AMUSE to implement fully fledged mobile games.</p>
      <p>The first game that we developed, codename Numblers,
is a number board game with asynchronous interactions that
closely follows the lessons learned from largely appreciated
games like Ruzzle. The dynamics of game engagement and
gameplay does not need the support of back-end servers, and
this game can be ideally deployed with no server support.</p>
      <p>The second game, codename TwentyOne, is a variant of
Numblers based a different game challenge, and it was chosen
to try different ways for delivering similar functionality.</p>
      <p>
        The third game developed so far, codename BattleSpheres,
is a synchronous, real-time game that has been developed
with the help of AndEngine [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. In BattleSpheres, player A
challenges player B by throwing virtual balls towards him/her
and B is expected to block such balls before they reach the
bottom of his/her screen. This game uses the experimental
realtime features of AMUSE.
      </p>
      <p>Finally, the fourth game is Wadeoku, a synchronous
variant of Sudoku puzzles intended to have a group of players
synchronously sharing a Sudoku board and gaining points for
every good assignment of a number to an empty cell. This
game does need a significant support from back-end agents
and it is close to the real use of AMUSE that we foresee in
the near future.</p>
      <p>The development experience gathered with such four
games can be considered positive and the early
experimentation on concrete examples provided significant feedback on
core platform-level decisions. In addition, early
experimentation allowed us to identify interesting best practices in the
utilization of AMUSE that were not initially envisaged.</p>
      <p>
        AMUSE is open-source and it can be downloaded from
JADE Web site [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ].
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>A. J.</given-names>
            <surname>Agnello</surname>
          </string-name>
          .
          <article-title>Investment in social gaming drops by $1 billion in 2012</article-title>
          . Available at http://www.digitaltrends.com
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <surname>AndEngine</surname>
          </string-name>
          <article-title>Web site</article-title>
          . http://www.andengine.org
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>M.</given-names>
            <surname>Banzi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Caire</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Gotta</surname>
          </string-name>
          <string-name>
            <surname>WADE</surname>
          </string-name>
          :
          <article-title>A software platform to develop mission critical, applications exploiting agents and workflows</article-title>
          .
          <source>Procs. Int'l Conf</source>
          . Autonomous Agents and
          <string-name>
            <surname>Multi-Agent</surname>
            <given-names>Systems</given-names>
          </string-name>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>F.</given-names>
            <surname>Bellifemine</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Caire</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Greenwood</surname>
          </string-name>
          .
          <article-title>Developing multi-agent systems with JADE</article-title>
          . Wiley Series in Agent Technology,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>F.</given-names>
            <surname>Bellifemine</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Poggi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Rimassa.</surname>
          </string-name>
          <article-title>Developing multi-agent systems with a FIPA-compliant agent framework</article-title>
          .
          <source>Software: Practice &amp; Experience</source>
          ,
          <volume>31</volume>
          :
          <fpage>103</fpage>
          -
          <lpage>128</lpage>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>F.</given-names>
            <surname>Bergenti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Franchi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Poggi</surname>
          </string-name>
          .
          <article-title>Selected models for agent-based simulation of social networks</article-title>
          .
          <source>Procs. Symposium on Social Networks and Multiagent Systems</source>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>F.</given-names>
            <surname>Bergenti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Poggi</surname>
          </string-name>
          . Ubiquitous Information Agents.
          <source>Int'l J. Cooperative Information Systems</source>
          ,
          <volume>11</volume>
          (
          <issue>3-4</issue>
          ):
          <fpage>231</fpage>
          -
          <lpage>244</lpage>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>F.</given-names>
            <surname>Bergenti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Poggi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Burg</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Caire. Deploying</surname>
          </string-name>
          FIPA
          <article-title>-compliant systems on handheld devices</article-title>
          .
          <source>IEEE Internet Computing</source>
          ,
          <volume>5</volume>
          (
          <issue>4</issue>
          ):
          <fpage>20</fpage>
          -
          <lpage>25</lpage>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>F.</given-names>
            <surname>Bergenti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Poggi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Somacher</surname>
          </string-name>
          .
          <article-title>A collaborative platform for fixed and mobile networks</article-title>
          .
          <source>Communications of the ACM</source>
          ,
          <volume>45</volume>
          (
          <issue>11</issue>
          ):
          <fpage>39</fpage>
          -
          <lpage>44</lpage>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>S.</given-names>
            <surname>Bjo</surname>
          </string-name>
          ¨rk, S. Lundgren,
          <string-name>
            <given-names>J.</given-names>
            <surname>Holopainen</surname>
          </string-name>
          . Game Design Patterns.
          <source>Procs. Digital Games Research Conference</source>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>G.</given-names>
            <surname>Caire</surname>
          </string-name>
          , E. Quarantotto,
          <string-name>
            <given-names>M.</given-names>
            <surname>Porta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Sacchi. WOLF - An Eclipse</surname>
          </string-name>
          Plug-in
          <source>for WADE Procs. IEEE Int'l Workshops Enabling Technologies: Infrastructures for Collaborative Enterprises</source>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>Gameplay</given-names>
            <surname>Design Pattern Project</surname>
          </string-name>
          <article-title>Web site</article-title>
          . http://gdp2.tii.se
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>T.</given-names>
            <surname>Grant</surname>
          </string-name>
          .
          <source>The Art of Videogames</source>
          . Wiley-Blackwell,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>J.</given-names>
            <surname>Huizinga</surname>
          </string-name>
          . Homo Ludens:
          <article-title>A Study of the Play Element in Culture</article-title>
          . Beacon Press,
          <year>1955</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <surname>GWT (Google Web Toolkit</surname>
          </string-name>
          )
          <article-title>Web site</article-title>
          . http://www.gwtproject.org
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <surname>JADE (Java Agent DEvelopment framework)</surname>
          </string-name>
          <article-title>Web site</article-title>
          . http://jade.tilab. com
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>J.</given-names>
            <surname>Juul</surname>
          </string-name>
          .
          <article-title>Half-Real: Video Games between Real Rules and Fictional Worlds</article-title>
          . The MIT Press,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>S.</given-names>
            <surname>Mlot. Infographic: How Do You Get Your Mobile Gaming Fix</surname>
          </string-name>
          ? Available at http://www.pcmag.com
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>M.</given-names>
            <surname>Ricchetti</surname>
          </string-name>
          . What Makes Social Games Social? Available at http: //www.gamasutra.com
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>K.</given-names>
            <surname>Salen</surname>
          </string-name>
          ,
          <string-name>
            <surname>E. Zimmerman.</surname>
          </string-name>
          <article-title>Rules of Play: Game Design Fundamentals</article-title>
          . The MIT Press,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>E. Swallow. What</given-names>
            <surname>Makes</surname>
          </string-name>
          a Good Social Game? Available at http: //www.forbes.com
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <surname>Telecom</surname>
            <given-names>Italia S.p.A. Relazione Finanziaria Annuale</given-names>
          </string-name>
          <year>2012</year>
          . Available at http://www.telecomitalia.com
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>L.</given-names>
            <surname>Trione</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Long</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Gotta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Sacchi</surname>
          </string-name>
          . Wizard, WeMash, WADE:
          <article-title>Unleash the power of collective intelligence</article-title>
          .
          <source>Procs. Int'l Conf. Autonomous Agents and Multiagent Systems</source>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <surname>WADE</surname>
          </string-name>
          <article-title>(Workflows and Agents Development Environment) Web site</article-title>
          . http://jade.tilab.com/wade
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>