Michal 'vorner' Vaner said the following on 01/12/2008 11:13 AM:
> Just few notes here, may or may not be useful.

Thank you very much for your comments!

> Is it really needed? A gaming support on server? Couldn't this be done
> trough ordinary MUC?

We plan to use MUC extensively for MUG, of course. But please let's
concentrate on One-to-One gaming for now.

> Discovering:
> Wouldn't it make sense use service disco to get supported/ongoing games
> too? (add items supported-games and ongoing-games to item list, and their
> sub-lists as games, for example)
> 
> It seems to me defining new protocol for discovering is not needed, if
> there is a generic one.

I used a separate mechanism for discovering individual games because
there may be hundreds of games a client supports and this would blow up
a disco response considerably.
But compression or XEP-0115 might solve this problem. So, if there are
no further concerns, I'll add the games disco to normal disco requests.

> Invitation:
> What is the difference between body and reason? I would put the reason
> to body of the message directly, as is with MUC invitations, and so on.

MUC invitations use no <body/>, but a <reason/> element. I agree that
one of them is enough. Maybe we should use reason in order to be similar
to MUC. What do you (and the others) think?

> Besides, wouldn't it be better in <iq>, as it requires response (either
> positive or negative)?

Well, MUC uses a <message/>, too and as far as I understood <iq/>
stanzas, they always carry some kind of payload (get/set data) and are
thought to be a request to another client, not its user, which would be
better represented by a message.

> Saving:
> she/he MUST not save the game and send the following
> 
> she/he MUST NOT save the game and MUST send?

changed. Thank you!

> Besides, shouldn't game saving/loading be optional in a way some clients
> can do it and some don't? (Therefore a discoverable feature for that
> given game).

I thought about this, too and came to the conclusion that saving is not
such a big think to implement and that it would only make the protocol
more complicated.

> And, it should be noted each game needs a description of
> it's own, how it is saved, right?

Could you please elaborate a little bit more on this?

> Loading:
> Is it a good idea send the whole state in the invitation? It might be
> long (depending on the game) and if the other side declines, it is
> wasted bandwidth.

Sending the state in the invitation has the big advantage that the
invitee can see how the game looks like and decide on better grounds
whether he wants to join. This is especially helpful with "constructed"
games.

> Terminating:
> It should be specified, what exactly happens, when the other side just
> changes to unavailable (lost connection, probably).

What happens when the other side changes to unavailable is defined, but
not in terms of connection losses. They are a problem and I'm not sure
how to handle these.
If the game was not canceled, the client should be able to reconnect and
play. If the client crashes, this is not possible, but the other player
could save the game it is of the complete knowledge kind.

>> http://www.cs.uni-potsdam.de/~tgrote/xep/tictactoe.html
> 
> Could it allow playing on any-sized plan (possibly infinite too) and
> have the length of winning strike & starting player negotiated?

Well it could, but it doesn't ;)
But it there are several variants of Tic Tac Toe which could be added as
tictactoe#variant in the future.

> Besides, it probably should be noted, how the game is saved.

Saving is not yet supported by this XEP. I don't think that saving a
game of Tic Tac Toe is really necessary and it could be explicitly
stated that it is not supported.

> Have a nice day

Regards and Thanks again,
Torsten

Reply via email to