[jdev] Game protocol needs (was: how to program a jabber game server)

Michal 'vorner' Vaner michal.vaner at kdemail.net
Wed Jan 31 05:21:10 CST 2007


Hello,

On Wed, Jan 31, 2007 at 10:38:24AM +0000, Denis Guillaume wrote:
> I don't know if we've got to move to another list or a private discussion to continue this thread ?

Well, private is not OK IMO, other people might want to say something to
it. And this topic belongs more there than here. So, I post this to
standards at xmpp.org as well, please continue there.

> Michal, I guess what you call the game layer is a protocol independent from its processing (whether by a server component or by a bot ?). What I need for the project I am working on is :

Well, the game layer would be a protocol able to negotiate a game,
invite people to it, do the things all games has in common (like the
chat), no matter of which game is played, if it needs a referee or not, if
it happens on a server or is serverless and so on. The idea behind it is
that you could have some prefabricate (libs, template, other app to use)
for game clients, bots, rules, whatever or have a client for multiple
games with just plugins fer games.

One step more would be a generic game, where clients would just display
what the server says and could play any generic game the server happens
to knew. But that as a separate XEP, some time later (this would not be
enough for all games, some games just need more clever client).

> - game tables initialisation with specific rules parameters ;

So, some place how to negotiate rules/handshake. Sure.

> - timed game actions performed by the players ;
> - game state messages (score evolution, win, etc.) and timed game events processed by the server ;

Game information flow, initiated by some game object.

> - chat.

Sure

Other things that may be needed:
• Discover and negotiating (invites, running connectable/observable
games…)
• Referee (as a filter or as a privileged player)
• Multicasting and broadcasting game actions
• Chats of teams and groups
• Logging of the game
• Observers (maybe just special kind of player)
• Administration (possibility to kick, …)

Something a little problematic:
• Saving/loading games
• Merging/splitting games

Anyone, other needs?

> Maybe a reusable solution for other games could be a server component handling the game sessions you described Michal, and bots processing the specific mechanics of a given game...

Does not matter much if it is a plugin, bot, real person paid to type
the protocol - this IMO should be just a negotiated jid or some other
identifier.

Thanks for cooperation.

-- 
This is a terroristic email. It will explode in 10 minutes, 
if you do not close it in the meantime.

Michal "vorner" Vaner
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://mail.jabber.org/pipermail/jdev/attachments/20070131/d49c25ee/attachment-0002.pgp>


More information about the JDev mailing list