[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-games-devel
Subject:    [Kde-games-devel] Re: [kmonop-devel] monopd meeting on IRC
From:       Daniel Hermann <hermann () tkm ! physik ! uni-karlsruhe ! de>
Date:       2001-06-26 14:58:51
[Download RAW message or body]

On Tuesday, 26. June 2001 15:59, Rob wrote:
> On Mon, Jun 25, 2001 at 12:08:22PM +0200, Daniel Hermann wrote:
> > We could achieve interoperability by dropping one server project and
> > merging it into the other. But is that the best way? On the other hand
> > only unifying the protocol and developing both servers is (partly)
> > duplication of effort.
>
> Since there are already two clients working with monopd (soon to be three,
> a Java applet client is in the works), I am of course quite biased and
> would like to keep monopd. Partially because it was designed and intended
> to support a wide range of clients, something which your protocol (if I
> understood correctly) was not.

The network layer wasn't designed to support a wide range of client
languages, which can clearly manage standard XML better than byte by byte
data packets. But I don't care about that layer. It can be easily
substituted. There is only one file dedicated to this (packets.cpp) and
therein only the serialization functions are to be changed to produce XML
instead of raw data.
What I care about is the "application" layer (don't know if that's the right
expression in computer science), e.g. different packet types and when they
are sent:

1) What packet types? Example:

struct packet_player_info
{
  int playerid;
  int event;
  int statusflags;      /* i.e. connected, alive, ai etc. */

  int location;
  int nturns_in_jail;

  int budget;
  int transaction;      /* amount of money for transaction events */
  int partner;          /* partner in transaction events */

  int holdings[BOARD_N_FIELDS];
  int ncards;
};

What data do you send, if you do a player update?

2) When (in what situations) they are sent?

A client requests to throw the dice. What does the server send back?

The whole bunch of information, that changed after dicing:
packet_dice_rolled
packet_game_info
packet_player_info

But in which order?


I guess it's clear what I want to express. I don't think that our application
layer is so different not to be able to unify it.

> So I guess I will continue developing the monopd protocol, I do not care
> too much about an exact code implementation, although if Erik and you
> decide it would be better done in pure C that would give me a chance to
> create a non-GUI Qt version..

Language doesn't matter, if it's not Fortran!-) I use C++ in the server too,
because I exploit the polymorphism features mainly in the case of Fields

	Field
Chance/Comchest	Jailfield		Property
-		-		Street	Railroad	Utility

(sorry for the nasty presentation)

Do you use QStrings in the server? I would not like this dependency on Qt on
the server side.

> > We should at first work out the details about our two different protocols
> > to see what's common and what's different. Rob, could you write down
> > something like a definition of your protocol structure (message types,
> > etc) and where they are used? I will do so, too.
>
> API (outdated, but the general idea should be clear)
>
> ChangeLog (should include API updates, such as "new command" or "added
> attribute to XML message")
>
> commands.cc (contains practically all I/O)

I will have a closer look at these and compare them with my concepts.

> > > I propose that Daniel and I (and other interested parties) come
> > > together on IRC (#kde at irc.openprojects.net ?) in the near future so
> > > we can probe each others thoughts and roadmaps. Eventually our common
> > > goal is to have a kick-ass Monopoly game for KDE, so we should be able
> > > to find a common roadmap and work together. :-)
> >
> > What about next weekend?
>
> You can find me on #kde every evening (CEST) but sure, how about Saturday
> 21:00 CEST? (that's 19:00 GMT I believe). Unless you've got a better place,
> I'd say look for Capzilla on #kde at irc.openprojects.net. We can always
> move to #monopd once we've spotted each other.

OK. I should look for a irc-client, haven't used one very often yet.

cheers

	Daniel

--
____________________________________________________________________
eMail: Daniel.Hermann@stud.uni-karlsruhe.de
WWW  : http://www-tkm.physik.uni-karlsruhe.de/~hermann
_______________________________________________
Kde-games-devel mailing list
Kde-games-devel@master.kde.org
http://master.kde.org/mailman/listinfo/kde-games-devel

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic