In short'' PowerPoint PPT Presentation

presentation player overlay
1 / 24
About This Presentation
Transcript and Presenter's Notes

Title: In short''


1
In short..
  • game
  • blackjack
  • mobile phone
  • digital television
  • interactivity between mobile user and digital
    televesion content

2
Overview of the game
  • Like BlackJack you may know
  • one dealer
  • several players
  • 21 limit
  • each player plays against dealer
  • usually the dealer ultimately wins

3
Overview of the mobile client
  • like mobile game you may know..
  • wireless
  • graphical UI
  • possibility to Win and Lose
  • possibility to play whenever wanted
  • private gameplay

4
Overview of theMobile BlackJack
  • MassiveMultiplayerMobileBlackjack
  • number of participants is not limited
  • location is not limited
  • distributed gameplay and service
  • highly interactive (vs. chat-games)
  • integration with digital-tv
  • potential business model

5
System
server
logic
renderer
television
dvb-c system
6
Mobile client principles
  • Initiates the network connection
  • Waits for command to play
  • Independent interaction with human player
  • Informs of the gamestate changes

7
Mobile client technology
  • JavaME
  • midp 2.0 (mobile information device profile)
  • cldc 1.1 (connected limited device configuration)
  • Networking
  • tcp/ip sockets (problematic)
  • gprs/wlan
  • Development platform
  • Windows, GNU/Linux
  • Eclipse, Nokia SDK
  • Sun WTK2.2

java runtime for mobile devices
8
(No Transcript)
9
Server principles
  • Nonmovable component
  • administrates user accounts
  • maintains all the connections to clients
  • operates as a gateway between other components
  • different services to game and clients
  • fast login and messaging, lazy closer
  • passive operating strategy - waits for the
    messages and responds

10
Server technology
  • Sun Java 1.4.1-07
  • multithreaded one thread for each client
  • tcp/ip sockets
  • byte streams in/out
  • could have been objects
  • simple

11
(No Transcript)
12
Logic principles 1/2
  • Heartbeat of the game
  • controls the game, server and mobile clients with
    spesific messages and timing
  • ticks forever
  • doesnt care if there are any players
  • replaceable eg. human behaviour

13
Logic principles 2/2
  • Independent actor, knows nobody
  • communicates only with communication channel

14
Renderer principles
  • Deeply independent no message sending
  • receives messages and acts on them
  • draws in a doublebuffered way into the main
    window
  • constructs a ppm-image of the buffered image and
    writes it to a pipe 25 frames/sec

15
Renderer
16
Renderer tehnics
  • Cards are made with a CardFactory which can be
    used in many card games.
  • can make any card image
  • animations are done with image arrays and
    animation queues
  • uses direct reference to the image buffer that is
    representing the game
  • makes use of application named ffmpeg to compress
    the game image to mpeg2

17
(No Transcript)
18
Messaging
  • Effective way to separate components
  • Good way to make life more complicated if it is
    not well planned

19
example
  • //from client to server
  • public static final String LOGIN"//LOGIN"
  • public static final String INFO"//INFO"
  • public static final String STOPPED"//stoppedPlay
    ing"
  • //from server to client
  • public static final String LOGIN_RESULT"//LOGIN_
    "
  • public static final String LOGIN_FAILED"//LOGIN_
    FAILED"
  • public static final String UPDATE"//UPDATE"
  • public static final String CREDITS"//CREDITS"

20
example
  • //announcements from dealer to server
  • / To server ask clients to send their
    cerdits/
  • public static final String GETCREDITS"//GET_CRED
    ITS"
  • / Dealer wants to know if anyone is still
    playing /
  • public static final String SOMEBODYPLAYING"//SOM
    EBODYPLAYING"
  • / Dealer wants server to pick some number of
    clients that are updating
  • their game to the game screen side view/
  • public static final String CLIENTUPDATES"//makeC
    lientUpdates"
  • //from server to dealer
  • / /
  • public static final String STILLPLAYING"//someBo
    dyStillPlaying"

21
examples, local messaging
  • //announcements directly to game from dealer.
  • / From Deal to Game Start waiting for clients
    to choose weights. /
  • public static final String WAITFORWEIGHTS"/waitf
    orweights"
  • / From Deal to Game Dealer has finished
    taking cards. /
  • public static final String DEALERFINISHED"/deale
    rfinished"
  • / From Deal to Game Change on dealers cards.
    /
  • public static final String DEALERSCARDSCHENGED
    "/dealerscardschanged"
  • / Clears the side on the game screen/
  • public static final String CLEAR_SIDE"//SIDE_CLE
    AR"
  • / Expresses that dealer has some message to
    game./
  • public static final String TO_GAME"//TO_GAME"
  • / tells game that dealers card has been
    taken./
  • public static final String DEALERCARD"dealerCard
    "

22
Problems?
  • Unthinkable problems with getting responce from
    any server when using sockets in midlet
  • typical problem with all input streams in Nokia
    java implementation
  • Effective way to get the game image to be
    processed
  • several potential solutions one working

23
QUESTIONS??
24
Demonstration
Write a Comment
User Comments (0)
About PowerShow.com