Distributed Shared Objects for Mobile Multiplayer Games and Applications
Mobile gaming for smartphones has gained huge popularity in recent years
and has become a big industry. In 2011 Google Play passed 10 billion
downloads. The game Angry Birds alone has been installed on devices more
than 50 million times.
Increased performance of mobile devices means that new development
techniques can be used to make more advanced games. This project
presents a new technique to develop multiplayer games using a
Multiplayer games often use a client-server architecture in order to
communicate. Many games present a shared game universe to the
players. Updates to the game state must be performed
consistently, otherwise discrepancies in the game state may
appear to the players.
Mobile devices are unreliable servers for several reasons. First, they
use a Wi-Fi connection that may not be reliable. Second, the devices
have limited amounts of resources. The operating system may need to
terminate the server, e.g., to recover memory for important services
such as receiving phone calls. Lastly, if the person with the server
chooses to stop playing, the game cannot proceed.
A distributed system can prevent unreliable devices from causing
failures. When a device becomes unavailable, all its responsibilities
should be transfered to other devices in the system.
This project presents the distributed system Same for sharing
state in mobile multiplayer games. Same is a peer-to-peer system
with a master device that automatically recovers from failure. When a
master fails, the system may enter an inconsistent state. Recovery is
performed by electing a new master that restores consistency by
comparing the state of all the clients in the system. The system is
presented as a general model for sharing state and implemented for the
Android operating system.
Same is evaluated using benchmarks and an example application.
Updates are performed consistently and distributed to all the connected
devices. Same is shown to be a viable alternative to a standard
Place, publisher, year, edition, pages
Institutt for datateknikk og informasjonsvitenskap , 2012. , 69 p.
ntnudaim:7491, MTDT datateknikk, Komplekse datasystemer
IdentifiersURN: urn:nbn:no:ntnu:diva-18890Local ID: ntnudaim:7491OAI: oai:DiVA.org:ntnu-18890DiVA: diva2:566351
Bratsberg, Svein Erik, Professor