Consortium    Solutions    Middleware    Forge    MyObjectWeb 
ObjectWeb Consortium
Print

Advanced - Powered by Google







Project Links
· Home
· News
· Downloads
· Documentation
· Mailing Lists
· Forum
· License

Project Components
· uGASP OSGi
· GASP Online
· GASP Bluetooth
· MooDS Protocol
· Demonstration Games

Developers' Corner
· GForge
· Wiki
· Project Trakers
· SVN Repository

About
· Team

GASP Project Components: Online Middleware

Presentation

GASP is a pure JavaTM middleware under L-GPL license for mobile multiplayer online games and implements the OMA GS (Open Mobile Alliance Games Services working group) specifications, enabling pseudo real time multiplayer games on mobile phones.

GASP features:

  • implements the Open Mobile Alliance Gaming Services specifications
  • enables multiplayer gaming on J2ME MIDP and Doja profiles based mobile phones over cellular phones network (using HTTP)
  • uses object-oriented communication
  • takes care of the development constraints on J2ME mobile phones (no object serialization support, code size restrictions)

Current Version: 1.0.4

History

  • 2005: GASP evolved in the context of the french government funded RIAM project JIMM with the following partners : Bouygues Telecom (telecom operator), CNAM-CEDRIC (research Lab) and Filao/Infraworlds (Game Editor).
  • 2004: The GASP project has started in the context of the GET inside the project called MEGA and leaded by INT with: CNAM-CEDRIC, ENST-Bretagne and France Telecom R&D

Current work

  • GASP Online (HTTP): implements client-server communications with HTTP over 2/2.5/3/3.5G, enabling pseudo real time multiplayer games for MIDP and Doja profiles. Versions of GASP are available in the download section.

Details

Architecture

GASP Architecture

GASP online is composed by a server in charge to offer multiplayer gaming services like lobby handling, game session management, server game logic hosting,... Currently GASP online handles HTTP requests. GASP server side is implemented in JavaTM language and runs on a Apache Tomcat servlet container.

GASP offers interfaces for client and server game logics enabling multiplayer gaming throught GASP server. The GASPClient interface is available for J2ME Doja and MIDP profiles.

To store all platform informations, GASP is linked to a MySQL database.

Data model

GASP Data Model

The data model used in GASP is an implementation of the Open Mobile Alliance Gaming Services specifications. It is constituted by a set of components:

  • Platform[class]: the root class representing the platform entity
  • MasterApplicationInstance[class]: in charge to manage game sessions from a specific game
  • ApplicationInstance[class]: in charge to manage a particular game session
  • ActorSession[class]: represents the fact a player (user) is connected to a game session, this class is used to store all game events addressed to the player
  • Session[class]: represents the fact a player (user) is connected to the GASP platform
  • Actor[DB->class]: contains all the user information for a particular game (like pseudoname, login/password)
  • Application[DB]: a particular game hosted by the platform
  • User[DB]: a user able to connect him to the platform
  • Rights[DB]: the rights to a user to connect him to play a particular game

[class] means a java class with a specific role, [DB] informations stored in the database, [DB->class] a class loading its informations from the database.

Events model

Game session interactions in GASP are based on an events model defined by Open Mobile Alliance Games Services specifications. It is composed by 5 events:

  • JoinEvent: represents the fact a player joins the game session
  • StartEvent: represents the game starting
  • DataEvent: this event is used to transmit data during game session between clients and server, it contains customized message objects
  • EndEvent: represents the game ending
  • QuitEvent: represents the fact a player (user) quits the game session

You can see on the figure below an example of GASP event dispatching:

GASP Events Model

Network communication

GASP uses an object-oriented communication, MooDS communication protocol handles GASP network data encoding/decoding, you can learn more about this protocol on the MooDS protocol dedicated page.

Lobby

coming soon ...

Learn more

More detailed informations, like white papers, are available on the documentation section.


Copyright © 1999-2005, ObjectWeb Consortium | contact | webmaster | Last modified at 2011-06-23 08:21 PM