Sorry for not replying to your email sooner. I've just started a new
full time job and it has been sucking up most of my time.

> >> - What's the purpose (and meaning) of /protocol/parameterset 
> >> elements?
> > 
> > Parameterset is used to group all the parameters which can appear as 
> > parameters to a frame type. There are currently two sets, one for objects, 
> > and one for orders.
> > 
> > For example:
> > The Build Fleet order in Minisec has two parameters, a list parameter for 
> > the 
> > ships to build, and a string parameter for the fleet name.
> 
> Well, I still don't get it. I even tried to parse the libtpproto-py code ;)
> I understand the purpose, but I'd like to know how (and when) it's sent
> through the wire.

A "nifty" thing about the Thousand Parsec protocol is that it is "self
modifying" in a controllable way.

To allow servers to define new order types without having to upgrade all
the clients, orders are dynamically described (and in tp04 objects will
also be dynamically described in a similar fashion). 

Each order frame has a base "type" (which tells the library that it is
an order Frame) and a "subtype", which tell the protocol how the extra
data at the end of the frame should be parsed. 

The extra data at the end are not defined in protocol.xml file, instead
they are dynamically defined by OrderDesc frames. 

libtpproto-py handles this by dynamically building classes. This is
probably a bit hard to do in Java so you might want to go down the
parametrise route which libtpproto-cpp uses.

Does that help at all? 

Mithro

_______________________________________________
tp-devel mailing list
[email protected]
http://www.thousandparsec.net/tp/mailman.php/listinfo/tp-devel

Reply via email to