[jdev] how to program a jabber game server

Norman Rasmussen norman at rasmussen.co.za
Wed Feb 7 06:33:59 CST 2007


On 2/7/07, Richard Dobson <richard at dobson-i.net> wrote:
> [...] the moves are not sent via MUC
> rooms to make things nice and simple as a lot of games require that
> players only know a certain amount of the game state and should not know
> everything (only the game host should) examples of these sort of games
> are battleships, scrabble, poker (infact probably all card games), I can
> only think of a few instances of games where the entire game state is
> know by all players (chess and checkers), and it makes things far
> simpler for the game host to directly send out the game state, rather
> than having to have two sets of game state being sent separately, i.e.
> global state being sent via a MUC room and private state being sent
> directly [...]

I think one of the things that is being forgotten here, is that you
could design the game master component to _be_ the MUC room.  There's
nothing in any spec to say that all participants see the same room
state.  You should be able to very easily send different content to
each member of the room.

The game component (acting like a MUC room) can do all the validation
checks based on it's own internal state, and doesn't have to expose
the full game state to anyone.

Remebering that MUC is really just a set of protocols indiciating the
preferred way of simulating joining a room/game, and sending messages.
 In a non-game context it makes sense that all users see the same
data, in a game context, not so much.

-- 
- Norman Rasmussen
 - Email: norman at rasmussen.co.za
 - Home page: http://norman.rasmussen.co.za/



More information about the JDev mailing list