5 research outputs found
Living City, A Collaborative Browser-Based Massively Multiplayer Online Game
This work presents the design and implementation of our Browser-based Massively Multiplayer Online Game, Living City, a simulation game fully developed at the University of Messina. Living City is a persistent and real-time digital world, running in the Web browser environment and accessible from users without any client-side installation. Today Massively Multiplayer Online Games attract the attention of Computer Scientists both for their architectural peculiarity and the close interconnection with the social network phenomenon. We will cover these two aspects paying particular attention to some aspects of the project: game balancing (e.g. algorithms behind time and money balancing); business logic (e.g., handling concurrency, cheating avoidance and availability) and, finally, social and psychological aspects involved in the collaboration of players, analyzing their activities and interconnections
PRICING STRATEGIES FOR ONLINE MULTIPLAYER GAMES
This dissertation examines the different pricing strategies available to online multiplayer game publishers. We develop mathematical models of the pricing decision that the publisher engages in and conduct a numerical experiment to identify critical parameters for the pricing decision. We also develop an agent based simulation to further examine the influence of these parameters on the dynamics between the publisher and consumers and make recommendations about the conditions under which certain pricing strategies are superior to others
Re-engineering jake2 to work on a grid using the GridGain Middleware
With the advent of Massively Multiplayer Online Games (MMOGs), engineers and
designers of games came across with many questions that needed to be answered such
as, for example, "how to allow a large amount of clients to play simultaneously on the
same server?", "how to guarantee a good quality of service (QoS) to a great number
of clients?", "how many resources will be necessary?", "how to optimize these resources
to the maximum?". A possible answer to these questions relies on the usage of grid
computing.
Taking into account the parallel and distributed nature of grid computing, we can say
that grid computing allows for more scalability in terms of a growing number of players,
guarantees shorter communication time between clients and servers, and allows for a
better resource management and usage (e.g., memory, CPU, core balancing usage, etc.)
than the traditional serial computing model.
However, the main focus of this thesis is not about grid computing. Instead, this
thesis describes the re-engineering process of an existing multiplayer computer game,
called Jake2, by transforming it into a MMOG, which is then put to run on a grid
Models, methods, and tools for developing MMOG backends on commodity clouds
Online multiplayer games have grown to unprecedented scales, attracting millions of players
worldwide. The revenue from this industry has already eclipsed well-established entertainment
industries like music and films and is expected to continue its rapid growth in the future.
Massively Multiplayer Online Games (MMOGs) have also been extensively used in research
studies and education, further motivating the need to improve their development process.
The development of resource-intensive, distributed, real-time applications like MMOG backends
involves a variety of challenges. Past research has primarily focused on the development and
deployment of MMOG backends on dedicated infrastructures such as on-premise data centers
and private clouds, which provide more flexibility but are expensive and hard to set up and
maintain. A limited set of works has also focused on utilizing the Infrastructure-as-a-Service
(IaaS) layer of public clouds to deploy MMOG backends. These clouds can offer various advantages
like a lower barrier to entry, a larger set of resources, etc. but lack resource elasticity,
standardization, and focus on development effort, from which MMOG backends can greatly
benefit.
Meanwhile, other research has also focused on solving various problems related to consistency,
performance, and scalability. Despite major advancements in these areas, there is no standardized
development methodology to facilitate these features and assimilate the development of
MMOG backends on commodity clouds. This thesis is motivated by the results of a systematic
mapping study that identifies a gap in research, evident from the fact that only a handful
of studies have explored the possibility of utilizing serverless environments within commodity
clouds to host these types of backends. These studies are mostly vision papers and do
not provide any novel contributions in terms of methods of development or detailed analyses
of how such systems could be developed. Using the knowledge gathered from this mapping
study, several hypotheses are proposed and a set of technical challenges is identified, guiding
the development of a new methodology.
The peculiarities of MMOG backends have so far constrained their development and deployment
on commodity clouds despite rapid advancements in technology. To explore whether such
environments are viable options, a feasibility study is conducted with a minimalistic MMOG
prototype to evaluate a limited set of public clouds in terms of hosting MMOG backends. Foli
lowing encouraging results from this study, this thesis first motivates toward and then presents
a set of models, methods, and tools with which scalable MMOG backends can be developed
for and deployed on commodity clouds. These are encapsulated into a software development
framework called Athlos which allows software engineers to leverage the proposed development
methodology to rapidly create MMOG backend prototypes that utilize the resources of
these clouds to attain scalable states and runtimes. The proposed approach is based on a dynamic
model which aims to abstract the data requirements and relationships of many types of
MMOGs. Based on this model, several methods are outlined that aim to solve various problems
and challenges related to the development of MMOG backends, mainly in terms of performance
and scalability. Using a modular software architecture, and standardization in common development
areas, the proposed framework aims to improve and expedite the development process
leading to higher-quality MMOG backends and a lower time to market. The models and methods
proposed in this approach can be utilized through various tools during the development
lifecycle.
The proposed development framework is evaluated qualitatively and quantitatively. The thesis
presents three case study MMOG backend prototypes that validate the suitability of the proposed
approach. These case studies also provide a proof of concept and are subsequently used
to further evaluate the framework. The propositions in this thesis are assessed with respect to
the performance, scalability, development effort, and code maintainability of MMOG backends
developed using the Athlos framework, using a variety of methods such as small and large-scale
simulations and more targeted experimental setups. The results of these experiments uncover
useful information about the behavior of MMOG backends. In addition, they provide evidence
that MMOG backends developed using the proposed methodology and hosted on serverless
environments can: (a) support a very high number of simultaneous players under a given latency
threshold, (b) elastically scale both in terms of processing power and memory capacity
and (c) significantly reduce the amount of development effort. The results also show that this
methodology can accelerate the development of high-performance, distributed, real-time applications
like MMOG backends, while also exposing the limitations of Athlos in terms of code
maintainability.
Finally, the thesis provides a reflection on the research objectives, considerations on the hypotheses
and technical challenges, and outlines plans for future work in this domain
Persistence in massively multiplayer online games
The most important asset of a Massively Multiplayer Online Game is its world state, as it represents the combined efforts and progress of all its participants. Thus, it is extremely important that this state is not lost in case of server failures. Survival of the world state is typically achieved by making it persistent, e.g., by storing it in a relational database. The main challenge of this approach is to track the large volume of modifications applied to the world in real time. This paper compares a variety of strategies to persist changes of the game world. While critical events must be written synchronously to the persistent storage, a set of approximation strategies are discussed and compared that are suitable for events with low consistency requirements, such as player movements. An analysis to better understand the possible limitations and bottlenecks of these strategies is presented using experimental data from an MMOG research framework. Our analysis shows that a distance-based solution offers the scalability and efficiency required for large-scale games as well as offering error bounds and eliminating unnecessary updates associated with localized movement. 1